【问题标题】:Request is not working for me请求对我不起作用
【发布时间】:2014-04-07 11:17:40
【问题描述】:

我不明白为什么这个请求不起作用。

$query ="UPDATE $this->tabdata SET ";
foreach ($this->dataedit as $key => $value) {
 $query .= "".$key."  = '".$value."', ";
}

$pat ="+-0*/";
$query .= $pat;
$query = str_replace(", ".$pat," ", $query)  ;
$query .=" WHERE  id = '$id' ";
echo $query;
$sql = mysql_query($query);

【问题讨论】:

  • $query 的预览是什么?可以发一下吗?
  • 你连接到你的数据库了吗?也不要这样做 "+-0/" 和 str_replace 魔术只是删除最后一个 , 只是做一个 trim($query," ,");
  • 考虑不要使用字符串操作来制作 SQL。

标签: php mysql


【解决方案1】:
$query ="UPDATE $this->tabdata SET ";
foreach ($this->dataedit as $key => $value) {
 $query .= "".$key."  = '".$value."', ";
}

$pat ="+-0*/";
$query .= $pat;
$query = str_replace(", ".$pat," ", $query)  ;
$query .=" WHERE  id = '{$id}' ";//modify'$id' to '{$id}',try again 
echo $query;
$sql = mysql_query($query);

链接Strings's single quoted part

注意:与双引号和heredoc语法不同,特殊字符的变量和转义序列在出现在单引号字符串中时不会被扩展。

【讨论】:

猜你喜欢
  • 2017-01-17
  • 2021-08-31
  • 2014-05-12
  • 1970-01-01
  • 1970-01-01
  • 2020-11-28
  • 2021-10-11
  • 2022-01-23
  • 2018-05-15
相关资源
最近更新 更多