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

HTML+CSS+JavaScript

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

 

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

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

тема: checkbox и запросы
 
 автор: mnbvcxz11   (12.06.2011 в 09:37)   письмо автору
 
 

Есть форма
<form action="view_sea.php" method="post" name="fors">
<input type="checkbox" name="min" <?php echo '$checked;' ?> id="checkbox"/>
</form>

view_sea.php
if (isset($_GET['min'])){
$query = mysql_query("SELECT COUNT(*) FROM data WHERE secret=0 AND cat='$cat' AND `min` '");
}
else
{
$query = mysql_query("SELECT COUNT(*) FROM data WHERE secret=0 AND c='$ca' AND `min` Like 'Z%'");
Выбирает только первый запрос а второй не выбирает

  Ответить  
 
 автор: cheops   (12.06.2011 в 12:03)   письмо автору
 
   для: mnbvcxz11   (12.06.2011 в 09:37)
 

Выведите дамп массива $_GET - там никаких аномалий нет?
<?php
  
...
  echo 
"<pre>";
  
print_r($_GET);
  echo 
"</pre>";
  ...
?>
Флажок действительно сброшен?

  Ответить  
 
 автор: mnbvcxz11   (12.06.2011 в 14:40)   письмо автору
 
   для: cheops   (12.06.2011 в 12:03)
 

Дело в том что есть постраничная навигация
Послевыбора checkbox
на страницу выводит только первый запрос
Есть подсчет найденных записей первого запроса а второго нет?

<?php ---------------------------------куда вставлять
...
echo "<pre>";
print_r($_GET);
echo "</pre>";
...
?>-------------------------------------------


$result77 = mysql_query("SELECT str FROM options", $db);
$myrow77 = mysql_fetch_array($result77);
$num = $myrow77["str"];
@$page = $_GET['page'];
$result00 = mysql_query("SELECT COUNT(*) FROM data WHERE ca='$ca' AND `text` like '%$search%'");
$temp = mysql_fetch_array($result00);
$posts = $temp[0];
$total = (($posts - 1) / $num) + 1;
$total = intval($total);
$page = intval($page);
if(empty($page) or $page < 0) $page = 1;
if($page > $total) $page = $total;
$start = $page * $num - $num;

if (isset($_GET['min'])){
$query = mysql_query("SELECT id,text FROM data WHERE `text` like '%$search%' ca='$ca' ORDER BY id desc LIMIT $start, $num ",$db);

}
else
{
$query = mysql_query("SELECT id,text FROM data WHERE `text` like 'h%' ca='$ca' ORDER BY id desc LIMIT $start, $num ",$db);

printf (); Вывод запроса------------------------------------------------------------------------

}
while ($myrow = mysql_fetch_array($query));
// Проверяем нужны ли стрелки назад
if ($page != 1) $pervpage = '<a href=vie.php?ca='.$ca.'&page=1>Первая</a> | <a href=viet.php?ca='.$ca.'&page='. ($page - 1) .'>Предыдущая</a> | ';
и тд

  Ответить  
 
 автор: cheops   (12.06.2011 в 15:08)   письмо автору
 
   для: mnbvcxz11   (12.06.2011 в 14:40)
 

>куда вставлять
Не имеет значения, можно в начало вставить.

  Ответить  
 
 автор: mnbvcxz11   (12.06.2011 в 15:21)   письмо автору
 
   для: cheops   (12.06.2011 в 15:08)
 

Каков смысл ?
Вывод printf ()
Поправте код ?

  Ответить  
 
 автор: cheops   (12.06.2011 в 15:32)   письмо автору
 
   для: mnbvcxz11   (12.06.2011 в 15:21)
 

Если не сложно опишите ситуацию более подробно. Вы выбираете чекбокс - у вас срабатывает первый запрос. Вы сбрасываете чекбокс - что происходит? Срабатывает или не срабатывает запроса. А главное что должно происходить когда чекбокс отмечен, а когда нет?

  Ответить  
 
 автор: mnbvcxz11   (12.06.2011 в 16:02)   письмо автору
 
   для: cheops   (12.06.2011 в 15:32)
 

По вопросу
Если не сложно опишите ситуацию более подробно. Вы выбираете чекбокс - у вас срабатывает первый запрос. Вы сбрасываете чекбокс - что происходит? Срабатывает или не срабатывает запроса. А главное что должно происходить когда чекбокс отмечен, а когда нет?

Это все делается для поиска с выбором из бд

Отмечаю чекбокс нажимаю Submit
Находит записи по первому запросу

+Постраничная навигация по найденным запросам

При пустом чекбокс нажимаю Submit
Находит записи по второму запросу

+Постраничная навигация по найденным запросам

  Ответить  
 
 автор: cheops   (12.06.2011 в 16:19)   письмо автору
 
   для: mnbvcxz11   (12.06.2011 в 16:02)
 

Второй случай не работает? Или работает неправильно?

PS Проверьте еще корректность выполнения запроса, это нужно делать всегда, особенно в случае динамических запросов - PHP не знает об ошибках на стороне MySQL (их нужно запрашивать отдельно)
<?php
  
if(!$query) exit("Ошибка выполнения запроса - ".mysql_error());
?>

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования