Pregunta:
Fecha: 24-04-2019 17:59:30
(En Español)
Recoverable fatal error: Object of class PDOStatement could not be converted to string in
esta es la linea que me señala con error aver si alguien puede hecharme la mano.
gracias de antemano.
Error [Resuelta]
Hola amigos ocupo ayuda con este error.Recoverable fatal error: Object of class PDOStatement could not be converted to string in
esta es la linea que me señala con error aver si alguien puede hecharme la mano.
gracias de antemano.
}elseif(isset($_GET['id']) & $_GET['id']>0){ echo $instProducto->deleteProducto_Controler(); }Votos: -1 - Respuestas: 6 - Vistas: 12 Compartir en: Google Facebook Twitter LinkedIn Link
Respuestas:
-
Fecha: 25-04-2019 06:31:30 Si lo que te devuelve es un json primero debes decodificar el json.Proba con json_decode
json_encode o uede ser una matriz
<?php
function getFruit($conn) {
$sql = 'SELECT name, color, calories FROM fruit ORDER BY name';
foreach ($conn->query($sql) as $row) {
print $row['name'] . "\t";
print $row['color'] . "\t";
print $row['calories'] . "\n";
}
}
?> Votos: 1 - Link respuesta -
Fecha: 25-04-2019 06:47:41 El método deleteProducto_Controler devuelve un objeto, no una cadena de caracteres por lo tanto no lo puede imprimir. Votos: 0 - Link respuesta
-
Fecha: 25-04-2019 07:57:36 Gracias por sus respuesta.
lo que intento es mandar a llamar a la funcion deleteProducto()
de la nueva instancia $insproducto.
que obviamente es la clase ProductoControler el controlador.
todo esto lo hago en un archivo llamado productoAjax donde hago las comprobaciones si los POST vienen vacios y luego mando a llamar al controlador.
ahora entiendo que al usar el metodo POST se recupera una cadena de texto y no hay problema.
pero al hacerlo por GET ahi viene el problema.
aclaro que apesar de que manda el error la orden se ejecuta y me borra el archivo de la base de datos.
La pregunta es, como puedo recuperar el ID del producto. tendría que utilizar una variable en el lugar de echo?. para poder cachar el objeto?
gracias nuevamente MATIAS , ERNESTO. Votos: 0 - Link respuesta -
Fecha: 25-04-2019 10:10:10 Necesitaría ver el código dentro de deleteProducto_Controler para poderte dar una mejor respuesta. Votos: 0 - Link respuesta
-
Fecha: 25-04-2019 19:25:03 Ok. te paso los archivos que participan en el borrado.
primero verifico que exista o este establecido el GET['id'] al llamar el archivo productoAjax
archivo productoAjax.php
<?php $PeticionAjax=true; require_once "../core/configGeneral.php"; //echo "hasta aqui bien"; if (isset($_POST['productoInput'])||isset($_POST['catInput'])||isset($_POST['companyInput'])|| isset($_GET['id'])) { //echo "hasta aqui bien"; require_once "../Controlador/productoControler.php"; $instProducto=new productoControler(); if (isset($_POST['productoInput'])){ echo $instProducto->adProducto_Controler(); }elseif(isset($_POST['catInput'])){ echo $instProducto->adCategoria_Controler(); }elseif(isset($_POST['companyInput'])){ echo $instProducto->adProveedor_Controler(); }elseif(isset($_GET['id']) & $_GET['id']>0){ echo $instProducto->deleteProducto_Controler(); } } else { session_start(); session_destroy(); echo '<script> window.location.href="'.SERVERURL.'adminpanel" </script>'; }
si puedes observar mando a llamar a la funcion deleteProducto que esta en la clase productoControler.php
con echo $insProducto->deleteProducto_Controler()
esta es la funcion que se encuentra en el archivo productoControler.php desde ahi mando a llamar el modelo.
public function deleteProducto_Controler() { $sql=ProductoModel::deleteProducto_Model($_GET['id']); return $sql; }
paso el archivo del modelo. ProductoModel.php
protected function deleteProducto_Model($producto) { $consulta="DELETE FROM tbproductos WHERE IdProducto='$producto'"; $sql=mainModel::conexion()->prepare($consulta); $sql->execute(); return $sql; }
eso seria todo. Votos: 0 - Link respuesta -
Fecha: 25-04-2019 21:12:34 Ya lo resolvi amigos, simplemente quite echo y puse una variable para recibir el objeto pdo.
echo $instProducto->deleteProducto_Controler();
$sql=$instProducto->deleteProducto_Controler();
muchas gracias MATIAS Y ERNESTO por su ayuda. Votos: 1 - Link respuesta
Para participar activamente de la comunidad primero debes autenticarte, ingresa al sistema.Iniciar Sesión