我有这样的查询
mysql_query("select * from codes where code='222 '");
我想在查询中的列中删除空格,所以它应该像
mysql_query("select * from codes where code=strippedstring('222 ')"
最好的方法是什么
答案 0 :(得分:1)
试
$value=trim('222 ');
mysql_query("select * from codes where code=$value"
注意: - 因不推荐使用而停止使用mysql_ *
了解trim()
答案 1 :(得分:1)
首先,最好将查询的参数(查询的值和变量)与查询本身分开。为此,您需要使用mysqli或PDO。无论如何,这是一种很好的做法,因为旧的'mysql'函数已被弃用并将被删除。 Here是mysqli的文档,它将是您最简单的升级途径。
首先,将查询的参数放入变量中。
$input = '222 ';
然后使用trim()
。
$input = trim($input);
最后,运行您的查询。
$stmt = mysqli_stmt_init($database);
mysqli_stmt_prepare($stmt, 'select * from codes where code = ?');
mysqli_stmt_bind_param($stmt, 's', $input);
mysqli_stmt_execute($stmt);
//Note: Make sure to know how many columns you're getting.
$output = array();
mysqli_stmt_bind_result($stmt, $id, $name, $code);
while (mysqli_stmt_fetch($stmt)) {
$output[] = array($id, $name, $code);
}
这看起来比你拥有的代码多了很多,但是每一行都有一个重要的目的,有时你可能想在它们之间做其他事情。我强烈建议您查看mysqli文档,虽然是的,但是它们允许您执行一个简单的“mysqli_query()
”调用,该调用与您正在使用的“mysql_query()
”几乎完全相同,这是个坏主意它会让你开放SQL注入攻击等。
Here概述了为什么要使用预准备语句,并快速了解如何在各种语言(包括PHP)中使用它们。
答案 2 :(得分:0)
使用trim()
功能;
mysql_query("select * from codes where code=trim('222 ')"
答案 3 :(得分:0)
答案 4 :(得分:0)
使用以下PHP函数:
mysql_query("select * from codes where code=".strippedstring('222 ').");
答案 5 :(得分:0)
$sql="select * from codes where code='".trim('222 ')."'";
mysql_query($sql);