За последние 24 часа нас посетили 21714 программистов и 1689 роботов. Сейчас ищут 1974 программиста ...

Поиск и выдача в mysql

Тема в разделе "PHP и базы данных", создана пользователем ilyxaaa, 12 июн 2018.

  1. ilyxaaa

    ilyxaaa Новичок

    С нами с:
    12 июн 2018
    Сообщения:
    6
    Симпатии:
    0
    Всем привет.
    Ребят подскажите пожалуйста как переделать данный код :
    PHP:
    1. <?php
    2.  
    3. $response = array();
    4.  
    5. require 'db_connect.php';
    6.  
    7. $db = new DB_CONNECT();
    8.  
    9. if (isset($_GET["user"])) {
    10.     $user = $_GET['user'];
    11.     $result = mysql_query ("SELECT * from users WHERE (user= '".$user."') ");
    12.  
    13.     if (!empty($result)) {
    14.         if (mysql_num_rows($result) > 0) {
    15.             $response[""] = 1;
    16.             echo json_encode($response);
    17.         } else {
    18.             $response[""] = 0;
    19.             echo json_encode($response);
    20.         }
    21.     } else {
    22.         $response[""] = 0;
    23.         echo json_encode($response);
    24.     }
    25. } else {
    26.     $response[""] = 0;
    27.     echo json_encode($response);
    28. }
    29. ?>
    Что бы выдавало все найденные строки
    спасибо
     
  2. username

    username Новичок

    С нами с:
    6 июл 2017
    Сообщения:
    223
    Симпатии:
    17
  3. ilyxaaa

    ilyxaaa Новичок

    С нами с:
    12 июн 2018
    Сообщения:
    6
    Симпатии:
    0
    @username
    Я правильно понимаю что нужно использовать эту функцию
    PHP:
    1. function ma($sql) {
    2.     $res = DBi::query($sql);
    3.     $rows = array();
    4.     if (!is_bool($res) AND $res->num_rows>0) {
    5.         while ($row = $res->fetch_assoc()) $rows[] = $row;
    6.     }
    7.     if (!is_bool($res)) $res->free();
    8.     return $rows;
    9. }
     
  4. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    в цикле прокрути
    если не знаешь, что такое циклы - лучше прочитай, т.к. это базовые понятия и без них наши советы тебе не помогут.
     
  5. username

    username Новичок

    С нами с:
    6 июл 2017
    Сообщения:
    223
    Симпатии:
    17
    да
    PHP:
    1. $result = ma("SELECT * from users ".sqlwhere(array("user"=>$_GET['user'])));
     
  6. ilyxaaa

    ilyxaaa Новичок

    С нами с:
    12 июн 2018
    Сообщения:
    6
    Симпатии:
    0
    @igordata что такое циклы знаю. просто с пхп второй день работаю
     
  7. ilyxaaa

    ilyxaaa Новичок

    С нами с:
    12 июн 2018
    Сообщения:
    6
    Симпатии:
    0
    @username
    Спасибо. попробую
     
  8. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.840
    Симпатии:
    652
    @username, ТС прежде всего вывод просил, хотя если ваша либа в том числе защищает и от инъекций, то не помешает.

    @ilyxaaa, см. шаблон списка статей тут. Плюс защиту от SQL-инъекций нужно будет сделать.

    P.S. Условие в запросе к чему? Если нужно получить все записи таблицы, то оно не нужно.
     
  9. ilyxaaa

    ilyxaaa Новичок

    С нами с:
    12 июн 2018
    Сообщения:
    6
    Симпатии:
    0
    @miketomlin
    С защитой буду заниматься позже. сейчас хочу сделать функционал полностью.
    условие по которому находит записи и выводит их например
    олег;1;2;4;
    иван;2;5;3;
    саетлана;4;2;5;
    олег;4;2;6;
    при запросе Олег нужно получить
    олег;1;2,4;
    Олег;4;2;6;
    --- Добавлено ---
    работаю с пхп через делфи
     
  10. miketomlin

    miketomlin Старожил

    С нами с:
    9 авг 2016
    Сообщения:
    3.840
    Симпатии:
    652
    Ну если у поля с именами установлен регистронезависимый поиск, должно работать. Только цикл добавьте. У более современных расширений поддерживается метод вроде fetch_all, т.е. и цикл не нужен.
     
  11. ilyxaaa

    ilyxaaa Новичок

    С нами с:
    12 июн 2018
    Сообщения:
    6
    Симпатии:
    0
    @miketomlin
    регистр правится в программе на делфи. здесь просто т9 поправило.
    Спасибо за направление буду пробовать.