我正在练习php mysql的搜索结果。我得到的唯一问题是搜索在返回结果中不一致。我的搜索结果不一致?为什么是这样?
请访问:在 '见习'
weezy.co.uk/newresults.php
类型在顶部的第一个搜索框。有时候,结果有时显示他们不会。我不明白吗?
我的HTML搜索框代码:
<form action="newresults.php" method="post" name="form">
<input type="text" id="search" name="search"
size="30" value="" style="background- color:white; border:
solid 1px #ffffff; height: 30px; font-size:19px; font-family:
HelveticaNeue-Light; font-weight: 1;
vertical-align:9px;color:#151515"
onfocus="if(this.value == ''){this.value =
'';this.style.color='#363D42'}" />
</div>
</div>
<div class="search">
<div class="search1">
<input type="text"
id="searchterm" name="searchterm" size="25" value="" style="background-
color:white; border:
solid 1px #ffffff; height: 30px; font-size:19px; font-family:
HelveticaNeue-Light; font- weight: 1;
vertical-align:9px;color:#151515"
onfocus="if(this.value == ''){this.value =
'';this.style.color='#363D42'}" />
</form>
PHP代码:
<?php
$conn = mysql_connect("", "", "");
if (!$conn) {
echo "Unable to connect to DB: " . mysql_error();
exit;
}
{
$search = "%" . $_POST["search"] . "%";
$searchterm = "%" . $_POST["searchterm"] . "%";
}
if (!mysql_select_db("weezycouk_641290_db1")) {
echo "Unable to select mydbname: " . mysql_error();
exit;
}
$sql = "SELECT name,lastname,email
FROM test_mysql
WHERE name LIKE '$search%' AND lastname LIKE '$searchterm%'";
$result = mysql_query($sql);
if (!$result) {
echo "Could not successfully run query ($sql) from DB: " . mysql_error();
exit;
}
if (mysql_num_rows($result) == 0) {
echo "No rows found, nothing to print so am exiting";
exit;
}
while ($row = mysql_fetch_assoc($result)) {
echo '<br>';
echo '<br>';
echo '<div class="data1">';
echo $row["name"];
echo '</div>';
echo '<br>';
echo '<div class="data2">';
echo $row["lastname"];
echo '</div>';
echo '<br>';
echo '<div class="data3">';
echo $row["email"];
echo '</div>';
}
mysql_free_result($result);
?>
谢谢你们!
詹姆斯
请提供屏幕截图或阐述的搜索行为。在问题解决的时候,提供到问题的链接到您的网站并不会帮助任何人。 –
我没有你的问题的答案,但我知道你应该**总是**使用[mysql_real_escape_string()](http://nl.php.net/mysql_real_escape_string)来防止SQL注入攻击。另请参阅:http://nl.php.net/manual/en/security.database.sql-injection.php – Carpetsmoker
Thnaks家伙,基本上我可以在搜索中输入学员,并显示结果。那么我可以做我再次输入学员,没有结果将显示 – James