За последние 24 часа нас посетили 17574 программиста и 1622 робота. Сейчас ищут 1455 программистов ...

Проблема в выборке данных

Тема в разделе "PHP и базы данных", создана пользователем Inoi, 4 авг 2008.

  1. Inoi

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

    С нами с:
    4 авг 2008
    Сообщения:
    52
    Симпатии:
    0
    Адрес:
    Волгоград
    Здравствуйте, поиском не чего не нашел
    Есть строчка
    Код (Text):
    1.  
    2. $query = "SELECT `id` FROM `user` WHERE `email`="***@mail.ru" ";
    3. $id = mysql_query($query) or die(mysql_error());
    4. echo "$id";
    При выполнение пишет такую ошибку:
    т.е ошибка в строчке
    Код (Text):
    1. $query = "SELECT `id` FROM `user` WHERE `email`="***@mail.ru" ";
    Хотя сам запрос к БД(напрямую, использую консоль) работает правильно
    Код (Text):
    1. SELECT `id` FROM `user` WHERE `email`="***@mail.ru";
    В чем проблема?
    Заранее спасибо
     
    #1 Inoi, 4 авг 2008
    Последнее редактирование модератором: 12 июл 2017
  2. Sergey89

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

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
  3. Inoi

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

    С нами с:
    4 авг 2008
    Сообщения:
    52
    Симпатии:
    0
    Адрес:
    Волгоград
    Сделал вот так:
    Код (Text):
    1. $query = "SELECT `id` FROM `user` WHERE `email`= " . ***@mail.ru . " ";
    Всеравно не помогает и выдает ошибку:

     
    #3 Inoi, 4 авг 2008
    Последнее редактирование модератором: 12 июл 2017
  4. EvelRus

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

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
    Лучше так
    http://ru.php.net/manual/ru/language.types.string.php

    Твою налево... почему мыло как переменная?

    И используйте тег
    PHP:
    1. , пожалуйста
    2.  
    3. Да и последнии 6 символом лишние
    4.  
    5. [php] <?php $query = "SELECT `id` FROM `user` WHERE `email`= [email='***@mail.ru]'***@mail.ru[/email]'"; ?>
     
    #4 EvelRus, 4 авг 2008
    Последнее редактирование модератором: 12 июл 2017
  5. Inoi

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

    С нами с:
    4 авг 2008
    Сообщения:
    52
    Симпатии:
    0
    Адрес:
    Волгоград
    Спасибо, это более менее работает но заместо id пользователя выводит:
     
  6. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Nemo
    Ты думаешь, что он прочитал то, что по ссылке? Нет, он ждал готового варианта.
     
  7. Inoi

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

    С нами с:
    4 авг 2008
    Сообщения:
    52
    Симпатии:
    0
    Адрес:
    Волгоград
    Прочитал, смотрите пост выше
     
  8. EvelRus

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

    С нами с:
    16 ноя 2006
    Сообщения:
    2.168
    Симпатии:
    0
    Адрес:
    Москва
  9. Inoi

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

    С нами с:
    4 авг 2008
    Сообщения:
    52
    Симпатии:
    0
    Адрес:
    Волгоград
    Всем спасибо, разобрался)
     
  10. Inoi

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

    С нами с:
    4 авг 2008
    Сообщения:
    52
    Симпатии:
    0
    Адрес:
    Волгоград
    Есть еще вопрос

    Код (Text):
    1. $idwclient = "SELECT `id` FROM `user` WHERE `email`= '".$_SESSION['email']."'";
    2.  
    3. $id = mysql_query($idwclient);
    4.  
    5.     while ($row = mysql_fetch_array($id, MYSQL_BOTH)) {
    6.         printf ("Id: %s ", $row["id"]);
    7.     }
    Этот код выдает id пользователя, при попытки записать id в базу пишет в нужном столбце
    а надо чтобы тот id который выводит цикл...как быть?
     
  11. Cron

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

    С нами с:
    10 июл 2008
    Сообщения:
    289
    Симпатии:
    0
    Адрес:
    Украина, Сумы
    Inoi
    Приведи код, как ты пишешь в базу
     
  12. Inoi

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

    С нами с:
    4 авг 2008
    Сообщения:
    52
    Симпатии:
    0
    Адрес:
    Волгоград
    Часть первая:

    Код (Text):
    1. $idwclient = "SELECT `id` FROM `user` WHERE `email`= '".$_SESSION['email']."'";
    2.  
    3. $id = mysql_query($idwclient);
    4.  
    5.     while ($row = mysql_fetch_array($id, MYSQL_BOTH)) {
    6.         printf ("Id: %s ", $row["id"]);
    7.     }
    Часть вторая:
    Код (Text):
    1. $query = "INSERT INTO ads(name, city, telephone, email, nazvanie, text, id_client) VALUES ('$name','$city','$telephone','$email','$nazvanie','$text','$id');";
    2. $result = mysql_query ( $query );
    Я вот что подумал, может заместо $id(в запросе), вводить массив? жалко проверить щас не могу...сервер лежит




    Не получается...что надо вставить в код добавление строки в базу, чтобы добавлялся id полученый в первой части кода?
     
  13. Cron

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

    С нами с:
    10 июл 2008
    Сообщения:
    289
    Симпатии:
    0
    Адрес:
    Украина, Сумы
    в чем вопрос я все равно не понял. Если вам нужно вставить в базу запись, где на позиции `id_client` будет предыдущий полученный айдишник, то так и пишите:
    PHP:
    1. $query = "INSERT INTO ads(`name`, `city`, `telephone`, `email`, `nazvanie`, `text`, `id_client`) VALUES ('".$name."','".$city."','".$telephone."','".$email."','".$nazvanie."','".$text."',''.$row['id']."');";
    2. $result = mysql_query ( $query );
     
  14. Inoi

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

    С нами с:
    4 авг 2008
    Сообщения:
    52
    Симпатии:
    0
    Адрес:
    Волгоград
    Спасибо, сделал еще за долго до вашего поста(забыл отписаться)

    Код (Text):
    1. $idwclient = "SELECT `id` FROM `user` WHERE `email`= '".$_SESSION['email']."'";
    2. $id = mysql_query($idwclient);
    3. $row = mysql_fetch_array($id);
    4. $idw=$row["id"];
    Теперь все работает нормально