我正在努力处理使用 php 的更新语句。当变量 $fltr
中的字符串包含多个单词时,就会出现问题。
$fltr ="两个单词或更多"
不起作用
$fltr="OneWordOnly"
工作正常。
require_once('includes/init.php');
$Login = new Login( $db );
if(empty($_SESSION['logged']))
{
$Login->_logout();
}
if(isset($_SESSION['uid']))
{
$userid=(int)$_SESSION['uid'];
}
$fltr = $_GET['filter'];
$fltr= pg_escape_string($fltr);
$deakt="D";
$updSQL="update class_products set FTP ='".$deakt."' where title ='".$fltr."' and owner =".$userid;
$db->query($updSQL) or die ("Error in query: $updSQL " . mysql_error());
$txt='<textarea style="margin-left:250px;margin-top:110px; font-family:verdana:font-size:14px;color:#000;">Search filter {$fltr} is deactivated</textarea>';
$class_tpl->assign('txt', $txt);
//now display the template
$class_tpl->display('cbUpdate.tpl.php');
通常我会打印 $updSQL 以查看问题所在,但我在 LightBox 变体中使用它并在调试时遇到问题。
非常感谢任何帮助。
最佳答案
我的猜测是值是 urlencoded,你需要 urldecode它,在逃跑之前。
关于php - PHP中的MySql更新语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22792604/