За последние 24 часа нас посетили 68612 программистов и 10349 роботов. Сейчас ищут 2511 программистов ...

нужно из базы сделать выборку по датам из формы

Тема в разделе "PHP для новичков", создана пользователем red_r2005, 18 фев 2016.

  1. red_r2005

    red_r2005 Новичок

    С нами с:
    18 фев 2016
    Сообщения:
    1
    Симпатии:
    0
    Всем привет. Начинаю познавать PHP и столкнулся с проблемой. Помогите разобраться.
    Есть некая база MySql, в которую я записываю данные посредством PHP. Все проходит удачно. Теперь мне нужно из этой базы сделать выборку по датам из формы. Код формы для ввода параметров:

    Код (PHP):
    1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    2. <html>
    3. <head>
    4. <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
    5. <link rel="stylesheet" type="text/css" href="style.css">
    6. <title>Вывод данных</title>
    7. </head>
    8.  
    9. <body>
    10. <fieldset>
    11. <form method="post" action="result.php">
    12. <label for="reg_date_min">С:</label><br/>
    13. <input type="date" name="reg_date_min" size="30"><br/>
    14. <label for="reg_date_max">По:</label><br/>
    15. <input type="date" name="reg_date_max" size="30"><br/>
    16. <label for="PhoneNumper">Номер телефона:</label><br/>
    17. <input type="text" name="PhoneNumper" size="30"><br/>
    18. <input id="submit" type="submit" name="search" value="Найти и вывести"><br/>
    19. </form>
    20. </fieldset>
    21. <fieldset>
    22. <form method="post" action="result.php">
    23. <input id="submit" type="submit" name="all" value="Вывести всех пользователей"><br/>
    24. </form>
    25. </fieldset>
    26. [url="info_form.html"]Добавить пользователя[/url]
    27. </body>
    28. </html>
    29.  
    30. Ну и собственно скрипт, в котором запрос и выборка:
    31.  
    32. <?php
    33. require_once "A:\home\local.lc\www\db.php";
    34. //$result=mysql_query("SELECT * FROM `users`");
    35. //$row=mysql_fetch_array($result);
    36. if($_POST['all'])
    37. {
    38.     $result=mysql_query("SELECT * FROM `users`");
    39.     do
    40.     {
    41.         $id = $row['id'];
    42.         $PhoneNumper = $row['PhoneNumper'];
    43.         $password = $row['password'];
    44.         $reg_date = $row['reg_date'];
    45.         echo "$id ) $PhoneNumper | $password | $reg_date <br/><hr/>";
    46.     }
    47.  
    48. while($row=mysql_fetch_array($result));
    49. }
    50. if($_POST['search'])
    51. {
    52.     $datemin = $_POST['reg_date_min']; // входящие данные "от" 
    53.     $datemax = $_POST['reg_date_max']; // входящие данные "до" 
    54.     $datemin_time = explode(".",$datemin); // разбивка значения на (.) 
    55.     $postdata_min = mktime(0,0,0,$datemin_time[1],$datemin_time[0],$datemin_time[2]); // преобразуем в unix 
    56.     $datemax_time = explode(".",$datemax); // разбивка значения на (.) 
    57.     $postdata_max = mktime(0,0,0,$datemax_time[1],$datemax_time[0],$datemax_time[2]); // преобразуем в unix 
    58.     function unix_time_convert ($timestamp) 
    59.         { 
    60.             $date = date ("d.m.Y" , $timestamp); 
    61.             return $date;
    62.         } 
    63.     $query = mysql_query("SELECT * FROM users WHERE (data > ".$postdata_min." AND data < ".$postdata_max.") 
    64.             ORDER BY data"); 
    65.     $result = mysql_query($query); 
    66.     do
    67.     { 
    68.     echo ''; 
    69.     $time = $row['data']; 
    70.     $date = unix_time_convert($time); 
    71.     echo ''.$date.''; 
    72.     echo' г.; '.$row['summa'].'; <br>'; 
    73.     $id = $row['id'];
    74.     $PhoneNumper = $row['PhoneNumper'];
    75.     $password = $row['password'];
    76.     $reg_date = $row['reg_date'];
    77.     echo "$id ) $PhoneNumper | $password | $reg_date <br/><hr/>";
    78.     } 
    79. while($row = mysql_fetch_array($result));
    80. }
    81. ?>
    Выдает ошибку - "mysql_fetch_array() expects parameter 1 to be resource, boolean given in A:\home\test1.ru\www\result.php on line 48"

    оформляй свои сообщения! для кода есть ббкод [code]. выделение синтаксиса: [code=php].
    второй раз подтирать за тобой не буду.
      — модераторъ
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
  3. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.129
    Симпатии:
    1.225
    Адрес:
    там-сям
    do {} while ((( срань