За последние 24 часа нас посетили 18850 программистов и 1708 роботов. Сейчас ищут 828 программистов ...

ХМТЛ-форма и БД

Тема в разделе "PHP для новичков", создана пользователем Dilik, 26 июн 2008.

  1. Dilik

    Dilik Активный пользователь

    С нами с:
    26 июн 2008
    Сообщения:
    3
    Симпатии:
    0
    Адрес:
    Москва
    Добрый день!
    Есть такой вопрос:
    Существует некое таблица на сайте которое выдается из база данных.. Нужно чтоб при селекте отфильтровать эту таблицу?
    Но не знаю как (( .. Кто может подсказать? Буду признателен rolleyes.gif

    Код (Text):
    1.  
    2. <form name="form1" method="post" action="statistics_all.php">
    3.   <label><strong>Акция:</strong>
    4.   <select name="aksia" id="aksia">
    5.     <option selected value="Акция 1">Акция 1</option>
    6.     <option value="Акция 2">Акция 2</option>
    7.   </select>
    8.   </label>
    9. </form><br>
    10. <div align="center">
    11. <?
    12. echo "<br> <br><a href=\"statistics.php\">Отчет по дням</a>";
    13. $pok=array();
    14. $sql_sel = mysql_query("SELECT code, object FROM ident ORDER BY code ASC", $connect);
    15.     $i=0;
    16.     $j=0;
    17.     while ($row = mysql_fetch_array($sql_sel, MYSQL_NUM)) {
    18.         $pok[$i][0]=$row[0];
    19.         $pok[$i][1]=$row[1];
    20.         $i=$i+1;
    21.     }
    22. $t=count($pok);
    23. echo "<table width='90%' border='0' cellpadding='2' cellspacing='2'>\n";
    24. echo "<tr><th>Код<br>магазина</th><th>Магазин</th><th>Количество<br>выданных</th> <th>Количество<br>реализованных</th></tr>\n";
    25.     $i=0;
    26.     $j=0;
    27.     $k=0;
    28.     $l=0;
    29.     $cnumall=0;
    30.     $crealall=0;
    31. for ($i = 0; $i < $t; $i++) {
    32.     $find=$pok[$i][1];
    33.     $cpok=$pok[$i][0];
    34.     $cnum=0;
    35.     $creal=0;
    36. $sql_sel = mysql_query("SELECT shop, coupnum, coupreal FROM voucher WHERE shop='$find'", $connect);
    37.     while ($row = mysql_fetch_array($sql_sel, MYSQL_NUM)) {
    38.         $cnum=$cnum+intval($row[1]);
    39.         $creal=$creal+intval($row[2]);
    40.     }
    41.         $cnumall=$cnumall+$cnum;
    42.         $crealall=$crealall+$creal;
    43.         echo ("<tr bgcolor='#ffffff'>\n");
    44.         echo ("<td >$cpok</td>\n");
    45.         echo ("<td id=\"lft\">$find</td>\n");
    46.         echo ("<td >$cnum</td>\n");
    47.         echo ("<td >$creal</td>\n");
    48.         echo "</tr>";
    49. }
    50.         echo ("<tr bgcolor='#ffffff'>\n");
    51.         echo ("<td ></td>\n");
    52.         echo ("<td id=\"lft\" style=\"text-align:right\"><b>Итого:</b></td>\n");
    53.         echo ("<td ><b>$cnumall</b></td>\n");
    54.         echo ("<td ><b>$crealall</b></td>\n");
    55.         echo "</tr>";
    56.  
    57.     echo ("<tr bgcolor=\"#6699CC\"><td colspan=\"5\"></td></tr></table>\n\n");
    58. ?>
     
  2. shurastik

    shurastik Активный пользователь

    С нами с:
    22 фев 2008
    Сообщения:
    285
    Симпатии:
    0
    Адрес:
    Латвия
    я по-ходу русский забыл. ничего не понял.
     
  3. Dilik

    Dilik Активный пользователь

    С нами с:
    26 июн 2008
    Сообщения:
    3
    Симпатии:
    0
    Адрес:
    Москва
    Блин даже не знаю как объяснить!
    Значит так... Есть HTML Форма ...
    Код (Text):
    1. <select name="aksia" id="aksia">
    2.     <option selected value="Акция 1">Акция 1</option>
    3.     <option value="Акция 2">Акция 2</option>
    4.   </select>
    там 2 опции...
    И есть таблица которое показывает список "АКЦИИ"
    Как мне написать код чтоб при выборе "Акция 1" - он отфильтровал из таблица тока часть списка "Акция 1"??
    а при выборе "Акция 2" - показал "Акция-2",,,???

    Так понятно?
     
  4. shurastik

    shurastik Активный пользователь

    С нами с:
    22 фев 2008
    Сообщения:
    285
    Симпатии:
    0
    Адрес:
    Латвия
    уже лучше. :)

    смотри в сторону WHERE
     
  5. Dilik

    Dilik Активный пользователь

    С нами с:
    26 июн 2008
    Сообщения:
    3
    Симпатии:
    0
    Адрес:
    Москва
    а можно по точнее пожалуйста?
    Код (Text):
    1. WHERE shop='$find'
    что нужно изменить?
     
  6. shurastik

    shurastik Активный пользователь

    С нами с:
    22 фев 2008
    Сообщения:
    285
    Симпатии:
    0
    Адрес:
    Латвия
    ну во-первых узнать имя поля с акцией в БД, а там дописать

    [sql]AND `имя_поля` = '".mysql_escape_string($_POST['aksia'])."'[/sql]

    ну а для начала, всё-таки почитать http://www.phpfaq.ru/na_tanke
     
  7. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Нет, не нужно. Аднозначно.