estimados, saludarlos a todos, pasaba nuevamente por este gran foro para exponerles lo siguiente, necesito hacer update de algunos campos , utilizo la siguiente funcion:
Código PHP:
// Funcion Actualizar Avisos (via cod_aviso)
function actualizaAviso($cod_aviso=null){
$cod_aviso=(int)$cod_aviso;
if(empty($cod_aviso) OR !$cod_aviso){
header('location:../Admin/login.php');
}
//print_r($cod_aviso);
//Preparamos la Consulta
$query="UPDATE
avisos
SET
comuna = :comuna,
titulo_aviso = :titulo_aviso,
categoria_aviso = :categoria_aviso,
tipo_aviso = :tipo_aviso,
valor_producto = :valor_producto,
aviso_completo = :aviso_completo,
telefono_celular = :telefono_celular,
telefono_fijo = :telefono_fijo,
correo_electronico = :correo_electronico,
direccion = :direccion
WHERE cod_aviso = :cod_aviso";
//Preparamos la consulta
$stmt=$this->con->prepare($query);
$stmt->bindParam(':comuna',$_POST['comuna']);
$stmt->bindParam(':titulo_aviso',$_POST['titulo_aviso']);
$stmt->bindParam('categoria_aviso',$_POST['categoria_aviso']);
$stmt->bindParam(':tipo_aviso',$_POST['tipo_aviso']);
$stmt->bindParam(':valor_producto',$_POST['valor_producto']);
$stmt->bindParam(':aviso_completo',$_POST['aviso_completo']);
$stmt->bindParam(':telefono_celular',$_POST['telefono_celular']);
$stmt->bindParam('telefono_fijo',$_POST['telefono_fijo']);
$stmt->bindParam(':correo_celectronico',$_POST['correo_electronico']);
$stmt->bindParam(':direccion',$_POST['direccion']);
//ejecutamos la consulta
// $stmt->execute();
// Execute the query
if($stmt->execute()){
echo "actualizadoooo";
}else{
die('no');
}
}//Funcion actualizaAviso
y en mi archivo update.php (que carga en el formulario los campos segun el id que viene via get) lo tengo asi:
Código PHP:
<?php
session_start();
require_once '../Inc/funciones.php';
//Recibo el cod_aviso que viene desde la pagina
$cod_aviso = strip_tags($_GET['cod_aviso']);
//Instanciamos
$aviso = new Avisos();
$avisos=$aviso->detalleAviso($cod_aviso);
//Cargo el registro en sus campos del formulario
foreach($avisos as $row){
$comuna = $row['comuna'];
$titulo_aviso = $row['titulo_aviso'];
$categoria = $row['categoria_aviso'];
$tipoaviso = $row['tipo_aviso'];
$valor = $row['valor_producto'];
$detalleaviso = $row['aviso_completo'];
$celular = $row['telefono_celular'];
$fijo = $row['telefono_fijo'];
$correo = $row['correo_electronico'];
$direccion = $row['direccion'];
}
//actualizacion
if(isset($_POST['actualizar'])){
//$comuna=$_POST['comuna'];
//$titulo_aviso=$_POST['titulo_aviso'];
$aviso->actualizaAviso($cod_aviso);
}
//validacion session
//formulario y codigo html....
?>
el hecho es que al ejecutar me sale lo siguiente:
Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in
lo cual segun he estado viendo, es por que me estaria faltando un parametro, pero me cuadran todos....
agradecido desde ya por su ayuda