BindParam не отрабатывает

Rayzor92

Новичок
Ребята помогите с этим PREPARE. Как только не изголялся, не работает и всё.
Если код такой:
PHP:
$result = $this->pdo->prepare("INSERT INTO $table ($columns_s) VALUES ($values_s)");
return $result->execute();
То добавляет статью, а если делаю так
PHP:
$result = $this->pdo->prepare("INSERT INTO $table ($columns_s) VALUES (:values)");
$result->bindParam(':values',$values_s );
return $result->execute();
же ничего не работает. Ошибок нет, но запись в базу не попадает
Я посмотрел переменную $result вардампом перед исполнением. Дело в том, что в запросе так и остаётся :values, а значения переменной, которую я передаю через bindParam почему то не подставляются.
 

Rayzor92

Новичок
я не думаю, что это из-за column и values, так как я пробовал и $table отфильтровать, хотя там всегда приходит слово article.
А в column и values содержатся значения через запятую, вот так: title,content и заголовок ,статья
 

Rayzor92

Новичок
Я даже упросил код вот так:
PHP:
function Insert()
{
	$pdo = new PDO("mysql:host=localhost;dbname=netsoc",'root','1');
	$pdo->query("SET NAMES cp1251");
	$result = $pdo->prepare("INSERT INTO :table (title,content) VALUES ('вне','вне')");
	$result->bindParam(':table',$t);
	$t='articles';
	$result->execute();
}
Insert();
Всё равно не добавляет в таблицу записи
 

Rayzor92

Новичок
блин ещё один. Я уже и так делал. Вот пример:
PHP:
function Insert()
{
	$pdo = new PDO("mysql:host=localhost;dbname=netsoc",'root','1');
	$pdo->query("SET NAMES cp1251");
	$result = $pdo->prepare("INSERT INTO :table (title,content) VALUES ('вне','вне')");
	$t='articles';
	$result->bindParam(':table',$t);
	
	$result->execute();
}
Insert();
Не работает так!!! Кто нибудь реально использовал этот Bind у себя в скриптах?
 

Фанат

oncle terrible
Команда форума

Rayzor92

Новичок
переведи, так что же не так? Хотя я уже разобрался что не так: Надо как то расщепить строку со значениями в отдельные переменные и отдавать их бинду.
 
Сверху