1

The Update customer query in this code setting phno to a constant 2147483647 always instead of setting to the value submitted... i tried echoeing $phone its correct.. but its not working when im executing query....

<?php
    include 'database.php' ;
    $id=$_POST["customer"];
    $name = $_POST["name"];
    $address = $_POST["address"];
    $phone = $_POST["phno"];
    $sql = "UPDATE `customer`  SET `phno`=$phone, `name`='$name',`address`='$address' WHERE actno=$id";
    if (!mysqli_query($con,$sql))
      {
      die('Error: ' . mysqli_error($con));
      }
    echo "successful";
    mysqli_close($con);
?>
4

2 回答 2

1

你设置phnoINTEGER,不是吗?的最大值INTEGER为 2,147,483,647,因此任何大于 2,147,483,647 的数字都超出范围,将插入为 2,147,483,647。

将数据类型更改phnoBIGINTVARCHAR

此外,您的查询容易受到 SQL 注入的影响,请参阅下面的链接了解更多详细信息。

也可以看看:

于 2013-08-03T13:26:48.270 回答
0

我认为您正在尝试在字符串中替换 $phone,但它不会那样工作,您拆分字符串或使用 {}。

于 2013-08-03T13:28:23.630 回答