PHP: разбираться в умном коде? - PullRequest
0 голосов
/ 27 февраля 2010

Итак, у меня есть этот видеосекция, но я хочу сделать опцию «сортировки» доступной для пользователей.

Параметры сортировки: ВСЕ (без WHERE в выражении sql), Видеоклипы (WHERE SCtry = 0), SC try (WHERE SCtry = 1)

Теперь я знаю, как это сделать "по-моему". Я бы разместил ссылки на index.php: ?sort=video и ?sort=SCtry

Тогда сделайте 2, если сортируете видео, если сортируете sctry а затем скопируйте весь index.php прямо сейчас (который отображает все) в 2 if, а затем просто отредактируйте оператор SQL SELECT, где WHERE SCtry = '0' для? сортировать = SCtry.

Теперь я ЗНАЮ, как сортировать, но я хочу кодировать его более умным способом (если он существует, конечно), потому что это кажется слишком большим, чтобы дублировать весь сайт, а затем просто изменить только 1 строку ...

Пример того, что я собираюсь продублировать с помощью index.php:

<?php 
$hent_meetup = mysql_query("SELECT * FROM member_film ORDER BY id DESC LIMIT 0,200") or die(mysql_error()); 
while($vis = mysql_Fetch_array($hent_meetup)) { 
?> 

1 Ответ

2 голосов
/ 27 февраля 2010

не видя пример кода, я могу вам сказать, что это пример того, что я бы сделал.

<?
//all of the code before the SQL statement here...
$sql= ' SELECT `column` from `tablename`'; //or any other SQL that is appropriate before the conditional
if(isset($_GET['sort'])){
    if($_GET['sort'] == 'video'){
        $sql .= ' WHERE `SCtry` = 0';
    }elseif($_GET['sort'] == 'SCtry'){
        $sql .= ' WHERE `SCtry` = 1';
    }
}
$sql .= ' ORDER BY `whatever`'; //or any other SQL that is appropriate after the conditional
//rest of code... no need for duplication
?>

отредактировано в соответствии с запросом OP ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...