Foros del Web » Programando para Internet » PHP »

como soluciar mi error de metodo que no regresa nada para mi segundo indice y los dem

Estas en el tema de como soluciar mi error de metodo que no regresa nada para mi segundo indice y los dem en el foro de PHP en Foros del Web. Hola a todos tengo un problema que no he podido solucionar, resulta que recibo un arreglo de nombres y esos nombres los separo con explode, ...
  #1 (permalink)  
Antiguo 08/09/2011, 11:38
 
Fecha de Ingreso: octubre-2010
Mensajes: 25
Antigüedad: 13 años, 6 meses
Puntos: 0
como soluciar mi error de metodo que no regresa nada para mi segundo indice y los dem

Hola a todos tengo un problema que no he podido solucionar, resulta que recibo un arreglo de nombres y esos nombres los separo con explode, los tengo que meter cada uno a un metodo para que me regrese un id, el problema es con mi metodo $obtenerIdUsuario y el ciclo for ya que el metodo no regresa nada para el siguiente index, es decir solo toma el primero, ya no se que hacer.

Código PHP:
$destinatario "pepe, lalo, beto";
$arrayDestinatarios=explode(',',$destinatario);

$count count($arrayDestinatarios);

for(
$i=0;$i<$count;$i++){
$res $obj->obtenerIdUsuario($arrayDestinatarios[$i]);

if(
$res == true){
echo 
$res[$i]['id_usuario'];
}else{
    echo 
"maldita sea";
    
}



Código:
    public function obtenerIdUsuario($usuario){
    	
    	$conexion = $this->objConexion->configuracion();
        $consulta = "CALL sp_correoObtenerIdUsuario('$usuario')";
        $stmt = $conexion->prepare($consulta);
    	$stmt->execute();
        $resultado = $stmt->fetchAll();
       
        
    }

Última edición por betoVelez; 08/09/2011 a las 11:40 Razón: como soluciar mi error de metodo que no regresa nada para mi segundo indice y los demas?
  #2 (permalink)  
Antiguo 08/09/2011, 11:48
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

En tu método obtenerIdUsuario, te faltaría liberar tu consulta y hacer un return del valor.

Saludos.
  #3 (permalink)  
Antiguo 08/09/2011, 11:55
 
Fecha de Ingreso: octubre-2010
Mensajes: 25
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

perdon no entiendo que tengo que hacer? me puedes explicar

mi consulta es esta

BEGIN
SELECT id_usuario FROM usuario WHERE usuario = usua;
END

in usua varchar
  #4 (permalink)  
Antiguo 08/09/2011, 12:24
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

No me refiero a la parte de SQL, es en la parte de PHP, tu método obtenerIdUsuario no libera el resultset y no devuelve nada, necesitas usar forzosamente el return para regresar la variable a tu script que llama a tu función.

Saludos.
  #5 (permalink)  
Antiguo 08/09/2011, 12:37
 
Fecha de Ingreso: octubre-2010
Mensajes: 25
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

muchas gracias por responder entonces queda de esta forman no?


public function obtenerIdUsuario($usuario){

$conexion = $this->objConexion->configuracion();
$consulta = "CALL sp_correoObtenerIdUsuario('$usuario')";
$stmt = $conexion->prepare($consulta);
$stmt->execute();
$resultado = $stmt->fetchAll();
return $resultado;


}

ya lo cambie y me tengo el mismo problema? alguna otra sugerencia gracias de nuevo por responder

Última edición por betoVelez; 08/09/2011 a las 12:46
  #6 (permalink)  
Antiguo 08/09/2011, 12:47
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

Algo así pero aun así deberías de liberar los recursos para poder hacer otra consulta más adelante.

Saludos.
  #7 (permalink)  
Antiguo 08/09/2011, 13:02
 
Fecha de Ingreso: octubre-2010
Mensajes: 25
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

como? como? no te entiendo eso de la consulta mas adelante para que seria?


saludos
  #8 (permalink)  
Antiguo 08/09/2011, 13:37
 
Fecha de Ingreso: septiembre-2011
Mensajes: 16
Antigüedad: 12 años, 7 meses
Puntos: 4
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

tu codigo
Código PHP:
Ver original
  1. $destinatario = "pepe, lalo, beto"
da esto:
array(0)=pepe; no hay espacio ,lo encuntra en la base de datos
array(1)= lalo; si hay espacio ,no lo encuntra en la base de datos
array(2)= beto; si hay espacio,no lo encuntra en la base de datos

prueba con esto e tu cadena

tu codigo
Código PHP:
Ver original
  1. $destinatario = "pepe,lalo,beto"
  #9 (permalink)  
Antiguo 08/09/2011, 14:44
 
Fecha de Ingreso: octubre-2010
Mensajes: 25
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

no puede ser pero no se que le movi que ya no me regresa nada, segun veo existe una funcion en php que sirve para quitar los espacios .trim()
  #10 (permalink)  
Antiguo 08/09/2011, 14:51
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

Asignando a null tu $stmt liberas los recursos de tu statement.
  #11 (permalink)  
Antiguo 08/09/2011, 15:08
 
Fecha de Ingreso: octubre-2010
Mensajes: 25
Antigüedad: 13 años, 6 meses
Puntos: 0
Respuesta: como soluciar mi error de metodo que no regresa nada para mi segundo indic

perdon por la ignorancia pero de que sirve eso $GatorV?

Etiquetas: index, arreglos, 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 09:37.