ФорумРазработкаБазы данных → Выборочная сортировка данных из БД

Выборочная сортировка данных из БД

  • ghost

    Сообщения: 883 Репутация: N Группа: Джедаи

    Spritz 5 марта 2008 г. 7:17, спустя 33 минуты 58 секунд

    smv, может ты сам для разнообразия что-нить сделаешь?
    например сравнишь его с тем, который тебе писал тимур, найдёшь 3 отличия и посмотришь, что делают эти отличия, в мануале?
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 5 марта 2008 г. 7:42, спустя 24 минуты 13 секунд

    smv, у меня для тебя есть замечательная ссылка:
    http://www.phpfaq.ru/debug1
    прочитай пожалуйста
  • smv

    Сообщения: 236 Репутация: N Группа: Кто попало

    Spritz 5 марта 2008 г. 11:05, спустя 3 часа 23 минуты 19 секунд


    smv, может ты сам для разнообразия что-нить сделаешь?
    например сравнишь его с тем, который тебе писал тимур, найдёшь 3 отличия и посмотришь, что делают эти отличия, в мануале?


    Если людей просят о помощи, то она наверное нужна… А если не очеш помочь, то ДЛЯ РАЗНООБРАЗИЯ можно промолчать.

    А остальным за помощь всем спасибо.
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 5 марта 2008 г. 11:30, спустя 24 минуты 36 секунд

    smv, ты сильно не прав. Здесь всегда хотят помочь и практически всегда помогают. Но прежде всего, человек должен сам хотеть себе помочь.
  • smv

    Сообщения: 236 Репутация: N Группа: Кто попало

    Spritz 5 марта 2008 г. 11:34, спустя 4 минуты 41 секунду

    Да конечно я в этом уверен, но человек который очень сильно в этом всем не разбирается фраза "например сравнишь его с тем, который тебе писал тимур, найдёшь 3 отличия" не о чем не говорит. Может и не в тему это все вообще, да наверное оно так и есть, но если знаеш ччего бв не сказать, или впадлу?… Типа я сам научился и ты давай….
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 5 марта 2008 г. 11:42, спустя 7 минут 48 секунд


    но человек который очень сильно в этом всем не разбирается
    Ну дык разбирайся!!! Разберись как работает предложенный код. Благо он весьма небольшой. Чего непонятно - спроси. Но конкретно - что делает эта команда? Зачем это условие?
    Займись отладкой. Сначала отладь запрос. Убедись, что он работает. Потом отладь цикл. Вставь контрольные печати. и.т.д. и.т.п.
    А на вопрос: "У меня беда, спасите", просится ровно такой ответ, который тебе не понравился …
  • smv

    Сообщения: 236 Репутация: N Группа: Кто попало

    Spritz 5 марта 2008 г. 11:47, спустя 5 минут 24 секунды



    $prevDay = null; // день из предыдущей записи
    print '<table>';
    while ($row = mysql_fetch_assoc($queryResult)) {
       print '<tr><td>'
       if ($prevDay != $queryResult['day']) { // выводим день только один раз
           $prevDay = $queryResult['day'];
           print $queryResult['day'];
       }
       print "</td><td>{$row['name']}</td></tr>";
    }



    Timur, Скажи пожалуйста, что в твоем коде значит переменная $queryResult
  • AlexB

    Сообщения: 4306 Репутация: N Группа: в ухо

    Spritz 5 марта 2008 г. 11:57, спустя 9 минут 18 секунд

    А для ответа на такие вопросы, опять таки можно не ждать Тимура, а воспользоваться мануалом и посмотреть, что принимает на вход mysql_fetch_assoc и откуда это берется
    http://ru2.php.net/manual/ru/function.mysql-query.php
    http://ru2.php.net/manual/ru/function.mysql-fetch-assoc.php
  • smv

    Сообщения: 236 Репутация: N Группа: Кто попало

    Spritz 5 марта 2008 г. 12:10, спустя 13 минут 30 секунд

    Если я все правильно понял, то переменная $queryResult это результат запроса в БД. А переменная $row возвращает значения ассоциативного массива. Следовательно условие IF означает что если переменная $prevDay не равна предыдущему значению массива, то выводим следующие и так далее, но тогда не пойиу почему если пременная $prevDay обнудяется ($prevDay = null;) в IF условие не выполняется.
  • Timur

    Сообщения: 1068 Репутация: N Группа: Джедаи

    Spritz 5 марта 2008 г. 12:25, спустя 14 минут 45 секунд

    Если я все правильно понял, то переменная $queryResult это результат запроса в БД.

    именно.

    но тогда не пойиу почему если пременная $prevDay обнудяется

    переменная $prevDay не просто обнуляется, а объявляется перед использованием. Иначе при первом использовании её в условии IF возникнет ошибка E_NOTICE. Обнуляется она перед циклом, в цикле ей сразу присваивается значение (из первой записи).

    в IF условие не выполняется.

    должно выполняться

    зы: smv, не флейми. Тебе действительно пытаются помочь.
  • AlexKus

    Сообщения: 6 Репутация: N Группа: Кто попало

    Spritz 18 марта 2008 г. 1:46, спустя 12 дней 12 часов 20 минут

    Помогите пожалуста доделать поиск.

    CREATE TABLE kotgoods (
    id int unsigned not null,
    photo char(100) not null,
    ISBN char(13) not null primary key,
    name char(50) not null, price float(6,2),
    memo text not null);

    получилась такая табл
    id  photo ISBN …
    1   … … …
    1   … … …
    2   … …
    2   … …
    ..


    нужно сделать поиск по котегориям помогите кто-нибудь
    код search.php

    <form action="result.php" method=post>
    <font size="2">Выберите:</font><br />
    <select name="id">          
    <option value="1"> Новинки</option>
    <option value="2"> Корпусная</option>
    <option value="3"> Из стекла</option>        
    <option value="4"> Зеркала влагостойкие</option>
    <option value="5"> Зеркала в багете</option>
    <option value="6"> Дополнительно</option></select>
    <p>
    <font size="2">Выберите группу поиска:</font><br />
    <select name="searchtype">
    <option value="name"> По названию</option>
    <option value="ISBN"> По ISBN</option>
    <option value="price"> По цене</option></select>
    <p><font size="2">Введите информацию для  поиска:</font><br />
    <input name="searchterm" type="text" size="20">
    <br />
    <input type="submit" value="Найти"></p></form>  



    код result.php

     <?php
    $id=$_POST['id'];
    $searchtype=$_POST['searchtype'];
    $searchterm=$_POST['searchterm'];

    $searchterm= trim($searchterm);

    if (!$searchtype || !$searchterm )
    {
       echo 'Вы не ввели параметры поиска.  Пожалуйста, вернитесь на предыдущую страницу и повторите ввод.';
       exit;
    }

    if (!get_magic_quotes_gpc())
    {
      $searchtype = addslashes($searchtype);
      $searchterm = addslashes($searchterm);
      $id = addslashes($id);
    }

    if(!mysql_connect($_conf[mysql_host],$_conf[mysql_user],$_conf[mysql_passwd])){
    die('Не удалось установить соединение с MySQL!');
    }

    if(!mysql_select_db($_conf[mysql_dbname])){
    die('База данных не найдена!');
    }
    $result=mysql_query("select * from kotgoods where  id = ??  ".$searchtype." like '%".$searchterm."%' ");

    ?>

    не работает поиск помогите

Пожалуйста, авторизуйтесь, чтобы написать комментарий!