2011-12-16 3 views
0

Я запускаю эту функцию, и значение формы сообщения не вставляется в БД. Я не получаю никаких сообщений об ошибках, но я проверил и увидел, что этот $ this-> user_id заполняется. Я что-то пропустил?Проблема ввода данных в базу данных

function senddata() { 
    $con = mysql_connect("localhost","root","XXXXX"); 
    if (!$con) 
     { 
    die('Could not connect: ' . mysql_error()); 
     } 
     mysql_select_db("user", $con); 
     $sql="INSERT INTO profile (collegemajor) VALUE('$_POST[major]') WHERE userid=$this->user_id"; 

    mysql_close($con); 

    } 
+0

Вы выполняете запрос? используя функцию mysql_query? –

+0

также удаляет предложение where из инструкции insert –

+0

Но мне нужно вставить значение в определенную строку, где идентификатор пользователя является эквивалентом активного пользователя. Как я могу это сделать? – buttonitup

ответ

0

Прежде всего, я не вижу mysql_query() - функцию для выполнения запроса.

Похоже, проблема здесь:

$sql="INSERT INTO profile (collegemajor) VALUE('$_POST[major]') WHERE userid=$this->user_id"; 

Используйте $sql="INSERT INTO profile (collegemajor) VALUE('$_POST[major]'); вместо этого.

Код:

function senddata() { 
     $con = mysql_connect("localhost","root","XXXXX"); 
     if (!$con) 
      { 
     die('Could not connect: ' . mysql_error()); 
      } 
      mysql_select_db("user", $con); 
      $sql="INSERT INTO profile (collegemajor) VALUE('$_POST[major]');"; 
     mysql_query($sql , $con); 

     mysql_close($con); 

     } 
+0

Мне нужно вставить это значение в строку активного пользователя, следовательно, запрос туда, это невозможно ? – buttonitup

+0

@MattMcClintock Итак, вам нужно '$ sql =" UPDATE your_table SET collemajor = ". $ _POST ['major']. "WHERE userid =". $ this -> user_id. ";"; ' –

+0

Все еще ничего ... – buttonitup

1
  1. INSERT заявление не КУДА clausule,
  2. вам необходимо отправить запрос !!!
+0

Wow) Я полностью пропустил, что это запрос «INSERT») –

0

Это, скорее всего, функция обновления, а не функция вставки (если вы пытаетесь обновить уже существующую строку, которая, по-видимому, основана на предложении «Где»).

И, как указывали другие, вы никогда не запускали mysql_query() или аналогичную функцию.

Смежные вопросы