Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: не работает поиск
 
 автор: jelenad   (19.04.2009 в 01:21)   письмо автору
 
 

<html>
<head>
  <title>Магазин "Буквофил" - Результаты поиска</title>
</head>
<body>
<h1>Магазин "Буквофил" - Результаты поиска</h1>
<?php
  // создание коротких имен переменных
  $searchtype=$_POST['searchtype'];
  $searchterm=$_POST['searchterm'];

  $searchterm= trim($searchterm);

  if (!$searchtype || !$searchterm)
  {
     echo 'Вы не ввели параметры поиска.  Пожалуйста, вернитесь на предыдущую страницу и повторите ввод.';
     exit;
  }
  
  if (!get_magic_quotes_gpc())
  {
    $searchtype = addslashes($searchtype);
    $searchterm = addslashes($searchterm);
  }

  @ $db = new mysqli('localhost', 'root', 'qwerty', 'books');

  if (mysqli_connect_errno()) 
  {
     echo 'Ошибка: Не удалось установить соединение с базой данных. Пожалуйста, повторите попытку позже.';
     exit;
  }

  $query = "select * from books where ".$searchtype." like '%".$searchterm."%'";
  $result = $db->query($query);

  $num_results = $result->num_rows;

  echo '<p>Найдено: '.$num_results.'</p>';

  for ($i=0; $i <$num_results; $i++)
  {
     $row = $result->fetch_assoc();
     echo '<p><strong>'.($i+1).'. Название: ';
     echo htmlspecialchars(stripslashes($row['author_name']));
     echo '</strong><br />Автор: ';
     echo stripslashes($row['author_name']);
     
     echo '</p>';
  }
  
  $result->free();
  $db->close();

?>

  Ответить  
 
 автор: Лерк   (19.04.2009 в 02:58)   письмо автору
 
   для: jelenad   (19.04.2009 в 01:21)
 

Любопытство заставило погуглить. В общем и целом, код взят из какой-то книги "Sams PHP and MySQL Web Development".
Я понимаю, что книга безнадёжно устарела (2003-й год), но писать
$searchtype=$_POST['searchtype'];
//
$searchtype = addslashes($searchtype);
//
$query = "select * from books where ".$searchtype." like '%".$searchterm."%'";

, а потом говорить, мол, "Check and filter data coming from user" - просто смешно.

Удалите код, его писали ламеры.

  Ответить