不断出现此错误-第1行的列'poi_id'的整数值不正确:“

时间:2018-12-25 15:55:39

标签: php mysql sql pdo

好的,所以我不断在第1行的列“ poi_id”获得“错误的整数值:” )”和指定的变量不是AUTO_INCREMENT。这是我的代码:

             <?php


   header("Content-type: application/json");


  $pi= $_POST["poi_ID"];
$rev= $_POST["review"];



$conn = new PDO("mysql:host=localhost;dbname=name;", "name","name");





$results = $conn->query("SELECT*FROM pointsofinterest");


  $results= $conn -> query ("INSERT INTO poi_reviews(poi_id, review) VALUES 
  ('$pi', '$rev')");



  echo json_encode($resultsAsAssocArray) ;

 print_r($conn->errorinfo());                        
  ?>  

2 个答案:

答案 0 :(得分:1)

如果$poi_id是一个整数,则不能在其前后加上撇号。 同样,您的代码也不保证$pi是一个整数值。尝试将$pi强制转换为Integer并插入它而不是原始POST数据。

答案 1 :(得分:0)

因为我看到一个空值,所以我想到的唯一解决方案是将一个空值转换为NULL0,因此您可以检查空字符串并将其更改为null,然后再执行操作将其注入mysql查询或使用NULLIF之类的方法来完成它(如果您希望通过这种方式来处理空值)