Jak zrobić test poprawności wypełnionych pól input?

Mam skrypt oparty na 2 pola input z których dane są zapisywane w pliku tekstowym. Oto ten kod:

<?php

/ *********************************************

* plik formularz.php

********************************************* /


$pole1 = trim($_POST['pole1']);

$pole2 = trim($_POST['pole2']);


if(empty($pole1) and empty($pole2)) {


// prosty formularz zawierający dwa pola

echo '

IP Serwera: 


Port Serwera: 





';

}

else {


    // dane pochodzące z formularza

    $dane = "$pole1:$pole2:halflife:on\n";

    // przypisanie zmniennej $file nazwy pliku

    $file = "body/wasze/wasze.txt";

    // uchwyt pliku, otwarcie do dopisania

    $fp = fopen($file, "a");

    // blokada pliku do zapisu

    flock($fp, 2);

    // zapisanie danych do pliku

    fwrite($fp, $dane);

    // odblokowanie pliku

    flock($fp, 3);

    // zamknięcie pliku

    fclose($fp);


    echo "Dane zostały zapisane!
";

    echo "Zobacz wpisane dane";

}


?> [/code]

I jak do tego kodu zrobić coś takiego żeby sprawdzał poprawność 1 pola na zasadzie czy wpisana wartość w tym polu czy nie była już wcześniej zapisana w pliku tesktowym w którym wszystko się zapisuje. Chodzi mi oto że ktoś wpisuje IP swojego serwera w 1 polu, podczczas zapisywania tego 1 pola skrypt automatycznie sprawdza czy taka wartość jak on wpisał czy przypadkiem już istnieje, a jak istnieje to się nic nie zapisuje i pojawia się dla osoby chcącej dodać serwer takie coś “Przepraszamy ale taki serwer już istnieje w naszej bazie”. Mógłby mi ktoś coś takiego zrobić ?

Takie coś zrobione na pliku tekstowym będzie potwornie nieoptymalne. Powinno to być przechowywane w bazie danych i wtedy jedno ładne zapytanie sprawdzające i tyle.

A co do skryptu, to ja bym rozwiązał tak:

  1. Pobieram cała zawartość pliku;

  2. W pętli dzielę każdą linię explodem() na znak :

  3. Sprawdzam czy pierwsza wartość tablicy nie jest równa tej wpisanej w formularzu;

  4. Jeśli tak, pokazuję napis, jeśli nie , zapisuję dane w pliku;

Masz rację co do tej bazy MySQL. Problem tkwi w tym że z tego pliku txt w którym się zapisuje zawartość wypełnionych pól korzysta potężny skrypt. W pliku txt zawartość pól zapisywana jest specjalnym szablonem ponieważ później z tych poukładanych zawartości (dzięki szablonowi) skrypt ten odczytuje listę serwerów i później wyświetla je na innej stronie w postaci statusu. Przerobienie tego skryptu wiązało by się z cudem, to tak jak napisać go od nowa, a jest co. Przynajmniej tak to wygląda z mojej strony. Natomiast jeśli byłbyś w stanie jednak przerobić ten skrypt aby odczytywał serwery z MySQL a później je bez problemu odczytywał to to jest ten skrypt http://www.yourfilehost.com/media.php?cat=other&file=serwers_status.rar