插入数据库错误SQLSTATE [HY093]

时间:2014-06-22 19:20:48

标签: php mysql database insert connection

我一直在忙于使用此脚本来保存此表单中的数据

connect.php设置我与数据库的连接

(对于代码之间的荷兰语评论感到抱歉)

 <?php
 include('connect.php');
 //Gebruik de method ->exec(). Raadpleeg de reader hoe je deze method moet gebruiken. 

 $KijkerV =$_POST['KijkerV'];
 $KijkerT_V =$_POST['KijkerT_V']; 
 $KijkerA=$_POST['KijkerA'];
 $Email = $_POST['Email'];
  $ShowId = $_POST['ShowId'];

 try { 

  $sql = 'INSERT INTO tblkijker (Kijkerv, KijkerT_V, KijkerA, Email, ShowId) 
  VALUES (:Kijkerv, :KijkerT_V, :KijkerA, :Email, :ShowId'; 

  //het statement wordt toegevoegd aan een pdo statement object 
  $s = $pdo->prepare($sql); 
  //koppelen van parameters in de query string met de te inserten waardes 
  $s->bindValue(':Kijkerv', $KijkerV, PDO::PARAM_STR); 
  $s->bindValue(':KijkerT_V', $KijkerT_V, PDO::PARAM_STR);
  $s->bindValue(':KijkerA', $KijkerA, PDO::PARAM_STR);
  $s->bindValue(':Email', $Email, PDO::PARAM_STR);    
  $s->bindValue(':ShowId', $ShowId, PDO::PARAM_STR);

  var_dump($KijkerV);
 var_dump($KijkerT_V);
 var_dump($KijkerA);
 var_dump($Email);
 var_dump($ShowId);
 var_dump($sql);
 var_dump($S);
  //Nu kan de query worden uitgevoerd 
  $s->execute(); 
  //id is een auto_increment veld is nu bepaald 
  $Stoelnummer = $pdo->lastInsertId(); 
  $output = "Uw kaarten zijn gereseveerd u heeftb stoelnummer: ".$Stoelnummer; 

 } 
 catch (PDOException $e) 
 { 
  $output = 'Fout bij inserten van een rij: ' . $e->getMessage(); 
 } 
?> 
<html> 
 <head></head> 
 <body> 
 <?php echo $output ?> 
 </body> 
</html>

正在出现的错误: Fout bij inserten van een rij :(与捕获一样)

 error 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 '' at line 2

这里出了什么问题?

1 个答案:

答案 0 :(得分:1)

你似乎没有关闭这些问题。

此:

$sql = 'INSERT INTO tblkijker (Kijkerv, KijkerT_V, KijkerA, Email, ShowId) 
VALUES (:Kijkerv, :KijkerT_V, :KijkerA, :Email, :ShowId';

应该是

$sql = 'INSERT INTO tblijker (Kijkerv, KijkerT_V, KijkerA, Email, ShowId)
VALUES (:Kijkv, :KijkerT_V, :KijkerA, :Email, :ShowId)';

这应该可以解决您遇到的错误。