NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!
Avatar
Dominik Gavrecký:26.4.2015 14:55

Zdravím komunitu,

Znova sa mi naskytol celkom zaujímavý problém.

<?php
include 'db.php';

if (isset($_POST["Save"])) {
  $Receiver = $_POST["Receiver"];
  $Sender = $_POST["Sender"];
  $Subject = $_POST["Subject"];
  $Message = $_POST["Message"];
  $Time = date("H:i:s j.n.Y");

  $query = $connect->query("INSERT INTO mailer (Receiver, Sender, Subject, Message, Time) VALUES (:Receiver, :Sender, :Subject, :Message, :Time)");

}

 ?>
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42000]: Syntax error or access violation: 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 ':Receiver, :Sender, :Subject, :Message, :Time)' at line 1' in C:\Program Files\XAMPP\htdocs\emailer\index.php:11 Stack trace: #0 C:\Program Files\XAMPP\htdocs\emailer\index.php(11): PDO->query('INSERT INTO mai...') #1 {main} thrown in C:\Program Files\XAMPP\htdocs\emailer\index.php on line 11

Pozeral som na Googli kde som našiel že v mysql existujú slovíčka ktoré sú niečim špecialne. Mohol by mi niekto poradiť ako sa zbaviť erroru a povedať niečo viac o týchto slovíčkach.

https://dev.mysql.com/…d-words.html

Ďakujem

Editováno 26.4.2015 14:55
Odpovědět
26.4.2015 14:55
Hlupák nie je ten kto niečo nevie, hlupákom sa stávaš v momente keď sa na to bojíš opýtať.
Avatar
David Hartinger
Vlastník
Avatar
Odpovídá na Dominik Gavrecký
David Hartinger:26.4.2015 15:07

V té query máš značky pro PDO, musíš volat prepare() a pak execute(). Ideálně použij wrapper, se kterým se pracuje ve zdejších tutoriálech a nebudeš to muset řešit.

Editováno 26.4.2015 15:08
Akceptované řešení
+20 Zkušeností
Řešení problému
Nahoru Odpovědět
26.4.2015 15:07
New kid back on the block with a R.I.P
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 2 zpráv z 2.