Autor Zpráva
gygabyte
Profil *
Mám kód
<?php
$reg = $_POST['reg'];
$nick = $_POST['nick'];
$heslo = $_POST['heslo'];
$heslo2 = $_POST['heslo2'];
if(isset($reg)) {
 if($heslo == $heslo2) {
 db_connect();
 $sql = "SELECT nick FROM users WHERE nick='$nick'";
 $vysledek = mysql_query($sql);
 $pocet = mysql_num_rows($vysledek);
  if($pocet != 1) {
      db_connect();
    $heslo = md5($heslo);
   $dotaz = "INSERT INTO users ('id', 'nick', 'heslo') VALUES ('', '$nick', '$heslo')";
   $res = mysql_query($dotaz);
   if($res)
   echo "Registrace byla úspěšná nyní se můžete <a href='index.php'>přihlásit</a>";
   }
   else
    echo "Jméno už je obsazeno";
}
}
?>


Pokud už jméno v db je tak to vypíše že už tam je alekdyž ne tak se do db nic nezapíše.
Kde je chyba?
ninja
Profil
Nechte si vypsat vygenerovany insert z radku 15 a zjistete, co na takovy dotaz vraci MySQL za error.

A proc opakovane pripojujete databazi?
gygabyte
Profil *
Tohle mi hlásí phpMyAdmin

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''id', 'nick', 'heslo') VALUES ('1', 'kok', '6ab7ec99b6aa105aeab1acde2019b125')' at line 1
TomášK
Profil
Názvy sloupců se píšou buď bez apostrofů nebo se zpětnými apostrofy (`). A vyhoď to id, když ho tam explicitně neuvedeě, ono se doplní automaticky taky ;-)
INSERT INTO users(nick, heslo) VALUES ( '$nick', '$heslo')
gygabyte
Profil *
Dík, funguje
Toto téma je uzamčeno. Odpověď nelze zaslat.