Спустя 11 минут, 44 секунды (10.10.2011 - 13:30) killer8080 написал(а):
что то типа такого
PS исправил, была ошибка
$checkboxes = array('check1', 'chek2', 'check3'); // массив имен чекбоксов
$checked = array();
$sql = "SELECT * FROM `table`";
foreach($checkboxes as $checkbox){
if(!empty($_POST[$checkbox]))
$checked[] = '`'.$checkbox.'`=1';
}
if($checked)
$sql.= ' WHERE '.implode(' && ', $checked);
PS исправил, была ошибка
Спустя 18 минут, 14 секунд (10.10.2011 - 13:48) Brajt написал(а):
пока не очень понимаю код, пойду тренироваться)
Спустя 3 минуты, 20 секунд (10.10.2011 - 13:51) killer8080 написал(а):
а чё там понимать. В цикле проверяем существование переменных в посте и динамических генерим sql запрос. В итоге получиться запрос вида
SELECT * FROM `table` WHERE `check1`=1 && `check2`=1 && `check3`=1
Спустя 21 минута, 11 секунд (10.10.2011 - 14:13) Brajt написал(а):
$result = mysql_query("SELECT `id`, `login`, `avatars` FROM `users` WHERE `pol`='$pol'");
if (isset($_POST['s_foto'])){
$result.= AND `avatars`>'0';
}
if (isset($_POST['v_online'])){
$result.= AND `online_now`>'0';
}
- как-нибудь так можно сделать? если да, то как написать правильно?
Спустя 18 минут, 36 секунд (10.10.2011 - 14:31) killer8080 написал(а):
можно так
$sql = "SELECT `id`, `login`, `avatars` FROM `users` WHERE `pol`='".$pol."'";
if (isset($_POST['s_foto'])){
$sql.= " AND `avatars`>'0'";
}
if (isset($_POST['v_online'])){
$sql.= " AND `online_now`>'0'";
}
$result = mysql_query($sql);
Спустя 31 минута, 36 секунд (10.10.2011 - 15:03) Brajt написал(а):
все понял, спасибо) работает)) сначала создается строка запроса и только потом делать сам запрос к базе... сижу в шоке. целый год делал запрос одновременно с построением строки запроса. сколько кода можно было писать проще... спасибо большое:)
Спустя 9 минут, 14 секунд (10.10.2011 - 15:12) killer8080 написал(а):
Цитата (Brajt @ 10.10.2011 - 15:03) |
все понял, спасибо) работает)) сначала создается строка запроса и только потом делать сам запрос к базе... |
А что можно иначе?

Спустя 9 минут, 37 секунд (10.10.2011 - 15:22) Brajt написал(а):
на видео уроках Попова научился работать с бд в виде
- часто из-за этого делал по несколько запросов, когда можно было обойтись одним...
теперь понимаю что правильно как ты написал, легче...
$result = mysql_query("SELECT `id`, `login`, `avatars` FROM `users` WHERE `pol`='$pol'");
- часто из-за этого делал по несколько запросов, когда можно было обойтись одним...
теперь понимаю что правильно как ты написал, легче...