Nie ukrywam, że posługuję się sesjami zaledwie od paru godzin a całym php chyba drugi dzień. Moim celem jest rejestracja w dwóch krokach. W pierwszym pobieramy login oraz hasło, i wysyłamy je do sesji a drugi krok ma odczytać dane z kroku pierwszego, pobrać parę innych zmiennych i utworzyć wpis w bazie danych test w tabeli user. Konfiguracja połączenia bazy danych jak łatwo się domyślić jest zawarta w conn.php. Dodatkowo skrypt sprawdza czy użytkownik jest zalogowany, jeśli tak, to nie wyświetlają mu się okna do tworzenia konta.
<?php require('conn.php'); include("head.php"); { ?> <h1> <? ?> <form action="logout.php" method="post"> <input type="submit" value="Wyloguj" /> </form> <h1/> <? } else { ?> <h1> <? { if ($_POST['password']==$_POST['password2']) { if ($ile==0) { $zapytanie= ($_SESSION['krok_login']=$konto and $_SESSION['krok_pass']=$password); } else { } } } { { if ($ile2==0) { $zapytanie2= "INSERT INTO user (login,password,imie,plec,wioska,natura) VALUES('$krok_login','$krok_pass','$imie',$plec','$wioska','$natura')"; } else { } } else { ?> <h1>Dalsza cze?ć rejestracji.</h1> <form action="register2.php" method="post"> <table style="text-align: right; width: 250px;"> <tr> <td> Imię: </td> <td> <input name="imie" type="text" value="" /> </td> </tr> <tr> <td> Płeć: </td> <td> <input type="radio" name="plec" value="facet" checked="checked" />Mężczyzna <input type="radio" name="plec" value="baba" />Kobieta </td> </tr> <tr> <td> Wioska: </td> <td> <select name="wioska"> <option value="konoha">Konoha-Gakure</option> <option value="suna">Suna-Gakure</option> <option value="kiri">Kiri-Gakure</option> <option value="kumo">Kumo-Gakure</option> <option value="iwa">Iwa-Gakure</option> <option value="oto">Oto-Gakure</option> </select> </td> </tr> <tr> <td> Natura chakry: </td> <td> <select name="natura"> <option value="wiatr">Wiatr</option> <option value="woda">Woda</option> <option value="ogien">Ogień</option> <option value="ziemia">Ziemia</option> <option value="blysk">Błyskawica</option> </select> </td> </tr> </table> <table style="text-align: center; width: 250px;"> <tr> <td> <input type="submit" value="Zarejestruj" /> </td> <tr> </table> </form> <? } } else { ?> Dodaj nowego użytkownika.</h1> <form action="register2.php" method="post"> <table style="text-align: right; width: 250px;"> <tr> <td> Nazwa konta: </td> <td> <input name="konto" type="text" value="" /> </td> </tr> <tr> <td> Hasło: </td> <td> <input name="password" type="password" value="" /> </td> </tr> <tr> <td> Powtórz hasło: </td> <td> <input name="password2" type="password" value="" /> </td> </tr> </table> <table style="text-align: center; width: 250px;"> <tr> <td> <input type="submit" value="Zarejestruj" /> </td> <tr> </table> </form> <? } } include("foot.php"); ?>
Problemy są dwa.
Pierwszym jest to, że po wprowadzeniu "pierwszych" danych (loginu i hasła), strona pozostaje pusta, i muszę ją odświeżyć, aby przejść do drugiego kroku.
Drugim problemem jest to, że po wszystkim, skrypt nie tworzy żadnych wpisów w bazie danych, wyświetla się jedynie napis "Wystąpił błąd". Mniemam, że błąd znajduje się w linijkach 48-49. Proszę o naprawienie skryptu, ewentualnie nakierowanie mnie na dobrą drogę poprzez wskazanie mi funkcji jaką muszę użyć.