Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Cakephp No me guarda los datos

Estas en el tema de No me guarda los datos en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola, tengo un sistema de mensajes donde elijo enviar un mensaje a uno/muchos usuarios y siempre me guarda uno solo. Lo q quiero q lograr ...
  #1 (permalink)  
Antiguo 06/02/2014, 09:31
Avatar de reborn  
Fecha de Ingreso: febrero-2010
Mensajes: 440
Antigüedad: 14 años, 2 meses
Puntos: 1
No me guarda los datos

Hola,

tengo un sistema de mensajes donde elijo enviar un mensaje a uno/muchos usuarios y siempre me guarda uno solo.

Lo q quiero q lograr es guardar el mensaje como tantos usuarios tenga como destinatarios.

Hice lo siguiente:


Código PHP:
                       //id de usuarios a los q se le mandara el mensaje. Esto viene del form
                       
$idPara $this->request->data['Message']['para'];
                        
//Hago un for
                        
for ($i=0;$i<count($idPara);$i++){
                            
//Obtengo la cantidad de IDs a enviar
                            
$this->request->data['Message']['to_user_id'] = $idPara[$i];
                            
//Hago un save por cada id. Si tengo 5 usuarios, hago 5 save, etc
                            
$this->Message->save($this->request->data);
                        } 
Eso me guarda un solo registro, un solo id.

Si hago un pr() dentro del for me sale lo siguiente:
Código PHP:
                        for ($i=0;$i<count($idPara);$i++){
                            
$this->request->data['Message']['to_user_id'] = $idPara[$i];
                            
pr($this->Message->save($this->request->data));
                        }
                   die; 
resultado:
Código:
Array
(
    [Message] => Array
        (
            [subject] => Envio el mismo mensaje a 3 usuarios
            [para] => Array
                (
                    [0] => 1
                    [1] => 2
                    [2] => 3
                    [3] => 1
                    [4] => 2
                    [5] => 3
                )

            [notice] => 0
            [type] => from_admin
            [from_user_id] => 143
            [to_user_id] => 1
            [updated] => 2014-02-06 12:27:02
        )

)

Array
(
    [Message] => Array
        (
            [subject] => Envio el mismo mensaje a 3 usuarios
            [para] => Array
                (
                    [0] => 1
                    [1] => 2
                    [2] => 3
                    [3] => 1
                    [4] => 2
                    [5] => 3
                )

            [notice] => 0
            [type] => from_admin
            [from_user_id] => 143
            [to_user_id] => 2
            [updated] => 2014-02-06 12:27:03
        )

)

Array
(
    [Message] => Array
        (
            [subject] => Envio el mismo mensaje a 3 usuarios
            [para] => Array
                (
                    [0] => 1
                    [1] => 2
                    [2] => 3
                    [3] => 1
                    [4] => 2
                    [5] => 3
                )

            [notice] => 0
            [type] => from_admin
            [from_user_id] => 143
            [to_user_id] => 3
            [updated] => 2014-02-06 12:27:03
        )

)
Lo raro es q el campo PARA me trae dos veces el mismo id, me genera 6 indices:

tendria q quedarme asi
Código:
            [para] => Array
                (
                    [0] => 1
                    [1] => 2
                    [2] => 3
                )
Q estoy haciendo mal?


Gracias

Última edición por reborn; 06/02/2014 a las 09:47
  #2 (permalink)  
Antiguo 06/02/2014, 15:49
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 7 meses
Puntos: 214
Respuesta: No me guarda los datos

<saludo>
Y si se le hace un pr a la variable

$this->request->data['Message']['para'];
antes del for, que se visualiza?

Sin embargo, al parecer la posición [para] de Message
en efecto se está duplicando, pero imagino que no se usa
pues debería usarse para cada envío la posición [to_user_id], correcto?

Creo que tal vez es alguna inicialización previa que duplica el asunto,
pues en lo que has publicado no se ve que se le asigne nada nuevo a la posición [para].

</saludo>
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com
  #3 (permalink)  
Antiguo 08/02/2014, 00:43
 
Fecha de Ingreso: febrero-2012
Mensajes: 37
Antigüedad: 12 años, 2 meses
Puntos: 5
Respuesta: No me guarda los datos

Antes de resolver el guardar los datos asegura que formas el array correctamente.

Si esta duplicando los valores ['para'] (que supongo vienen desde el formulario y no los modificas previamente) verifica el tipo de input que estas usando y que no te genere automáticamente el hidden, algunas veces pone un hidden y por eso te podría duplicar los datos enviados.

Eso se me ocurre, puede ser cualquier otra cosa.

saludos

Etiquetas: cakephp, campo, update, usuario
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 07:53.