Я пишу код, который возвращает результаты события. В этой таблице есть несколько полей, заполненных данными из MySQL, включая ссылку для загрузки для сертификата.Таблица данных MySQL в PHP
Но теперь мне нужно добавить поле поиска. Это то, что я сделал до сих пор:
<?php
include "open.php";
$sql = "SELECT * FROM results";
if (isset($_POST['search'])){
$search_term = mysql_real_escape_string($_POST['search_box']);
$sql .= "WHERE Name = '{$search_term}' ";
$sql .= "OR Place = '{$search_term}'";
}
$query = mysql_query($sql) or die(mysql_error());
?>
<form name="search_form" method="POST" action="teste3.php">
Search: <input type="text" name="search_box" value="" />
<input type="submit" name="search" value="Search">
</form>
<table width="70%" cellpadding="5" cellspace="5">
<tr>
<td>
<strong>Place</strong>
</td>
<td>
<strong>Name</strong>
</td>
<td>
<strong>Category</strong>
</td>
<td>
<strong>Certificate</strong>
</td>
</tr>
<?php while ($row = mysql_fetch_array($query)){ ?>
<tr>
<td><?php echo $row['Place']; ?></td>
<td><?php echo $row['Name']; ?></td>
<td><?php echo $row['Category']; ?></td>
<td>
<a href="http://(...)/<?php echo $row['Place']; ?>.pdf"
style="color: #000000" target="blank">Download Certificate</a>
</td>
</tr>
<?php } ?>
</table>
Но по какой-то причине, когда я делаю тестовый поиск, браузер повторяет:
У Вас есть ошибка в вашем SQL синтаксиса; в руководстве, соответствует версии сервера MySQL для корректного синтаксиса использовать NEAR «=„Улисс“или место =„Улисс“» в строке 1.
вы пропустили пробел между '' resultados' и WHERE', когда вы их конкатенацию. – andrewsi
Вот и все. Благодарю. –