Wiesz, tak po Twojemu to według mnie trudno będzie wybrnąć z tego. Chodzi mi o to, że zakładasz, że jeśli email już istnieje na liście to od razu go usuwa. Ja proponuję dołączyć jeszcze dwa pola radio pod polem text. I zaznaczenie któregoś z nich będzie oznaczać dopisanie się do listy lub wypisanie z niej. Napisałem taki skrypt:
<?php
if ($_POST ['email']) {
$emaile_p = file (\"pliki/emaile.txt\", \"r\"); $ilosc_maili = count ($emaile_p); if ($_POST ['dlu'] == 'd') {
for ($i=0; $i<$ilosc_maili; $i++) {
$emaile_p [$i] = chop ($emaile_p [$i]); if ($emaile_p [$i] == $_POST ['email']) {
print 'Twój e-mail figuruje już na liście.'; $jest = 1;
}
}
if (!($jest)) {
$plik = fopen (\"pliki/emaile.txt\", \"a\"); fputs ($plik, $_POST ['email'].\"n\"); print 'Twój adres e-mail został zapisany.'; }
} else {
$plik = fopen (\"pliki/emaile.txt\", \"w\"); for ($i=0; $i<$ilosc_maili; $i++) {
$emaile_p [$i] = chop ($emaile_p [$i]); if ($emaile_p [$i] != $_POST ['email']) {
fputs ($plik, $emaile_p [$i].\"n\"); } else {
$usunieto = 1;
}
}
if ($usunieto) {
print 'Twój e-mail został usunięty z listy.'; } else {
print 'Nie ma takiego adresu e-mail na liście.'; }
}
}
?>
No i jeszcze formularz:
<input type="text" name="email"><br> <input type="radio" name="dlu" value="d" checked>Dodaj e-mail
<br> <input type="radio" name="dlu" value="u">Usuń e-mail
<br> <input type="submit" value="Wyślij">
Tylko jeszcze mam pytanie: skrypt u mnie działa, dodaje, usuwa itd., ale cały czas wyskakuje mi:
Notice: Undefined index: email in - i tu wskazuje na tą pierwszą linijkę skryptu:
<?php
if ($_POST ['email']) {
?>
Dlaczego?