2013-11-21 4 views
0

Я пытаюсь запустить PHP, который вставляет значение в таблицу MySQL.Инструкция Mysql Insert от PHP

Мое соединение db работает нормально.

У меня есть код в функции:

function InsertRighmoveID($RightmoveID) 
{ 
    # Connection already created in main program 

    #Define the query to insert righmove ID already in Database 
    #VALUES ('" . substr($name, 23, 31) . "')"; 

    echo "In InsertRighmoveID() function </br>"; 
     $query_enter_rightmove_ID = 

     "INSERT INTO tblRightMoveIDs (rightmoveID) 
     VALUES ('" . $RightmoveID . "');"; 

     #Echo the query to check it 

     echo $query_enter_rightmove_ID . "</br>"; 

     #Execute the query 
     $query_enter_rightmove_ID = mysql_query($query_enter_rightmove_ID); 
     echo "Leaving InsertRighmoveID() function </br>"; 

     #Execute the query 
     $query_enter_rightmove_ID = mysql_query($query_enter_rightmove_ID); 

     #Check to see if the query worked 
     if (!$query_enter_rightmove_ID) 
      { 
       die("Database query failed:" . mysql_error()); 
      } 
     echo "Leaving InsertRighmoveID() function </br>"; 
} 

при запуске кода на веб-странице, получить его, чтобы напечатать запрос на экран это сообщение: запрос

INSERT INTO tblRightMoveIDs (rightmoveID) VALUES ('44047607') 

базы данных не удалось:

У вас возникла ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии сервера MySQL, для правильного синтаксиса для использования рядом с «1» по строке 1

44047607 - это значение, переданное функции.

Если я бегу:

INSERT INTO tblRightMoveIDs (rightmoveID) VALUES ('44047607'); 

Вне программы она работает.

+0

Правильно отредактируйте ваш код – Zword

+0

Почему у вас простая программа настолько сложная? –

ответ

1

Удалите точку с запятой ; здесь

"INSERT INTO tblRightMoveIDs (rightmoveID) 
    VALUES ('" . $RightmoveID . "');"; 
          -------^ 
0

Существует ошибка здесь в помеченных части:

**$query_enter_rightmove_ID** = mysql_query($query_enter_rightmove_ID); 
echo "Leaving InsertRighmoveID() function </br>"; 
#Execute the query 
$query_enter_rightmove_ID = mysql_query(**$query_enter_rightmove_ID**); 

Вы выполняете mysql_query первый раз с соответствующим запросом и помещает результат в переменную $ query_enter_rightmove_ID. Второй раз вы используете результат первого запроса в качестве параметра для mysql_query, который является неправильным

+0

Большое спасибо за помощь – user3016957