Autor Zpráva
noris
Profil
ahoj mám problém s zápisem do databáze...
Podmínka se splní, napíše mi to úspěšně registrován ale do databáze mi to prostě nezapíše...
Přikládám soubor se zápisem a screen se strukturou MySQL databáze..
<link rel="stylesheet" href="../styly/styly.css" type="text/css" />
<div id="centrovani">
<?php
if (isset($_POST["registrovat"])){
mysql_connect('wm15.wedos.net', 'a12631_system', 'heslo');
mysql_select_db("d12631_system");
$login = $_POST["login"];
$heslo = $_POST["heslo"];
$mail = $_POST["mail"];
$nick = $_POST["nick"];
$skype = $_POST["skype"];
$icq = $_POST["icq"];
$jmeno = $_POST["jmeno"];
$prijmeni = $_POST["prijmeni"];
$bydliste = $_POST["bydliste"];
$pohlavi = $_POST["pohlavi"];
$time = Time();
mysql_query("INSERT INTO uzivatele (login,heslo,e-mail,nick,skype,icq,jmeno,prijmeni,bydliste,pohlavi,registrovan) VALUES
('$login','$heslo','$mail','$nick','$skype','$icq','$jmeno','$prijmeni','$bydliste','$pohlavi','$time')");
echo "Byl jste úspěšně registrován.";
}
?>
<form method="POST">
<table align="center">
<tr><th><b>Login:</b></th> <td><input type="text" name="login"></td></tr>
<tr><th><b>Heslo:</b></th> <td><input type="password" name="heslo"></td></tr>
<tr><th><b>E-mail:</b></th> <td><input type="text" name="mail"></td></tr>
<tr><th><b>Nick:</b></th> <td><input type="text" name="nick" value="nick na serveru"></td></tr>
<tr><th><b>Skype:</b></th> <td><input type="text" name="skype"></td></tr>
<tr><th><b>Icq:</b></th> <td><input type="text" name="icq"></td></tr>
<tr><th><b>Jméno:</b></th> <td><input type="text" name="jmeno"></td></tr>
<tr><th><b>Příjmení:</b></th> <td><input type="text" name="prijmeni"></td></tr>
<tr><th><b>Bydliste:</b></th> <td><input type="text" name="bydliste"></td></tr>
<tr><th><b>Pohlavi:</b></th> <td><input type="text" name="pohlavi"></td></tr><br />
 </table>
<input type="submit" name="registrovat" value="Registrovat">
</form>
</div>
</body>
</html>

Předem děkuji za pomoc
Sir Tom
Profil
noris:
Vypiš si přímo dotaz a pak jej použij v MySQLAdminovi jako SQL příkaz. Třeba sám poznáš, kde je chyba, ale tipoval bych, že to bude v uvozovkách a apostrofech.
Davex
Profil
Co vypíše mysql_error?
Alphard
Profil
Není problém třeba s tím názvem e-mail? Vypište si chybu, viz mysql_error().
noris
Profil
Alphard:
Není problém třeba s tím názvem e-mail? Vypište si chybu, viz mysql_error().
Davex:
Co vypíše mysql_error?

žádný error to nevypisuje...

Sir Tom:
noris:
Vypiš si přímo dotaz a pak jej použij v MySQLAdminovi jako SQL příkaz. Třeba sám poznáš, kde je chyba, ale tipoval bych, že to bude v uvozovkách a apostrofech.
jak vypíšu dotaz kterej jen zkopíruju a vložím do SQL? :D (v php se pohybuji asi 14 dní...)
-->zkoušel jsem to přímo ručne...a připadalo mi vše dobře..
Sir Tom
Profil
noris:
Vypiš:
echo "INSERT INTO uzivatele (login,heslo,e-mail,nick,skype,icq,jmeno,prijmeni,bydliste,pohlavi,registrovan) VALUES
('$login','$heslo','$mail','$nick','$skype','$icq','$jmeno','$prijmeni','$bydliste','$pohlavi','$time')";

A to, co se vypíše (je to jenom string) zadej jako SQL příkaz (pod záložkou SQL) v mysqladmin (nebo to napiš sem).
noris
Profil
Do Mysql zadáno:
INSERT INTO uzivatele (login,heslo,e-mail,nick,skype,icq,jmeno,prijmeni,bydliste,pohlavi,registrovan) VALUES ('noris','heslo','pajoslav8@seznam.cz','noris45','noris45','51sadf','sadf','adfs','dsaf','sdfa','1329077584');

error:
#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 '-mail,nick,skype,icq,jmeno,prijmeni,bydliste,pohlavi,registrovan) VALUES ('noris' at line 1
Sir Tom
Profil
noris:
Zkoušel jsi ten e-mail? Může mít název sloupce pomlčku (minus)? Přepiš jej na "email".
noris
Profil
Sir Tom:
Jo díky :)
Bylo to v tom...
Davex
Profil
noris:
žádný error to nevypisuje...
Sama funkce mysql_error() nic nevypisuje, ale vrací chybu v návratové hodnotě, kterou musíš vypsat přes echo. Kdybys to skusil, tak by to vypsalo stejnou chybu jako přes phpMyAdmin.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0