PDO Prepared Statement和SQL LIKE多个值
我有一个搜索表单,用户可以搜索序列号或产品名称。
这是我的代码:
<?php
require_once "pdo_rothConn.php";
if (isset($_POST['searchText'])){
$sql = "SELECT m_ipdb, m_name FROM machine WHERE 'm_ipdb' LIKE :number OR 'm_name' LIKE :name";
$stmt = $dbh->prepare($sql);
$stmet->execute(array(
':number' => $_POST['searchText'],
':name' => $_POST['searchText']));
while ( $row = $stmt->fetch(PDO::FETCH_ASSOC) ) {
echo($row['m_ipdb']);
echo($row['m_name']);
}
?>
<p>Search for a Machine</p>
<form method="post">
<table width="500" border="1">
<tr>
<td>Enter IPDB Number or Name:</td>
<td><input name="searchText" type="text" id="searchText" /></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Search Database"></td>
<td><a href="#">Cancel</a></p></td>
</tr>
</table>
</form>
</body>
</html>
首先,是否有更简洁的方式可以编写我的SQL语句,因为我正在寻找的$ _POST值是相同的? 我不确定在我的SQL语句中是否也有多个LIKE语句出现错误。
截至目前,结果页面已经空白,根本没有工作。 我想将代码拆分成页面和处理页面,而不是后页面。 我卡住了。 但是,在我了解PDO并准备了语句并获得反馈以了解准备/参数化语句之前,我问了这个问题。 产生的代码是否也能正确防范SQL注入?
谢谢。
$ stmet->执行到$ stmt-> execute?
链接地址: http://www.djcxy.com/p/93773.html上一篇: PDO Prepared Statement and SQL LIKE multiple values
下一篇: Are MySQLi Prepared Statements sufficient to prevent SQL injection?