За последние 24 часа нас посетили 55725 программистов и 1793 робота. Сейчас ищут 824 программиста ...

Не понимаю почему не работает?

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

  1. nurbek

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

    С нами с:
    11 июл 2008
    Сообщения:
    76
    Симпатии:
    0
    Адрес:
    Bishkek, KGZ
    Работа с файлами

    Надо считать данные с файла, с этим проблем нету...
    Считав данные с файла их надо использовать для запроса MySQL, но как только записав в переменную,
    в запросе это вообще не работает...
    Пример:

    PHP:
    1.  
    2. <?php
    3.  
    4.     // считываем в переменную $name из файла
    5.     $data = file($filename);
    6.     //теперь в $data каждый элемент, это строка из файла(так в мануале читал :) )
    7.    
    8.     // берем первую строку и работаем с ней
    9.     $name = trim($data[0]);
    10.    
    11.     // но здесь ничего не работает
    12.     $result = $db->query("SELECT id FROM users WHERE name '$name'");
    13.    
    14.     // странность в том что к примеру если $name = "ссылка" то при
    15.     // echo strlen($name);
    16.     // мне он выводит 8 или 9....
    17.    
    18. ?>
    19.  
    Вопрос: почему так происходит? может я что то не то делаю?
    Считываю я из txt-файла.
    Помогите пожалуйста.[/php]
     
  2. Dagdamor

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

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    nurbek
    WHERE name '$name' => WHERE name='$name' ?
     
  3. nurbek

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

    С нами с:
    11 июл 2008
    Сообщения:
    76
    Симпатии:
    0
    Адрес:
    Bishkek, KGZ
    да ошибся.... спешил...
    PHP:
    1.  
    2. <?php
    3.    
    4.      // но здесь ничего не работает
    5.      $result = $db->query("SELECT id FROM users WHERE name = '$name'");
    6.      
    7.      // странность в том что к примеру если $name = "ссылка" то при
    8.      // echo strlen($name);
    9.      // мне он выводит 8 или 9....
    10.      
    11.  ?>
    12.  
    Cпасибо исправил!
     
  4. nurbek

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

    С нами с:
    11 июл 2008
    Сообщения:
    76
    Симпатии:
    0
    Адрес:
    Bishkek, KGZ
    Что никто на знает, это?
     
  5. Mr.M.I.T.

    Mr.M.I.T. Старожил

    С нами с:
    28 янв 2008
    Сообщения:
    4.586
    Симпатии:
    1
    Адрес:
    у тебя канфетка?
    PHP:
    1. <?php
    2.  
    3.      // считываем в переменную $name из файла
    4.      $data = file($filename);
    5.      //теперь в $data каждый элемент, это строка из файла(так в мануале читал  )
    6.      
    7.      // берем первую строку и работаем с ней
    8.      $name = trim($data[0]);
    9.      print "Name:$name<br><br>Data:";
    10.      print_r($data);
    11.     print "<br><br>Query:SELECT id FROM users WHERE name = '$name'";
    12.     die();
    13.  
    14.  ?>
     
  6. nurbek

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

    С нами с:
    11 июл 2008
    Сообщения:
    76
    Симпатии:
    0
    Адрес:
    Bishkek, KGZ
    это не рабоает... я пробовал...
     
  7. nurbek

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

    С нами с:
    11 июл 2008
    Сообщения:
    76
    Симпатии:
    0
    Адрес:
    Bishkek, KGZ
    Что никто не сталкивался с этим ?
     
  8. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Strlen может выдавать неверное количество символов, если кодировка текста отличается от локали.
     
  9. nurbek

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

    С нами с:
    11 июл 2008
    Сообщения:
    76
    Симпатии:
    0
    Адрес:
    Bishkek, KGZ
    так что мне делать....
     
  10. Victor Bazinov

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

    С нами с:
    30 окт 2007
    Сообщения:
    69
    Симпатии:
    0
  11. [vs]

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

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    nurbek
    А ты уверен что у тебя есть класс query? :lol:
     
  12. Sergey89

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

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    PHP:
    1. $db->query("SET NAMES 'cp1251'");
    или какая там у тебя кодировка.