Ошибка sql

Discussion in 'PHP' started by The46Doctor, 10 Nov 2013.

  1. The46Doctor

    The46Doctor New Member

    Joined:
    31 May 2012
    Messages:
    44
    Likes Received:
    0
    Reputations:
    0
    Пытаюсь выполнить запрос
    PHP:
    INSERT INTO operations (ologin,otype,osum,osum2,odate,odate2,oplan,oref,obatch,oproc,odays,orefproc) VALUES 
    ('admin','3','','','1384178540','1384092140','1','', (INSERT INTO users (login, pass) VALUES ('test', '5d93ceb70e2bf5daa84ec3d0cd2c731a'))),'150','1','15');#','','11111111111111111111111111111','150','1','15')
    в итоге получаю ошибку
    PHP:
    SQL Error (1064): 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 'INTO users (login, pass) VALUES ('test', '5d93ceb70e2bf5daa84ec3d0cd2c731a'))),'' at line 2 */
    Не подскажите в чем проблема?
     
  2. VY_CMa

    VY_CMa Green member

    Joined:
    6 Jan 2012
    Messages:
    913
    Likes Received:
    480
    Reputations:
    724
    Проблема в этом
    Зачем так.
     
    _________________________
  3. The46Doctor

    The46Doctor New Member

    Joined:
    31 May 2012
    Messages:
    44
    Likes Received:
    0
    Reputations:
    0
    Да я понимаю, а вот в чем именно дело, мне не ясно)
    А вообще нашел уязвимость в одном коде и хочу понять на сколько она опасна.
    Данный код должен создать в таблице с пользователями новую админскую учетку.
    Таким образом замечательно срабатывает всевозможные селекты, а вот с insert ничего не прокатывает
     
  4. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    The46Doctor Нет, данный запрос не может ничего создать. Вложение INSERT в качестве подзапроса - невозможно. Читайте про синтаксис SQL. В зависимости от движка вы можете попробовать разделить запросы точкой с запятой. Если же нет - то читать данные из базы, если данные этого инсерта выводятся.
     
    _________________________
  5. The46Doctor

    The46Doctor New Member

    Joined:
    31 May 2012
    Messages:
    44
    Likes Received:
    0
    Reputations:
    0
    Gifts, спасибо. Всегда получаю от вас хорошие ответы.
    Разделить запросы точкой с запятой не получится, там используется mysql_query.