PHP Registrace, SQLSTATE[42S22] – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

PHP Registrace, SQLSTATE[42S22] – PHP – Fórum – Programujte.comPHP Registrace, SQLSTATE[42S22] – PHP – Fórum – Programujte.com

 

Zwei
~ Anonymní uživatel
10 příspěvků
13. 4. 2014   #1
-
0
-

Zdravim :)
dělám registraci, ale hlásí mi to chybu vždy když odešlu formulář tak mi to vrátí tento sql error : 

Připojen obrázek.

nevíte někdo kde je problém? 
 

<?PHP
include "config.php";
session_start();
if (isset($_POST['nick']) && isset($_POST['heslo']) && 
    isset($_POST['email']) && isset($_POST['datnar']) && ($_POST["jmeno"]) && ($_POST["prijmeni"]) && isset($_POST['Typ_Kontaktu']) && isset($_POST["pohlavi"]))  
{
        $pohlavi = ($_POST['pohlavi']);
        $email = ($_POST['email']);
        $datnar = ($_POST['datnar']);
        $nick = ($_POST['nick']);
        if($_POST['heslo'] == $_POST['heslo1'])
          {
            $heslo = md5($_POST['heslo']);
          }
        $jmeno = ($_POST['jmeno']);
        $typk = ($_POST['Typ_Kontaktu']);
        $prijmeni = ($_POST['prijmeni']);
        $db->query("INSERT INTO tblosoba(`NICK`, `HESLO`, `DATNAR`, `JMENO`, `PRIJMENI`, `TYPKON_ID`, `POHLAVI_ID`) VALUES ('$nick', $heslo, '$datnar', '$jmeno', '$prijmeni', $typk, $pohlavi)");
        echo "Registrace dokončena.";
    }
	else 
      {
        echo "Uživatel existuje";
      }
      

        if ($_SERVER["REQUEST_METHOD"] == "POST")
{
  if (empty($_POST["nick"]))
    {echo "Přihlašovací jméno je vyžadováno!<br>";}
  if (empty($_POST["heslo"]))
    {echo "Heslo je vyžadováno!<br>";}  
  if (empty($_POST["email"]))
    {echo "Email je vyžadován!<br>";}
  if (empty($_POST["datnar"]))
    {echo "Datum narození je vyžadováno! ";}
}
$ssql="COUNT(USER_ID) FROM tblosoba";
?>

můžu přiložit i HTML formulář jestli to pomůže :)

Nahlásit jako SPAM
IP: 109.80.180.–
Zwei
~ Anonymní uživatel
10 příspěvků
13. 4. 2014   #2
-
0
-

číslo za Unknown column je md5 hash z hesla, jakékoliv heslo zadám nefunguje :/

Nahlásit jako SPAM
IP: 109.80.180.–
Kit+15
Guru
13. 4. 2014   #3
-
0
-

#1 Zwei
Chybí ti apostrofy kolem proměnné $heslo.

Sprav si SQL injection, než ti tu databázi někdo rozbije.

A nauč se zalamovat řádky na max. 80 znaků. Tohle se nedá číst.

Nahlásit jako SPAM
IP: 46.174.34.–
Komentáře označují místa, kde programátor udělal chybu nebo něco nedodělal.
Zwei
~ Anonymní uživatel
10 příspěvků
13. 4. 2014   #4
-
0
-

#3 Kit
Díky moc, lámu si s tim hlavu jakou dobu a oni to jsou apostrofy, nedošlo mi že to neni integer(hehe). ochranu proti SQL injection nás ve škole neučili, dělám to jako úkol :) 

Nahlásit jako SPAM
IP: 109.80.180.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 31 hostů

Podobná vlákna

SMS registrace v PHP — založil ppeter

Problém s registrace.php — založil jAkErCZ

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý