Php 将变量嵌入Mysql
想知道是否有人能帮上忙-我肯定这以前是可行的,但我无法让mysql更新正常工作Php 将变量嵌入Mysql,php,mysql,Php,Mysql,想知道是否有人能帮上忙-我肯定这以前是可行的,但我无法让mysql更新正常工作 $db->query("UPDATE entry_pending_details SET old_value = '{$value ["old_value"]}' WHERE id = '{$value ["id"]}'"); 很明显,变量没有被识别,好像我把硬编码的值放进去了一样 有什么想法吗 谢谢您的问题可能是: 双引号字符串中包含双引号。这甚至不应该运行,这是一个语法错误 变量名和括号之间的空格 您可能
$db->query("UPDATE entry_pending_details SET old_value = '{$value ["old_value"]}' WHERE id = '{$value ["id"]}'");
很明显,变量没有被识别,好像我把硬编码的值放进去了一样
有什么想法吗
谢谢您的问题可能是:
$st = $db->prepare("UPDATE entry_pending_details SET old_value = ? WHERE id = ?");
$st->execute(array($value['old_value'], $value['id']));
你的问题可能是:
$st = $db->prepare("UPDATE entry_pending_details SET old_value = ? WHERE id = ?");
$st->execute(array($value['old_value'], $value['id']));
请尝试以下操作:
$sql = "UPDATE entry_pending_details SET old_value = '{$value ["old_value"]}' WHERE id = '{$value ["id"]}'";
mysql_query($sql) or die(mysql_error());
echo $sql;
将查询放入变量中是一个好主意,这样您可以在以后需要时检查它
另外,var\u dump($values)
显示了什么?请尝试以下操作:
$sql = "UPDATE entry_pending_details SET old_value = '{$value ["old_value"]}' WHERE id = '{$value ["id"]}'";
mysql_query($sql) or die(mysql_error());
echo $sql;
将查询放入变量中是一个好主意,这样您可以在以后需要时检查它
还有,
var\u dump($values)
显示了什么?您必须使用单引号”
或在数组索引周围转义双引号(如\“
)。我将双引号替换为单引号
"UPDATE entry_pending_details SET old_value = '{$value['old_value']}' WHERE id = '{$value['id']}'"
必须在数组索引周围使用单引号
”
或转义双引号(如\“
)。我用单引号代替了双引号
"UPDATE entry_pending_details SET old_value = '{$value['old_value']}' WHERE id = '{$value['id']}'"
我要做的是预先将值设置为vars。e、 g
$old_value = $value['old_value'];
$id = $value['id'];
mysql_query("UPDATE entry_pending_details SET old_value = '$old_value' WHERE id = '$id'");
我要做的是预先将值设置为vars。e、 g
$old_value = $value['old_value'];
$id = $value['id'];
mysql_query("UPDATE entry_pending_details SET old_value = '$old_value' WHERE id = '$id'");
我还以为是空格,但在我的5.3.2中,
{}
符号与空格配合得很好。e、 g.echo{$x['a']}
和echo{$x['a']}
都能很好地使用$x['a']='yo'
并按预期给我'yo'。我还以为是空格,但在我的5.3.2上,{/code>符号可以很好地使用空格。e、 g.echo{$x['a']}
和echo{$x['a']}
两者都能很好地使用$x['a']='yo'
并按预期给我'yo'。{}
数组变量中的“
不会”中断“5.3.2.Hmm上的字符串,真的吗?我不知道,现在无法测试。。。无论如何,OP没有提到他使用的是什么版本,也许是某个早期版本不支持它?但是Dan使用参数的答案是IMO的方法。不知道什么时候会改变。我也很惊讶。我也注意到了变量名中的引号和空格,但这(虽然很奇怪)在5.3.2Hi上确实有效,这是继承的定制CMS,有许多问题我正在设法解决。在前面的代码中,这是从{$h}中选择*的,但由于某些原因,这一行没有。这真让人费解——我敢肯定以前一切都很好。数组中的变量填充得很好。那么,调试它的下一步是转储$value[“id”]
的值,并使用一些mySQL管理软件检查DB中是否存在具有该id的记录(即可能更新失败,因为没有要更新的记录)。尝试了。{}
数组变量中的“
不会”中断“5.3.2.Hmm上的字符串,真的吗?我不知道,现在无法测试。。。无论如何,OP没有提到他使用的是什么版本,也许是某个早期版本不支持它?但是Dan使用参数的答案是IMO的方法。不知道什么时候会改变。我也很惊讶。我也注意到了变量名中的引号和空格,但这(虽然很奇怪)在5.3.2Hi上确实有效,这是继承的定制CMS,有许多问题我正在设法解决。在前面的代码中,这是从{$h}中选择*的,但由于某些原因,这一行没有。这真让人费解——我敢肯定以前一切都很好。数组中的变量填充得很好。那么,调试它的下一步是转储$value[“id”]
的值,并使用一些mySQL管理软件检查DB中是否存在具有该id的记录(即可能更新失败,因为没有要更新的记录).那么在它坏之前你改变了什么?那么在它坏之前你改变了什么?