Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php]rejestracja błąd
riquelme
post
Post #1





Grupa: Zarejestrowani
Postów: 39
Pomógł: 0
Dołączył: 1.04.2006

Ostrzeżenie: (0%)
-----


Oto mój skrypt do rejestracji nowych użytkowników:

<?
$polaczenie = mysql_connect("localhost", "w", "e");
mysql_select_db("w", $polaczenie) or die ("Nie mozna sie połączyć");
$imie=$_POST['imie'];
$nazwisko=$_POST['nazwisko'];
$email=$_POST['email'];
$login=$_POST['login'];
$haslo=$_POST['haslo'];
$haslo2=$_POST['haslo2'];
$rodzaj=$_POST['rodzaj'];

if ($haslo != $haslo2)
{
echo "Hasła nie są takie same!";
}

$wynik=mysql_query("SELECT * FROM users WHERE login=$login");
echo mysql_error();
if ($wynik!==0)
{
echo "Już taki login istnieje!";

}
$zapis="INSERT INTO users(imie,nazwisko,email,login, haslo,rodzaj, data) VALUES('".$_POST['imie']."', '".$_POST['nazwisko']."', ''".$_POST['email']."', ''".$_POST['haslo']."', ''".$_POST['haslo2']."', ' '".$_POST['rodzaj']."', ')";
$wynik=mysql_query($zapis);

if (!$wynik)
{
echo "Rejestracja zakończona pomyślnie";
exit;
}
else
{
echo ('Rejestracja nie powiodła sie! ');
exit;
}

?>

Przy wypełnianiu formularza np we wszystkie pola wpisuje xxx tp wyświetla się komunikat : "Unknown column 'xxx' in 'where clause'Już taki login istnieje!Rejestracja zakończona pomyślnie". Co należy zmienić żeby prawidłowo dodawało użytkowników do bazy??
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




dziwnie masz to skonstruowane. mimo ze bedziesz mial, iz login istnieje, to i tak przechodzisz dalej do dodawania usera. gdzie sens i logika? (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
pozatym zle sprawdzasz istnienie usera. mysql_query o ile nie ma bledow mysql zwraca dla selecta resource, czyli twoj warunek zawsze bedzie sprawdzony. powiino to byc tak:
  1. <?php
  2. $wynik=mysql_query("SELECT * FROM users WHERE login='$login'");
  3. if (mysql_num_rows($wynik) > 0)
  4. {
  5. echo "Już taki login istnieje!";
  6. }
  7. ?>


co do niedodawania to walnij se :
  1. <?php
  2. $wynik=mysql_query($zapis) or die(mysql_error());
  3. ?>
i zobacz czy ci nie pluje bledami

pomine juz ten szczegol:
  1. <?php
  2. if (!$wynik)
  3. {
  4. echo "Rejestracja zakończona pomyślnie";
  5. }
  6. ?>
ze jezeli zapytanie wypluje ci bledy to ty piszesz ze wszystko jest ok (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 02:26