Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.05.2013, 17:29   #1
linkoln_7
Форумчанин
 
Регистрация: 04.03.2013
Сообщений: 164
По умолчанию Поиск

Доброго времени суток.
Помогите пожалуйста оформить поиск
есть страница на которой форма
Код:
<form id="form_1" action="" method="post">
					<div class="wrapper pad_bot1">
						
							<div class="bg"><?php include 'page/korobka.php'; ?></div>
						
				
					</div>
                                    <div class="wrapper">
						Выбирите город
						<div class="bg"><?php include 'page/kod.php'; ?></div>
					</div>
					<div class="wrapper">
						Выбирите марку 
						<div class="bg"><?php include 'page/phpnazv.php';?></div>
					</div>
					<div class="wrapper">
						Выбирите модель
						<div class="bg"><?php include 'page/model.php';?></div>
					</div>
					<div class="wrapper">
						Цена
						<div class="wrapper">
							<div class="bg left"><input type="text" class="input input2" value="от " onBlur="if(this.value=='') this.value='от '" onFocus="if(this.value =='от' ) this.value=''"></div>
							<div class="bg right"><input type="text" name ="cena" class="input input2" value="до" onBlur="if(this.value=='') this.value='до'" onFocus="if(this.value =='до' ) this.value=''"></div>
						</div>
					</div>
					<div class="wrapper">
					Пробег
						<div class="wrapper">
							<div class="bg left"><input type="text" class="input input2" value="от " onBlur="if(this.value=='') this.value='от '" onFocus="if(this.value =='от ' ) this.value=''"></div>
							<div class="bg right"><input type="text" class="input input2" value="до" onBlur="if(this.value=='') this.value='до'" onFocus="if(this.value =='до' ) this.value=''"></div>
						</div>
                       Год выпуска
						<div class="wrapper">
							<div class="bg left"><input type="text" class="input input2" value="от " onBlur="if(this.value=='') this.value='от '" onFocus="if(this.value =='от ' ) this.value=''"></div>
							<div class="bg right"><input type="text" class="input input2" value="до" onBlur="if(this.value=='') this.value='до'" onFocus="if(this.value =='до' ) this.value=''"></div>
						</div>
					</div>
					<div class="wrapper">
						
					<p>&nbsp</p>
                    <p>&nbsp</p>
                        	<input class="button2" type="submit" value=" Показать " name="sub1"></input>
					</div>
                  
				</form>
и страница на которой сам код обработчик
Код:
<?php

 
 //название селекта
   
   if (isset($_REQUEST['sub1'])) {
       
// $marka=$_REQUEST['marka'];
// $model=$_REQUEST['mod'];
 //$gorod=$_REQUEST['gor'];

 $cenaot=$_REQUEST['cenaot'];
// $cenado=$_REQUEST['cenado'];
 //$godot=$_REQUEST['godot'];
 //$goddo=$_REQUEST['goddo'];
 //$probegot=$_REQUEST['probegot'];
// $probegdo=$_REQUEST['probegdo'];
// $kuzov=$_REQUEST['kuzov'];
 $korobka=$_REQUEST['korobka'];



 $sql = "SELECT *
FROM
 vivod
where '$cenaot'< cena < '$cenado',
where '$godot'<god < '$goddo',
where '$cenaot'< cena < '$cenado',
where '$probegot' < probeg < '$probegdo',


 

  ";

 echo '<br>' . 'sql = ' . $sql;
 $query = mysql_query($sql);
 echo '<br>' . $query;
echo '<table class="bordered">';
 

 while ($r = mysql_fetch_assoc($query)) {
 '<tr>
       <td>Фото</td>
      <td>' . $r['cena'] .'<strong>год1</strong>  '. $r['god'] .' пробег1 '.$r['probeg'] .'двигатель'.$r['dvigatel'] .' кузов  '. $r['kuzov'] .' коробка  '. $r['korobka'] . '</td>
      
     
      
      
      <td>' . $r['v_dvig'] . '</td>
      <td>' . $r['about'] . '</td>
      <td>' . $r['vin'] . '</td>
      <td>' . $r['model'] . '</td>
      <td>' . $r['gorod'] . '</td>
      <td>' . $r['marka'] . '</td></tr>';
 }
}
?>
</table>
//как бы примерно я знаю возможную причину ошибки,в базе у столбцов int тип ,а когда я получаю переменную она varchar как мне это исправить?
хотя может тут и еще есть ошибки
linkoln_7 вне форума Ответить с цитированием
Старый 19.05.2013, 17:43   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

SQL-запрос синтаксически неправильный.
Закомментированы почти все переменные, которые должны в запросе использоваться.
Потому и не работает ничего.
Andkorol вне форума Ответить с цитированием
Старый 19.05.2013, 17:52   #3
linkoln_7
Форумчанин
 
Регистрация: 04.03.2013
Сообщений: 164
По умолчанию

Код:
if (isset($_REQUEST['sub1'])) 
       {
       
 $marka=$_REQUEST['marka'];
$model=$_REQUEST['mod'];
$gorod=$_REQUEST['gor'];

 $cenaot=$_REQUEST['cenaot'];
 $cenado=$_REQUEST['cenado'];
$godot=$_REQUEST['godot'];
 $goddo=$_REQUEST['goddo'];
 $probegot=$_REQUEST['probegot'];
$probegdo=$_REQUEST['probegdo'];
// $kuzov=$_REQUEST['kuzov'];
 $korobka=$_REQUEST['korobka'];



 $sql = "SELECT *
FROM
 vivod
  where '$godot'<god < '$goddo','$cenaot'< cena < '$cenado',$probegot' < probeg < '$probegdo',korobka='$korobka',mod='$model',gor='$gorod',marka='$marka'



 

  ";

 echo '<br>' . 'sql = ' . $sql;
 $query = mysql_query($sql);
 echo '<br>' . $query;
echo '<table class="bordered">';
 

 while ($r = mysql_fetch_assoc($query)) {
 '<tr>
       <td>Фото</td>
      <td>' . $r['cena'] .'<strong>год1</strong>  '. $r['god'] .' пробег1 '.$r['probeg'] .'двигатель'.$r['dvigatel'] .' кузов  '. $r['kuzov'] .' коробка  '. $r['korobka'] . '</td>
      
     
      
      
      <td>' . $r['v_dvig'] . '</td>
      <td>' . $r['about'] . '</td>
      <td>' . $r['vin'] . '</td>
      <td>' . $r['model'] . '</td>
      <td>' . $r['gorod'] . '</td>
      <td>' . $r['marka'] . '</td></tr>';
 }
}
?>
</table>
не затруднил ли вас подсказать снова
linkoln_7 вне форума Ответить с цитированием
Старый 19.05.2013, 18:13   #4
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,158
По умолчанию

Условия надо не через запятую перечислять, а связывать логически and, or итд
ADSoft вне форума Ответить с цитированием
Старый 19.05.2013, 18:20   #5
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Не затруднит – потому дам самую важную подсказку: потратьте вечер-два на изучение основ SQL.
Без базовых знаний SQL нормально использовать БД не получится.

Конкретно по этому запросу:
– отдельные условия в WHERE не разделяются запятыми, а группируются логическими операторами (AND|OR)
– сами условия, простейшем случае, имеют примерно такой формат:
`поле_таблицы` оператор(=, !=, <, >, <>, <=, >=) 'значение'

Например:
`god` > '$godot' AND `god` < '$goddo' AND `korobka` = '$korobka' AND ...

Последний раз редактировалось Andkorol; 19.05.2013 в 18:22.
Andkorol вне форума Ответить с цитированием
Старый 19.05.2013, 18:21   #6
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Код:
не затруднил ли вас подсказать снова
а вас почему затрудняет в справку заглянуть?
eval вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск в БД sting1920 БД в Delphi 1 15.03.2010 00:22
Поиск-? Evgenii БД в Delphi 8 31.07.2009 16:27
Поиск Яр|/||< (^_^) Общие вопросы Delphi 9 24.06.2009 09:37
поиск Азамат Microsoft Office Excel 7 18.06.2008 13:44
Поиск Andr Microsoft Office Excel 2 18.07.2007 11:49