Estoy insertando datos a una tabla (previo) de una BD. los datos los obtengo de un txt. Los datos se insertan sin problemas.
El problema que tengo es con las variable $imagen y $link, que al insertarlas me aparece el error :
Warning: PDOStatement::execute() [pdostatement.execute]: SQLSTATE[HY093]: Invalid parameter number: no parameters were bound in...
(Los datos que hay en $imagen y $link se insertan y hay contenido).
Sé que son estas variables porque cuando las quito del INSERT no aparece el error.
Los datos que aparecen en $imagen son algo así: http://www.general.es/getimage.php?pass=ex9&img=/images/172101.jpg
Y los datos que aparecen en $link son algo así: http://general.com/click.html?campai=hhh&wgprogramid=ggggg&product=1& id=ggg&productname=dito&wgtarget=http://www.general.es/juegl/ps.html
Archivo Class.php
Código PHP:
public function Create(){
$model = new Conexion();
$conexion = $model->conectar();
$insertInto = $this->insertInto;
$insertColumns = $this->insertColumns;
$insertValues = $this->insertValues;
$sql = "INSERT INTO $insertInto ($insertColumns) VALUES ($insertValues)";
$consulta = $conexion->prepare($sql);
if (!$consulta){
$this->mensaje = "Error al insertar datos";
}else{
$consulta->execute();
$this->mensaje = "Registro insertado con éxito";
}
}
Código PHP:
$model = new Crud;
$model->insertInto = 'previo';
$model->select = "*";
$model->condition = "";
$model->insertColumns = 'producto,precio,codigo,imagen,estado,link';
$model->insertValues = "'$producto','$precio','$codigo','$imagen','$estado','$link'";
$model->Create();
$mensaje = $model->mensaje;
Muchas gracias por adelantado