Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php can';不能让mysql\u查询工作_Php_Mysql_Forms - Fatal编程技术网

Php can';不能让mysql\u查询工作

Php can';不能让mysql\u查询工作,php,mysql,forms,Php,Mysql,Forms,无法使此查询工作 if (isset($_GET['id'])){ $id = $_GET['id']; if(isset($_POST['submit'])) { $id = (int)$id; $caption = mysql_real_escape_string($_POST['caption']); mysql_query(" UPDATE `photo_gallery`.`photograph` SET `caption` ='{$captio

无法使此查询工作

if (isset($_GET['id'])){
  $id = $_GET['id'];

  if(isset($_POST['submit'])) {

    $id = (int)$id;
    $caption = mysql_real_escape_string($_POST['caption']);

    mysql_query(" UPDATE  `photo_gallery`.`photograph` SET  `caption` ='{$caption}' WHERE  `photograph`.`id` ='{$id}' ");
但当我手动将其更改为此时,它就可以工作了

mysql_query("UPDATE  `photo_gallery`.`photograph` SET  `caption` =  'bruv' WHERE  `photograph`.`id` =3");

在{$id}周围有单引号。如果您的id是数据库中的提示,则不应引用它。

SQL命令中使用大括号有什么原因吗?请尝试以下方法:

mysql_query(" UPDATE  `photo_gallery`.`photograph` SET  `caption` ='$caption' WHERE  `photograph`.`id` ='$id' ");
试试这个:

mysql_query(" UPDATE  `photo_gallery`.`photograph` SET  `caption` ='".$caption."' WHERE  `photograph`.`id` = '".$id."' ");

还可以使用
intval
解析int instread。

问题可能来自mysql\u real\u escape\u字符串。在新版本中,转义由mysql完成,不再由php完成,因此。。。。对我来说是这样的

$caption = $_POST['caption'];

mysql_query(" UPDATE  `photo_gallery`.`photograph` SET  `caption` ='".mysql_real_escape_string($caption)."' WHERE  `photograph`.`id` ='".$id."' ");

把这个放在你的代码中,
$sql=“updatephoto_gallery.photo SET caption='{$caption}'其中photo.id='{$id}'
然后是
echo$sql
并告诉我您看到了什么。回显计算的字符串并查找问题。尝试检查结果:
如果(!mysql_query('your query'))回显mysql_errno()。:'。mysql_error()'code'更新照片\u gallery.photo SET caption='',其中photo.id=