Выполнение запроса PHP PDO не сохраняет переданные данные - PullRequest
0 голосов
/ 12 мая 2018

У меня проблема с подготовленными PDO инструкциями, использующими mysql.Когда запрос выполняется, он сохраняет в предложенной таблице заполнители, которые я связал, используя метод bindParam().Вот код, а вот экран результата выполнения запроса.Как я могу решить эту проблему?Я новичок в PDO!

PHP (это контроллер, который вызывается с помощью ajax).

if(isset($_POST['code'])){

$code = filter_var($_POST['code'],FILTER_SANITIZE_STRING);    
$qty = filter_var($_POST['quantity'],FILTER_SANITIZE_STRING);  
$brand = filter_var($_POST['brand'],FILTER_SANITIZE_STRING);
$article_name = filter_var($_POST['artName'],FILTER_SANITIZE_STRING);  
$price = filter_var($_POST['price'],FILTER_SANITIZE_STRING);
$article_type = filter_var($_POST['artType'],FILTER_SANITIZE_STRING); 
$note = filter_var($_POST['note'],FILTER_SANITIZE_STRING);    

$save = $core->insert_article($code,$qty,$brand,$article_name,$price,$article_type,$note);    

if($save){
echo 'ok';    
} else {
echo 'error';    
}

}

PHP 2 (это функция класса, который управляет всемиоперации с базой данных)

public function insert_article($code,$qty,$brand,$article_name,$price,$article_type,$note){

$db = $this->init_db();    

$sql = "INSERT INTO products (cod_articolo, pezzi_disponibili, marca, nome_articolo, prezzo, tipologia_articolo, note) VALUES (':cod_articolo',':pezzi_disponibili',':marca',':nome_prodotto',':prezzo',':tipologia_articolo',':note')";    
$stmt = $db->prepare($sql);    

$stmt->bindParam(':cod_articolo',$code,PDO::PARAM_STR);
$stmt->bindParam(':pezzi_disponibili',$qty,PDO::PARAM_STR);
$stmt->bindParam(':marca',$brand,PDO::PARAM_STR);
$stmt->bindParam(':nome_articolo',$article_name,PDO::PARAM_STR);
$stmt->bindParam(':prezzo',$price,PDO::PARAM_STR);
$stmt->bindParam(':tipologia_articolo',$article_type,PDO::PARAM_STR);
$stmt->bindParam(':note',$note,PDO::PARAM_STR);

if($stmt->execute()){
echo 'ok';    
} else {
echo 'error';    
}    

}

Это экран результатов после выполнения запроса таблица после выполнения запроса

1 Ответ

0 голосов
/ 12 мая 2018

Попробуйте удалить одинарные кавычки, окружающие обязательную часть

$sql = "INSERT INTO products (cod_articolo, pezzi_disponibili, marca, nome_articolo, prezzo, tipologia_articolo, note) VALUES (:cod_articolo,:pezzi_disponibili,:marca,:nome_prodotto,:prezzo,:tipologia_articolo,:note)";    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...