Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] rejestracja
Forum PHP.pl > Forum > Przedszkole
kyan
Witam,
postanowiłem zacząć naukę z php do czego zmusiła mnie nowa stronka. Dlatego też zacząłem od skryptu rejestracji.
  1. <?
  2. $db = mysql_connect("localhost", "kyan_*", "*");
  3. mysql_select_db("kyan_korki");
  4. $login = $_POST['login'];
  5. $haslo = $_POST['haslo'];
  6. $haslo2 = $_POST['haslo2'];
  7. $mail = $_POST['mail'];
  8. if ($haslo != $haslo2)
  9. {
  10. echo("Podałeś dwa różne hasła!");
  11. }
  12. else
  13. {
  14. $rej = mysql_query("INSERT INTO `users` ('id', 'name', 'mail', 'password') VALUES (NULL, '$login', '$mail', '$haslo')");
  15. header("Location: rejestracjapomyslna.php");
  16. }
  17. ?>


i taka tabela:
  1. --
  2. -- Struktura tabeli dla `users`
  3. --
  4.  
  5. CREATE TABLE `users` (
  6. `id` int(100) UNSIGNED NOT NULL AUTO_INCREMENT,
  7. `name` varchar(20) collate ucs2_polish_ci NOT NULL,
  8. `mail` varchar(40) collate ucs2_polish_ci NOT NULL,
  9. `password` varchar(30) collate ucs2_polish_ci NOT NULL,
  10. PRIMARY KEY (`id`)
  11. ) ENGINE=MyISAM DEFAULT CHARSET=ucs2 COLLATE=ucs2_polish_ci;
  12.  
  13. --
  14. -- Zrzut danych tabeli `users`
  15. --

Niestety nic się nie zapisuje do tabeli...
Kombinowałem wiele, ale nic z tego nie wyszło. W końcu postanowiłem napisać tutaj, proszę o wyrozumiałość dla początkującego.
Skie
Spróbuj tak:

Kod
$rej = mysql_query("INSERT INTO `users` ('name', 'mail', 'password') VALUES ('".$login."', '".$mail."', '".$haslo."')");
kyan
Niestety nic, skrypt działa, ale nic nie zapisuje się w tabeli. Zresztą zobaczcie sami.
http://www.korkownia.info/rejestrator.html
bmL
Co tam mamy zobaczyć? Przecież nie ma jak sprawdzić czy w bazie danych coś się zapisuje. Ale skoro mówisz, że się nie zapisuje to spróbuj na poczłątku skruyptu rejestracyjnego:
  1. <?php
  2. ?>

Może wypluje jakieś błędy.

ps. hasła wypadałoby przechowywać zakodowane (md5/sha1)
Insert
Cytat(kyan @ 13.12.2008, 17:44:47 ) *
Niestety nic, skrypt działa, ale nic nie zapisuje się w tabeli. Zresztą zobaczcie sami.
http://www.korkownia.info/rejestrator.html

Poza tym spróbuj wcisnąć "rejestruj" nie podając żadnych danych...
kyan
Insert,
hmm przechodzi, czyli coś nie tak, tylko co...
bmL,
nic nie wywaliło, a co do haseł to najpierw chciałbym to zrozumieć.
Pride
1. mysql_error();
2. Może sprawdź czy te POSTY na pewno nie są puste. 0o
3.
  1. <?php
  2. $rej = mysql_query("INSERT INTO `users` (`id`, `name`, `mail`, `password`)
  3. VALUES ('', '".$login."', '".$mail."', '".$haslo."')");
  4. if(!$rej)
  5. {
  6.    echo mysql_error();
  7. }
  8. else
  9. {
  10.    echo 'wtf?'
  11. }
  12. ?>
kyan
  1. <?
  2. $db = mysql_connect("localhost", "kyan_*", "*");
  3. mysql_select_db("kyan_korki");
  4. $login = $_POST['login'];
  5. $haslo = $_POST['haslo'];
  6. $haslo2 = $_POST['haslo2'];
  7. $mail = $_POST['mail'];
  8. $rej = mysql_query("INSERT INTO `users` (`id`, `name`, `mail`, `password`)
  9. VALUES ('', '".$login."', '".$mail."', '".$haslo."')");
  10. if(!$rej)
  11. {
  12. }
  13. else
  14. {
  15.   echo 'wtf?'
  16. }
  17. ?>


czyli, że tak mam dać? i co to da?
Cytat
1. mysql_error();
2. Może sprawdź czy te POSTY na pewno nie są puste. 0o

nie rozumiem...
Pride
Wklej to tak:
  1. <?php
  2. $db = mysql_connect("localhost", "kyan_*", "*");
  3. mysql_select_db("kyan_korki");
  4. $login = $_POST['login'];
  5. $haslo = $_POST['haslo'];
  6. $haslo2 = $_POST['haslo2'];
  7. $mail = $_POST['mail'];
  8.  
  9. echo '<br /><br />';
  10. foreach($_POST AS $key => $value)
  11. {
  12.    ${$key} = $value;
  13.    print_r($key.' = '.$value.'<br />');
  14. }
  15. echo '<br /><br />';
  16.  
  17. if ($haslo != $haslo2)
  18. {
  19.    echo("Podałeś dwa różne hasła!");
  20. }
  21. else
  22. {
  23.    $rej = mysql_query("INSERT INTO `users` (`id`, `name`, `mail`, `password`)
  24.    VALUES ('', '".$login."', '".$mail."', '".$haslo."')");
  25.    if(!$rej)
  26.    {
  27.         echo mysql_error(); // Wyswietli ci blad jezeli to powyzej sie nie wykona
  28.    }
  29.    else
  30.    {
  31.        echo 'wtf? Czemu to dziala, ale nie zapisuje? :('; // Jezeli to sie wykona (niby zapisze do bazy), ale jednak nie dziala to juz sam nie wiem biggrin.gif
  32.    }
  33. }
  34. ?>


Teraz działa?
kyan
Dałem tak jak podałeś.
Cytat
login = admin
haslo = 11
haslo2 = 11
mail = kyanek@gmail.com


wtf? Czemu to dziala, ale nie zapisuje? sad.gif

a może z tą tabelą coś nie tak jest?

EDIT
haha ale jednak zapisuje się do tabeli, dzięki za pomoc wszystkim.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.