За последние 24 часа нас посетили 20959 программистов и 1014 роботов. Сейчас ищут 404 программиста ...

Приветствую, что не так с SQL запросом?

Тема в разделе "PHP и базы данных", создана пользователем victor_orlov, 26 дек 2020.

  1. victor_orlov

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

    С нами с:
    16 июл 2019
    Сообщения:
    41
    Симпатии:
    0
    $cost = $_POST['cost'];
    $userid = $_SESSION['iduser'];
    $lotid = $_GET['id'];

    $insertintodb = "INSERTINTO bids (date, summary_of_the_lot, userid, lotid ) VALUES (current_timestamp, $cost, '$userid', $lotid )";
     
  2. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.748
    Симпатии:
    1.321
    Адрес:
    Лень
    Устал наверно жрать сырое мясо

    Не надоело ? ;)
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    :p
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    Ты нормальный ? :eek:
    [/SPOILER]
    [/SPOILER]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="Синию?"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    :cool:
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    или
    [SPOILER="Красную?"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    :mad:
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    Ну давай еще пощелкай :D
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    :D
    [/SPOILER]
    [/SPOILER]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    :D:D:D:D
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    :( тут тоже нема ответа :rolleyes:
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [/SPOILER]
    [SPOILER="1111111"]
    [SPOILER="1111111"]
    INSERT INTO `bids` ( `date`, `summary_of_the_lot`, `userid`, `lotid` ) VALUES ( now(), ?, ?, ? )
    INSERT INTO `bids` ( `date`, `summary_of_the_lot`, `userid`, `lotid` ) VALUES ( now(), '$v1', '$v2', '$v3' )
    [/SPOILER]
    [/SPOILER]
    :eek::eek::eek::eek::eek: мб еще снизу ?
    тренируйся :D

    Предупреждение за флуд
     
    #2 MouseZver, 27 дек 2020
    Последнее редактирование модератором: 16 янв 2021
  3. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.822
    Симпатии:
    736
    Адрес:
    Татарстан
    И что не так? Кроме того что это просто строка с запросом, без подключения к бд и без выполнения запроса
     
  4. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.199
    Симпатии:
    184
    INSERTINTO
     
    [vs] нравится это.
  5. Alex J

    Alex J Новичок

    С нами с:
    9 янв 2021
    Сообщения:
    4
    Симпатии:
    0
    Всем привет, люди добрые! Подскажите, что не так? Как нужно исправить эту строку запроса к базе данных:
    Код (Text):
    1. $db_string = "INSERT INTO 'db_orders' ('order_num') VALUES ('A38')";
    Чтобы избавиться от этой ошибки:
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''db_mdl_studio' ('order_num') VALUES ('A38')' at line 1
    Пробовал брать название таблицы в обратные одинарные ковычки - пишет: No database selected.
    Поле и значение тоже пробовал по разному "кавычить"... Ругается на синтаксис, и всё тут!
    При этом, ситуации на локальной и на удалённой мускле (на хосте) - аналогичны. Это говорит о том, что проблема где-то тут... А найти не могу... Все мозги уже сломал!
     
  6. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.748
    Симпатии:
    1.321
    Адрес:
    Лень
    Это не SQLite чтобы можно было таблицу и колонки покрывать апострофами.
    ' и ` есть разница
     
    Вероломство нравится это.
  7. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.199
    Симпатии:
    184
    Сначала изучать MySQL, потом PHP
     
  8. Alex J

    Alex J Новичок

    С нами с:
    9 янв 2021
    Сообщения:
    4
    Симпатии:
    0
    Что ж, спасибо за помощь. Нафиг тогда эта показуха? Форум и всё остальное? Трудно, чтоли подсказать? Умники, блин. Обратился же полюдски! Нет же! Ни совета ни фига! Воду в ступе толкут. Смотри, мол, какие мы крутые! Отправили тебя мусклу учить, и сказали, что это не лайт! Спасибо, ёпть!
     
    #8 Alex J, 10 янв 2021
    Последнее редактирование: 10 янв 2021
  9. Drunkenmunky

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

    С нами с:
    12 авг 2020
    Сообщения:
    1.476
    Симпатии:
    281
    ОК. Совет.
    Забиваете в поисковик "учебная база данных mysql", скачиваете, устанавливаете.
    Открываете её в PHPMyAdmin.
    Там все действия дублируются SQL запросами - выборки, удаления, вставки, оптимизации, копирования...
    Обращаете внимание на синтаксис и прочее.
    А там и на форум можно сходить, если что-то непонятно.
    Без этого никак, иначе глумиться будут.
    Почти везде.
     
  10. Alex J

    Alex J Новичок

    С нами с:
    9 янв 2021
    Сообщения:
    4
    Симпатии:
    0
    В том-то и проблема! У меня локальная база с денвером. Пару лет назад, я дружился с базой на ура! Потом проэкт провалился, и был заброшен. Не сохранилось даже файлов, где можно было бы подглядеть... Фокус с SQL запросами не срабатывает! В прошлый раз я именно так и разбирался. Поясню чуть подробнее: В SQL запросе в PHPMyAdmin имя таблицы указывается как `db_orders`, в показе php-кода - так же. Вставляю в запрос - No database selected. Меняю на 'db_orders' - на выбор базы уже не обижается, а ругается на синтаксис. В имени поля и в значении так же пробую и без кавычек, и с " ' " и с " ` " и в разных вариациях - результат неизменен. Перебрал ВСЕ возможные варианты. Тут что-то другое... Может чего с настройками php, может еще чего. При запросе к хостовой базе - то же самое, то есть мускла не виновата, раз обе базы реагируют одинаково.
     
  11. Drunkenmunky

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

    С нами с:
    12 авг 2020
    Сообщения:
    1.476
    Симпатии:
    281
    Повторить не удалось.

    А если базу переименовать?
     
  12. Dimon2x

    Dimon2x Старожил

    С нами с:
    26 фев 2012
    Сообщения:
    2.199
    Симпатии:
    184
    Что бы быстро подсказали, надо все нужные исходники предоставлять.
     
  13. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    1. Таблица - не база данных. В диалоге PHPMyAdmin в колоночке слева перечислены все схемы (базы данных), доступные для данного соединения и таблицы, им принадлежащие.
    2. Апострофы, обрамляющие имя таблицы и имена полей - синтаксическая ошибка.
    3. "No database selected" означает, что не выбрана база данных (схема), с которой будут работать запросы, если в запросе явно не указана схема (select field1, field2 from batabaseName.tableName).
    Проверьте соответстующий параметр в функции / методе установки соединения с СУБД (например, параметр dbname в конструкторе объекта mysqli), или ищите функцию / метод выбора базы (схемы) по-умолчанию для используемой библиотеки / расширения (PHP: mysqli::select_db - Manual).
    Так-же обязательно проверяйте - удалось ли установить собственно, соединение СУБД. В документации есть примеры дейстий в случае обнаружения ошибок.
     
  14. Вероломство

    Вероломство Активный пользователь

    С нами с:
    19 июн 2017
    Сообщения:
    615
    Симпатии:
    24
    да и разницы нет где что покрывать, если есть в БД служебные зарезервированные слова, то хорошей практикой будет всегда таблы и столбцы обрамлять обратными кавычками - это избавит в определённый момент от детской неожиданности и гоняния мозга когда всё выглядит правильно
    --- Добавлено ---
    я бы начал с проверки синтаксиса и избавился бы от конструкции каменного века - VALUES

    и current_timestamp - это вроде функция current_timestamp() и можно просто now() использовать либо столбцу задать по дефолту current_timestamp
     
    #14 Вероломство, 10 янв 2021
    Последнее редактирование: 10 янв 2021
  15. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.748
    Симпатии:
    1.321
    Адрес:
    Лень
    Есть...

    2021-01-10_18-17-26.png
    --- Добавлено ---
    Это с каких пор ?

    2021-01-10_18-20-22.png
    --- Добавлено ---
    [​IMG]

    https://ospanel.io/
     
  16. Вероломство

    Вероломство Активный пользователь

    С нами с:
    19 июн 2017
    Сообщения:
    615
    Симпатии:
    24
    @MouseZver, да и разницы нет где что покрывать, если есть в БД служебные зарезервированные слова, то хорошей практикой будет всегда таблы и столбцы обрамлять обратными кавычками - это избавит в определённый момент от детской неожиданности и гоняния мозга когда всё выглядит правильно

    мне опять ждать, что ты кусок вырежешь отсюда?



    с тех пор, как обезьяны слезли с дерева и стали использовать SET
     
  17. Sail

    Sail Старожил

    С нами с:
    1 ноя 2016
    Сообщения:
    1.591
    Симпатии:
    360
    Неужели не понятно, что
    set - лишь альтернативный синтаксис для вставки одной записи, а values - основной инструмент, позволяющий добавлять в таблицу одну и боллее записей? o_O
     
    [vs] нравится это.
  18. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.748
    Симпатии:
    1.321
    Адрес:
    Лень
    Конечно. Лови https://php.ru/forum/threads/privetstvuju-chto-ne-tak-s-sql-zaprosom.89814/#post-636707
    Потому что у тебя абсурдная мысль.

    Кто и где тебе это сказал/написал ? Ждем ссылки на пруфы
     
    #18 MouseZver, 11 янв 2021
    Последнее редактирование модератором: 11 янв 2021
  19. mkramer

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

    С нами с:
    20 июн 2012
    Сообщения:
    8.553
    Симпатии:
    1.754
    И как это переводится? Вроде это не переводится: неправильный запрос.

    Через что в базу лезем? Подозреваю, что раз Denwer, то mysql_*. Библиотека устарела, но дока ещё есть, я не думаю, что есть смысл вам советовать поставить новый PHP. читать, как там сделать, чтоб база данных была selected
     
  20. Alex J

    Alex J Новичок

    С нами с:
    9 янв 2021
    Сообщения:
    4
    Симпатии:
    0
    Спасибо всем, кто действительно хотел помочь!
    Я отрепетировал. В чём именно была причина, я так и не понял, но пересоздав php-файл заново, набрав код "с нуля" всё заработало! Очевидно, где-то закралась ошибка, которую я не смог разглядеть.
    Я уже создавал новый файл. Но в тот раз - копировал строки с запросами из старого... Как надо полагать, в них и была ошибка...
     
    #20 Alex J, 15 янв 2021
    Последнее редактирование: 15 янв 2021
  21. Вероломство

    Вероломство Активный пользователь

    С нами с:
    19 июн 2017
    Сообщения:
    615
    Симпатии:
    24
    подготовленные запросы есть ещё ;)
     
  22. MouseZver

    MouseZver Суперстар

    С нами с:
    1 апр 2013
    Сообщения:
    7.748
    Симпатии:
    1.321
    Адрес:
    Лень
    @Вероломство
     
  23. [vs]

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

    С нами с:
    27 сен 2007
    Сообщения:
    10.553
    Симпатии:
    631
    И как бы ты вставлял дамп базы без VALUES? По отдельному запросу на строку?
     
  24. Вероломство

    Вероломство Активный пользователь

    С нами с:
    19 июн 2017
    Сообщения:
    615
    Симпатии:
    24
    Дамп я создал видимо? )))

    Твой вопрос звучит так: если мы имеем дамп, созданный не нами, то как мы его будем заливать? Переписывать весь дамп на set с использованием подготовленного запроса?

    а ответ на вопрос ТС должен был в #2 звучать так: - Поставить пробел в insertinto и никакого жаренного мяса)))