Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] No guarda los registros

Estas en el tema de No guarda los registros en el foro de PHP en Foros del Web. Cordial Saludo. Estoy trabajando con php5 y mysql 5; debo guardar el plan de pagos generado por un procedimiento y lo almaceno en una variable ...
  #1 (permalink)  
Antiguo 04/12/2013, 15:42
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 9 meses
Puntos: 2
Pregunta No guarda los registros

Cordial Saludo.

Estoy trabajando con php5 y mysql 5; debo guardar el plan de pagos generado por un procedimiento y lo almaceno en una variable llamada $InfoPlanPago; en este ejemplo son 59 registros; para no poner todo el codigo que es muy extenso solo coloco la parte que me presenta problemas.

Cuando recorro el for empiezo a guardar en la tabla y he verificado que las variables tengan datos y si los tienen; el se queda "pensando" hasta que me aburro de esperar (media hora) y cierro la pagina .

Ya tengo los indices de la tabla correctamente pero nada que me guarda; que podria ser??

[PHP]
$InfoPlanPago = "2013-12-16|2014-01-11|2014-01-18|2014-01-25|2014-02-01|2014-02-16|2014-02-23|2014-03-02|2014-03-24|2014-03-31|2014-04-07|2014-04-14|2014-04-21|2014-04-28|2014-05-05|2014-05-12|2014-05-19|2014-05-26|2014-06-03|2014-06-10|2014-06-17|2014-06-24|2014-07-01|2014-07-08|2014-07-15|2014-07-22|2014-07-29|2014-08-05|2014-08-12|2014-08-19|2014-08-26|2014-09-02|2014-09-09|2014-09-16|2014-09-23|2014-09-30|2014-10-07|2014-10-14|2014-10-21|2014-10-28|2014-11-04|2014-11-11|2014-11-18|2014-11-25|2014-12-02|2014-12-09|2014-12-16|2014-12-23|2014-12-30|2015-01-06|2015-01-13|2015-01-20|2015-01-27|2015-02-03|2015-02-10|2015-02-17|2015-02-24|2015-03-03|2015-03-10"

El codigo es el siguiente:
Código PHP:
$InfoPlanPagos explode("|"$InfoPlanPago);
$ContPlanPago count($InfoPlanPagos) - 1;

for(
$i=0$i<$ContPlanPago;$i++)
    {
        
$FechPago $InfoPlanPagos[$i];
        
$mppConsecutivo BusqConsMaxi('mppConsecutivo''matrplanpago'$conexion0);

        
$Sql "insert into matrplanpago(mppConsecutivo, matConsecutivo, mppFechPago, mppEstado, mppFecha, usuConsecutivo) values(?, ?, ?, ?, ?, ?)";
        
$InsPlanPago $conexion->prepare($Sql);
        
$InsPlanPago->bind_param("iisssi"$mppConsecutivo$matConsecutivo$FechPago$Estado$FechaActual$usuConsecutivo);
        if(
$InsPlanPago->execute()){}
        else{
            
$Error $conexion->error;
            
$Error str_replace("'",'"',$Error);
            
$conexion->rollback();
            
$InsPlanPago->close();
            
$conexion->close();
            return 
"Error: No es posible guardar la Matricula.<br>".$Error;
        }
    }
$conexion->commit();
$InsPlanPago->close();
$conexion->close(); 
Estoy haciendo mal el for o que otra cosa podria ser???

Agradezco de antemano la ayuda y sugerencias que me puedan brindar.

Última edición por tattojk; 04/12/2013 a las 16:01
  #2 (permalink)  
Antiguo 04/12/2013, 16:17
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 8 meses
Puntos: 96
Respuesta: No guarda los registros

Los 2 consecutivos son auto_increment? Si es si, puede que ahi este el problema
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #3 (permalink)  
Antiguo 04/12/2013, 16:48
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 9 meses
Puntos: 2
Pregunta Respuesta: No guarda los registros

Cordial saludo.

xSkArx los dos consecutivos no son autoincrement; los crea el formulario; $matConsecutivo es generado antes del codigo que puse; y $mppConsecutivo lo genero con la funcion BusqConsMaxi que esta en el codigo; como les escribi, no coloco el codigo completo ya que es muy extenso; las variables tienen datos.

Agradezco de antemano la ayuda y sugerencias que me puedan brindar.
  #4 (permalink)  
Antiguo 04/12/2013, 17:07
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: No guarda los registros

Cita:
no coloco el codigo completo ya que es muy extenso;
¿Y no supones que poniendo un código parcial, puede estar quedando afuera justamente lo que causa el error?
Entendamos que si nos das información parcial es altamente probable que jamás encontremos el error.
¿No te parece?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 04/12/2013, 18:34
Avatar de mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 2 meses
Puntos: 214
Respuesta: No guarda los registros

<saludos>
Pues el código funciona perfecto, lo acabo de probar e inserta los 58 registros que son el resultado del explode.
Te sugiero revises si estás apuntando a la bd correcta, o si estás revisando tu
en otra bd diferente a la configurada,
o revisa la función BusqConsMaxi

la cual no está en lo posteado, y que yo simplemente
modifiqué para que la variable mppConsecutivo
en vez de esperar el resultado de esta función,
tomara el valor de la variable i sumandole 1.

Suerte con eso!
</saludos>
__________________
"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
  #6 (permalink)  
Antiguo 04/12/2013, 19:34
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 8 meses
Puntos: 96
Respuesta: No guarda los registros

No es necesario hacer esto
Código PHP:
Ver original
  1. $ContPlanPago = count($InfoPlanPagos)-1;
Asi deberia insertar los 59 registros
Código PHP:
Ver original
  1. $ContPlanPago = count($InfoPlanPagos);
ademas que vez de.un for uses un foreach sin la necesidad de contar el array
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.
  #7 (permalink)  
Antiguo 04/12/2013, 22:05
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 9 meses
Puntos: 2
De acuerdo Respuesta: No guarda los registros

Cordial saludo.

Agradezco la ayuda y sugerencias, se que sacan un poco de tiempo para ayudar a la comunidad

xSkArx tome tu sugerencia y esa fue la solución utilice el foreach y me funciono a la primera vez; es extraño porque no funcionaba con el for

gnzsoloyo tendre en cuenta tu sugerencia de poner el codigo completo para la proxima; es que uno no sabe si la gente se puede molestar o piensan que uno quiere que le hagan el trabajo por uno.

En fin todos sus aportes son muy valiosos para mi

Etiquetas: fecha, mysql, registro, registros, sql, tabla, variable
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 22:15.