Tърсачка за сайта с MySQL
така.. значи ето кода за формата:
form.php
<form method="GET" action="search.php">
<table cellpadding="0" cellspacing="0" width="300px" >
<tr>
<td align="right" width="200px"><input type="text" name="search" size="30"></td>
<td align="right" width="100px"><input type="submit" value="Търси"></td>
</tr>
</table>
</form>а ето и кода на search.php
<?php
$tarsene = $_GET['search'];
$server = "localhost";
$dbusername = "ime";
$dbpassword = "parola";
$db_name = "bazaime";
mysql_connect($server, $dbusername, $dbpassword)or die("Сайтът не може да се свърже към базата данни");
@mysql_select_db($db_name) or die("Грешна база данни");
$query = " SELECT * FROM text WHERE ime LIKE '%$tarsene%'";
$result = mysql_query($query) or die('Error, query failed');
$row = mysql_numrows($result);
echo "Намерени резултати за: <b><i>$tarsene</i></b>";
echo "<br />";
while($row = mysql_fetch_array($result))
{
$ime=$row[ime];
echo "$ime<br />";
}
?>а ето я и базата ни:
CREATE TABLE `text` (
`id` int(20) NOT NULL,
`ime` text NOT NULL
);нарочно не е голяма за да разберете по лесно 🙂
Цялата търсачка е една заявка .
Забележете, че във формата form method e GET.
Това е нарочно за да може да предава данните с линк във вид:
search.php?search=“търсената дума“
За методите GET и POST има инфо, ако искате да четете из нета бол.
формата ни препраща към search.php като има стойност в URL линка.
Извличаме тази стойност с $tarsene = $_GET[‘search’];
search в скобите зависи от това как е зададено във формата.
<input type="text" name="search" size="30"> name="search" - от него зависи какво ще пише в скобите при $GET_[''];.Сравняваме $_GET[‘search’] с $tarsene. и остана последното което сме добавили в кода.
“ SELECT * FROM text WHERE ime LIKE ‘%$tarsene%'“;
Тук правим избора на таблицата и клетките в нея.
WHERE ime LIKE ‘%$tarsene%’ -тук сравняваме дали има съвпадаща дума записана в базата .
Ако решите да добавите още клетки в които да търсите то ще стане така:
WHERE ime LIKE ‘%$tarsene%’ OR familia LIKE ‘%$tarsene%’ OR adres LIKE ‘%$tarsene%’ и така нататък.. колкото искате.


