Jestem tu nowy, więc witam wszystkich :) Tytuł nie oddaje mojego problemu, ale ciężko go streścić aby zmieścić się w ograniczonej liczbie znaków, proszę więc moderatora o nierepresjonowanie mnie na tym forum z tego powodu :)
Tak więc, zacznijmy od początku. Nie wiem, czy to ma znaczenie ale pracuję na Linuksie, zainstalowałem XAMPa i przy jego pomocy uruchamiam pliki php. Utworzylem 2 pliki - formularz.html, w całości napisany w HTMLu formularz imitujący rejestrację (nie zapisuje nic w bazie danych, jedynie pobiera dane i przesyła je do skryptu php), oraz strona1.php (skrypt PHP pobierający dane, sprawdzający czy żadne z pól nie jest puste oraz czy 2 razy wprowadzony adres e-mail oraz hasło są ze sobą zgodne. Jeśli coś nie gra, ma wywalać komunikat i po 5 sekundach powracać na stronę formularza, jeśli wszystko jest w porządku, wyświetlane jest podsumowanie "rejestracji" z wypisaniem wszystkich podanych w formularzu danych).
Problem jest następujący - po zatwierdzeniu formularza, strona1.php wyświetla się tylko wtedy, gdy wszystkie pola formularza są wypełnione prawidłowo. Pokazuje się wtedy to, co ma się pokazać, czyli potwierdzenie rejestracji. Jeśli jednak opuszczę któreś z pól lub wpiszę niejednakowe hasła lub adresy e-mail, strona1.php nie ładuje się, nie są wyświetlane pożądane komunikaty, formularz.html jedynie odświeża się po upływie 5 sekund.
Czemu skrypt działa ale nie wyświetla się w przypadku błędnie wypełnionych lub opuszczonych pól formularza?
Niżej podaję kody obu plików.
formularz.html
[code]<HTML>
<HEAD>
<TITLE>Ankieta</TITLE>
<META HTTP-EQUIV="content-type" CONTENT="text/html;charset=UTF-8">
</HEAD>
<font family="fantasy" size="10">Formularz rejestracji</span>
<form action="strona1.php" method="post">
Podaj login: <input type="text" name="login" size="10" maxlenght="10">
Wprowadź hasło: <input type="password" name="haslo">
Ponownie wprowadź hasło: <input type="password" name="haslo2">
<font face="Arial" size="2">Akceptuje regulamin<input type="checkbox" name="wybor" checked="checked" value="Tak" disabled="disabled">
<font face="Arial" size="2">Zezwalam na przetwarzanie moich danych osobowych<input type="checkbox" name="wybor2" checked="checked" value="Tak">
Podaj e-mail: <input type="text" name="mail">
Ponownie podaj e-mail: <input type="text" name="mail2">
<br/>
<br/><input type="submit" value="wyślij"><input type="reset" value="wyczyść">
</form>
</body>
</html>[/code]
strona1.php
[code]<?php
echo"<meta http-equiv="content-type" content="text/html ; charset=utf-8">";
echo"
POTWIERDZENIE FORMULARZA ↓’
";$login=$_POST['login'];
$haslo=$_POST['haslo'];
$haslo2=$_POST['haslo2'];
$przetwarzanie_danych=$_POST['wybor2'];
$mail=$_POST['mail'];
$mail2=$_POST['mail2'];</p>
if ( empty($login || $haslo || $haslo2 || $mail || $mail2) )
{ echo"Nie wszystkie obowiązkowe pola formularza zostały wypełnione ! Powrócisz na poprzednią stronę w ciągu 5 sekund..."; sleep(5); header("location: formularz.html"); } else
if ($haslo!=$haslo2) { echo"Podane hasła nie są jednakowe ! Powrócisz na poprzednią stronę w ciągu 5 sekund..."; sleep(5); header("location: formularz.html"); } else if ($mail != $mail2) { echo"Podane adresy e-mail nie są jednakowe ! Powrócisz na poprzednią stronę w ciągu 5 sekund..."; sleep(5); header("location: formularz.html"); } else echo "Rejestracja przebiegła pomyślnie !
Dane Twojego konta:
Login: $login
Hasło: $haslo
Adres e-mail: $mail
Akceptacja regulaminu: TAK
Zgoda na przetwarzanie danych osobowych: TAK
DZIĘKUJEMY ZA REJESTRACJĘ !";
?>
[/code]
Będę wdzięczny za wszelką pomoc :) Pozdrawiam !