За последние 24 часа нас посетили 18657 программистов и 1586 роботов. Сейчас ищут 2034 программиста ...

Хождение по кругу

Тема в разделе "Сделайте за меня", создана пользователем NewbiSavage, 13 дек 2015.

  1. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    ошибка говорит, что у тебя в таблице а нету поля name
     
  2. NewbiSavage

    NewbiSavage Новичок

    С нами с:
    13 дек 2015
    Сообщения:
    28
    Симпатии:
    0
    Поправил на
    И теперь при всевозможном раскладе, вводе мыла, выдает лишь "nothing found"
     
  3. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    Вообще как я понял. У тебя есть две таблицы: user and user_info
    Abyss, тебе с решением помог.

    мне не ясно, откуда эти таблицы а и b.
    Покажи их дамп, если они есть.
     
  4. NewbiSavage

    NewbiSavage Новичок

    С нами с:
    13 дек 2015
    Сообщения:
    28
    Симпатии:
    0
    Нет, эти две таблицы "user" и "user_info" это все что есть
     
  5. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    NewbiSavage, тогда откуда ты взял а и b
     
  6. NewbiSavage

    NewbiSavage Новичок

    С нами с:
    13 дек 2015
    Сообщения:
    28
    Симпатии:
    0
    Тогда я не понял совсем запрос Abyss , если он должен выглядеть так
    то результат все равно не дает
     
  7. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    NewbiSavage, так он выводил же результат.
     
  8. NewbiSavage

    NewbiSavage Новичок

    С нами с:
    13 дек 2015
    Сообщения:
    28
    Симпатии:
    0
    На этот?
    Теперь тут так же выдает "Nothing found", или на запрос Abyss? на который выдает "Unknown column 'a.name'"
     
  9. mahmuzar

    mahmuzar Старожил

    С нами с:
    6 апр 2012
    Сообщения:
    4.631
    Симпатии:
    425
    Адрес:
    РД, г. Махачкала.
    запрос:
    Код (PHP):
    1. SELECT id, name, sname, email from user left join user_info on user_id = id
    результат будет:
    Код (PHP):
    1. id | name | sname          | email
    2.  
    3. 1  | Иван | Петрович       | ivan@mail.ru
    4. 2  | Петр | Константинович | petr@mail.ru
     
  10. NewbiSavage

    NewbiSavage Новичок

    С нами с:
    13 дек 2015
    Сообщения:
    28
    Симпатии:
    0
    Так тоже пробовал в самом коде , все то же Nothing found, хотя в SQL выдает результат. Смотрю код..
    Но все же главный вопрос это как сделать так чтобы поиск был без перезагрузки страницы ( ведь сначала клиент отправляет запрос веб-серверу, а уже тот браузеру, как понимаю этим обусловлена она )
     
  11. p@R@dox 55RU

    p@R@dox 55RU Зэк
    [ БАН ]

    С нами с:
    21 май 2014
    Сообщения:
    1.358
    Симпатии:
    7
    Адрес:
    с планеты Ялмез
    это называется - AJAX (;
     
  12. NewbiSavage

    NewbiSavage Новичок

    С нами с:
    13 дек 2015
    Сообщения:
    28
    Симпатии:
    0
    Короче все работает, НО при поиске юзеров выдает "():" ( Когда вводишь рандом то дает No result как надо)

    Подскажите почему так?

    Исправленный PHP код :

    Код (PHP):
    1. <?php 
    2. header("Content-type: text/html; charset=windows-1251");
    3. $search = $_POST['search'];
    4. $search = addslashes($search);
    5. $search = htmlspecialchars($search);
    6. $search = stripslashes($search);
    7.    if($search == ''){
    8.       exit("type your message");
    9.    }
    10. $db = mysql_connect("localhost","root","");
    11. mysql_select_db("libr",$db);
    12. mysql_query("SET NAMES cp1251");
    13.                 
    14. $query = mysql_query("SELECT id, name, sname, email from user left join user_info on user_id = id where email LIKE '%".$search."%'",$db);
    15. echo mysql_errno($db) . ": " . mysql_error($db) . "\n";
    16. if(mysql_num_rows($query) > 0){
    17.    $sql = mysql_fetch_array($query);
    18.    do{
    19.      echo "<div>".$sql['text']."</div>";
    20.    }while($sql = mysql_fetch_array($query));
    21. }else{
    22.    echo "No results";
    23. } 
    Javascript + Html :

    Код (PHP):
    1. <html>
    2.     <head>
    3.         <meta http-equiv="Content-Type"; "charset=utf-8">
    4.         <script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
    5.         <script type="text/javascript">
    6. $(function(){
    7.   $("#search").keyup(function(){
    8.      var search = $("#search").val();
    9.      $.ajax({
    10.  type: "POST",
    11.  
    12.   url: "search.php",
    13.  
    14.   data: {"search": search},
    15.        cache: false,                                
    16.        success: function(response){
    17.           $("#resSearch").html(response);
    18.        }
    19.      });
    20.      return false;
    21.    });
    22. });
    23. </script>
    24.  
    25.         </script>
    26.     </head>
    27.     <body>
    28.  <form action="search.php" method="post" name="form" onsubmit="return false;">
    29. <input type='text' name='search' value='' id="search">
    30. <input type='submit' value='поиск' />
    31. </form>
    32. <div id="resSearch">Начните вводить запрос</div>
    33. </body>
    34. </html>
     
  13. Abyss

    Abyss Старожил

    С нами с:
    12 дек 2015
    Сообщения:
    1.298
    Симпатии:
    218
    Адрес:
    Default city
    Код (PHP):
    1. header("Content-type: text/html; charset=windows-1251");
    2. ...
    3. do{}while();
    4.  
    Почему ? Зачем ?

    Код (PHP):
    1. if(mysql_num_rows($query) > 0){
    2.    while($sql = mysql_fetch_array($query)){
    3.      echo "<div>".$sql['text']."</div>";
    4.    }
    5. }else{
    6.    echo "No results";
    7. }
    8.  
    И ты смотри какие поля выгружаешь в запросе
    Код (PHP):
    1. mysql_query("SELECT id, name, sname, email from user left join user_info on user_id = id where email LIKE '%".$search."%'",$db);
    2.  
    Среди них есть 'text' ?
     
  14. NewbiSavage

    NewbiSavage Новичок

    С нами с:
    13 дек 2015
    Сообщения:
    28
    Симпатии:
    0
    Ессс, все работает, Abyss второй раз помог, спасибо!

    Хотя на последок, как сделать так чтобы при неправильном вводе был красный цвет, а при верном зеленый
     
  15. tuorist

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

    С нами с:
    5 фев 2013
    Сообщения:
    113
    Симпатии:
    1
    Тегом span можно.
    Код (PHP):
    1. echo   "<div><span style="color: green">" .$sql[email].  " "  .$sql[name]. " " . $sql[sname] ." " .$sql[id].  "</span></div>"  
    2.    }
    3. }else{
    4.    echo "<span style="color: red">нет такого N в базе</span>"; 
     
  16. NewbiSavage

    NewbiSavage Новичок

    С нами с:
    13 дек 2015
    Сообщения:
    28
    Симпатии:
    0
    Пробовал, с первым никак не работает.
     
  17. tuorist

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

    С нами с:
    5 фев 2013
    Сообщения:
    113
    Симпатии:
    1
    Так попробуй...
    Код (PHP):
    1. echo   "<div><p><span style="color: green">" .$sql[email].  " "  .$sql[name]. " " . $sql[sname] ." " .$sql[id].  "</span></p></div>" 
     
  18. NewbiSavage

    NewbiSavage Новичок

    С нами с:
    13 дек 2015
    Сообщения:
    28
    Симпатии:
    0
    Да! Насчет пользователя разобрался, всем спасибо! Можно закрывать тему