Foros del Web » Programando para Internet » PHP »

consulta PDO->Affected rows

Estas en el tema de consulta PDO->Affected rows en el foro de PHP en Foros del Web. Hola amigos. Aquí estoy de vuelta esta vez porque estoy comenzando con el mundo PDO, y aquí tengo un problemilla que seguramente puedan resolver :) ...
  #1 (permalink)  
Antiguo 19/05/2016, 21:38
 
Fecha de Ingreso: junio-2011
Ubicación: uruguay
Mensajes: 42
Antigüedad: 12 años, 9 meses
Puntos: 0
consulta PDO->Affected rows

Hola amigos. Aquí estoy de vuelta esta vez porque estoy comenzando con el mundo PDO, y aquí tengo un problemilla que seguramente puedan resolver :)

Necesito validar si la consulta devuelve algún resultado, lo que comúnmente hago con affected rows.

He intentado asi, pero no funciona, alguien puede echarme una mano? gracias!!

Sospecho que el problema esta en lo rojo ya que no llega a entrar al IF



public function Eliminar2($id_grupo)
{
try
{
$tengoalgo=0;

$sql= $this->pdo->prepare("select max(id) as id from contactos co inner join grupos c on co.grupo=c.nombregrupo where c.id_grupo = __$GET('id_grupo')";

$re=$sql->execute(array($id_grupo));

while (){
$tengoalgo=$re["id"];
break;
}


if ($tengoalgo>0){


print "<script>alert(\"Imposible Borrar. Este grupo tiene contactos asociados, borre primero los contactos asignados a él\");</script>";
} else {

$stm2 = $this->pdo
->prepare("DELETE FROM grupos WHERE id_grupo = ?");
//antes de borrar el grupo me fijo si tiene usuarios relacionados, si los tiene no se puede borrar.

$stm2->execute(array($id_grupo)); }
} catch (Exception $e2)
{
die($e2->getMessage());
}
}
  #2 (permalink)  
Antiguo 20/05/2016, 03:14
Avatar de Eleazan  
Fecha de Ingreso: abril-2008
Ubicación: Ibiza
Mensajes: 1.879
Antigüedad: 16 años
Puntos: 326
Respuesta: consulta PDO->Affected rows

Hola,

El affected rows lo puedes obtener con rowCount.

Aún así, el execute sólo devuelve un bool, no un array... para eso debes hacer un fetch ;)

Revisa el proceso de hacer una query en PDO
__________________
>> Eleazan's Source
>> @Eleazan
  #3 (permalink)  
Antiguo 20/05/2016, 09:10
 
Fecha de Ingreso: abril-2016
Mensajes: 65
Antigüedad: 8 años
Puntos: 4
Respuesta: consulta PDO->Affected rows

Despues de hacer tu fetchAll(), puedes hacerle un sizeof().
Por ejemplo
Código PHP:
Ver original
  1. $ls_query = ("SELECT cod_usuario, contrasenia
  2.               FROM usuario
  3.               WHERE cod_usuario = ".trim($_POST['txt_usuario'])."");
  4.     $ls_res_usr = $pdo->query($ls_query);
  5.     $li_num_rows = 0;
  6.     $ls_resulta = $ls_res_usr->fetchAll();
  7.     $li_num_rows = sizeof($ls_resulta);

eso te saca el numero de filas de tu query.
Espero te sirva, comentanos tu respuesta.

Última edición por danteavo92; 24/05/2016 a las 13:51

Etiquetas: rows, select, sql, usuarios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:10.