我有轻微的困难(语法可能)为我在php中编写的搜索制定查询。
到目前为止,我有这个:
$query = ("SELECT * FROM $table WHERE $field LIKE "$trimmed);
trimmed定义为
$trimmed = trim($var);
我想要完成的是,使用该查询来搜索我的mysql数据库中的某一行。我已经确认它确实连接到dbase,它确实从表中获取数据。我99%是php和mysql的新手,我刚刚开始研究这个问题。任何帮助将不胜感激。
编辑:哦,我在这里使用查询:
$result = mysql_query($query);
我确定问题不在这里,但在$ query
答案 0 :(得分:2)
更改
$query = ("SELECT * FROM $table WHERE $field LIKE "$trimmed);
到
$query = "SELECT * FROM $table WHERE $field LIKE '$trimmed'";
在输入中转义任何特殊字符(例如反斜杠)总是一个好主意。使用mysql,您可以使用mysql_escape_string
:
$trimmed = mysql_escape_string($trimmed);
$query = "SELECT * FROM $table WHERE $field LIKE '$trimmed'";
mysqli,PDO和所有PHP框架中都存在等效命令。
答案 1 :(得分:1)
$query= mysql_query("SELECT data FROM mydb;");
$myarray= array();
while ($row= mysql_fetch_array($query)) {
$myarray[] = $row['data'];
}
修改强>
这是你的代码?如果是这样,您有语法错误:
$query = ("SELECT * FROM $table WHERE $field LIKE "$trimmed);
应该是:
$query = ("SELECT * FROM $table WHERE $field LIKE '$trimmed'");