<input type="submit" name="submit" value="Potwierdź"> </form>
oraz poniższy skrypt php do niego:
<?php // define variables and set to empty values $name = $username = $email = $password = ""; $nameErr = $usernameErr = $emailErr = $passwordErr = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { {$nameErr = "Imię jest wymagane!";} else { $name = test_input($_POST["name"]); {$nameErr = "Niepoprawne imię, tylko litery są dozwolone"; } } {$usernameErr = "Nazwa użytkownika jest wymagana!";} else {$username = test_input($_POST["username"]);} {$emailErr = "Mail jest wymagany!";} else { $email = test_input($_POST["email"]); if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {$emailErr = "Niepoprawny mail";} } {$passwordErr = "Hasło jest wymagane!";} else {$password = test_input($_POST["password"]);} } function test_input($data) { return $data; } ?>
To wszystko powyżej działa elegancko, obsługa błędów poprawnie wyrzuca errory itp. Problem w tym, że niestety nie było nic napisane jak wysłać to wszystko na serwer. Próbowałem dopisać potrzebny kod w oparciu o gotowy skrypt znaleziony na forum ale jako że jestem początkujący w php/mysql niestety nic z tego nie wyszło.
Prosiłbym o pomoc w poprawieniu kodu żebym mógł tworzyć konta na serwerze.
Poniżej moja niedziałająca wersja, po kliknięciu wyślij w formularzu dostaje błąd:
"Wystąpił błąd i nie udało się zarejestrować użytkownika."
<?php require_once "connect.php"; //dane do serwera $polaczenie = @new mysqli($host,$user,$pass,$name); if($polaczenie->connect_errno!=0) { } // define variables and set to empty values $name = $username = $email = $password = ""; $nameErr = $usernameErr = $emailErr = $passwordErr = ""; if ($_SERVER["REQUEST_METHOD"] == "POST") { {$nameErr = "Imię jest wymagane!";} else { $name = test_input($_POST["name"]); {$nameErr = "Niepoprawne imię, tylko litery są dozwolone"; } } {$usernameErr = "Nazwa użytkownika jest wymagana!";} else {$username = test_input($_POST["username"]);} {$emailErr = "Mail jest wymagany!";} else { $email = test_input($_POST["email"]); if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {$emailErr = "Niepoprawny mail";} } {$passwordErr = "Hasło jest wymagane!";} else {$password = test_input($_POST["password"]);} $existsLogin = mysql_fetch_array(mysql_query("SELECT COUNT(*) FROM users WHERE username='$username' LIMIT 1")); $errors = ''; if ($existsLogin[0] >= 1) $errors .= 'Nazwa użytkownika jest już zajęta<br />'; if ($errors != '') { } else { mysql_query("INSERT INTO users (name, username, email, password) VALUES('$name','$username','$email','$password');") or die ('<p class="error">Wystąpił błąd i nie udało się zarejestrować użytkownika.</p>'); } } function test_input($data) { return $data; } $polaczenie->close(); ?>