PDO bindValues ​​не связывает мои значения - PullRequest
0 голосов
/ 22 сентября 2010

Я не могу заставить bindValue связать мои значения с запросом sql.

 $sql = "INSERT INTO :table(:columns) VALUES(:values)";
 $query = $conn->prepare($sql);
 $query->bindValue(':table',$table);
 $query->bindValue(':columns',$columns);
 $query->bindValue(':values',$values);
 $query->execute();

Когда я запускаю это, $ query-> execute () возвращает "false", и данные не обновляютсяв БД.Я также попробовал:

 $sql = "INSERT INTO :table(:columns) VALUES(:values)";
 $query = $conn->prepare($sql);
 $query->execute(array('table'=>$table,':columns'=>$columns,':values'=>$values));

, и это все еще не работает.

Это работает, но это не то, что я хочу сделать:

 $sql = "INSERT INTO $table($columns) VALUES($values)";
 $result = $conn->query($sql);

Пожалуйста, скажите мне, что я делаю неправильно.Спасибо.

1 Ответ

2 голосов
/ 22 сентября 2010

Вы используете его неправильно, вы не можете динамически назначать структурные значения SQL и т. Д. Через bindParam, так как он предназначен для вставки / обновления / проверки значений столбца.

ОБНОВЛЕНИЕ

Если вы предоставите нам содержание $columns и $variables (как это спросил полковник Шрапнель в комментариях), каковы они / откудаот, я / мы, возможно, сможем помочь вам обойти ваше затруднительное положение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...