如何在mysql更新中包含php echo?

时间:2013-05-09 12:58:31

标签: php mysql

所以我使用php更新我的mysql数据库。下面是UPDATE的结尾,如果我有一个字符串而不是echo $row[embedcode]");它工作正常,这个echo设置页面上的数据就好了检索正确的值,但在这个UPDATE中它不起作用。

...WHERE `embedcode` = echo $row[embedcode]");

我尝试过使用“。”围绕它并在其周围添加自己的php标签,但我不确定需要做什么。

6 个答案:

答案 0 :(得分:6)

请使用:

...WHERE `embedcode` = " . $row[embedcode]);

不需要echo

作为旁注,您应该参数化或至少清理进入MySQL查询的任何字符串,以防止SQL注入和其他不良内容。

答案 1 :(得分:1)

" ... WHERE `embedcode=` '" .$row[embedcode]. "';");

答案 2 :(得分:0)

WHERE embedcode = . $row[embedcode]);将设置值。

sql语句中不需要echo。 echo用于显示从php到webbrowser的内容。

答案 3 :(得分:0)

你不使用echo,也许它应该是:

...WHERE `embedcode=` . $row[embedcode]");

如果$row[embedcode]是一个字符串,则必须在其周围添加引号。

答案 4 :(得分:0)

比如说......

("UPDATE `tblProfile` SET `profilename` = 'abc' WHERE `embedcode` = '".$row['embedcode']."'");

答案 5 :(得分:0)

为防止SQL注入,如果您使用的是PDO或MySQLi,则可以将该值作为参数传递。

例如,

$stmt = $dbConnection->prepare('...WHERE `embedcode` = :embedcode');
$stmt->execute(array(':embedcode' => $row[embedcode]));

有关详细信息,请参阅this