Foros del Web » Programando para Internet » PHP »

Problema al hacer varios inserts

Estas en el tema de Problema al hacer varios inserts en el foro de PHP en Foros del Web. Buenas tardes e estado trabajando en una pagina donde estaran unos videos de series pero mi problema es al momento de meter los capitulos para ...
  #1 (permalink)  
Antiguo 19/03/2009, 13:40
 
Fecha de Ingreso: marzo-2009
Mensajes: 33
Antigüedad: 15 años, 2 meses
Puntos: 0
Problema al hacer varios inserts

Buenas tardes e estado trabajando en una pagina donde estaran unos videos de series pero mi problema es al momento de meter los capitulos para que no tubieran que hacerseun textbox por capitulo idee como hacerlo metiendo en dos textareas una para poner todos los capitulos y en otra la url de los capitulos. Hasta aqui muy bien, les dejo mi codigo para todo esto.

Código PHP:
<?php 
require('config.php');
Agregar los datos de la Serie
$ini 
$_POST['inicial'];
$nom $_POST['nombre'];
$res $_POST['resumen'];
$sin $_POST['sintesis'];
$id md5($nom); 
$ada mysql_query("INSERT INTO `Series` (`ID`,`Incial`,`Nombre`,`Resumen`,`Sintesis`) VALUES ('$id','$ini','$nom','$res','$sin')
"
) or die(mysql_error());
//Agregar la lista de capitulos
$cap nl2br($_POST['capitulos']);
$capitulo=split("<br />",$cap); 
$url nl2br($_POST['url']);
$urls=split("<br />",$urls); 
   for(
$r=0;$r<count($palabras);$r++){
          
mysql_query("INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('$id','".$capitulo[$r]."','".$urls[$r]."')") or die(mysql_error());
          }
?>
Ahora el problema biene que voy a ver los registros de los capitulos y me deberia de aparecer el ID de la serie el nombre del capitulo y la url pero solo aparece el primer registro con las tres cosas bien y todos los demas aparece nadamas el ID.

Que esta mal en mi codigo que no me deja insertar los bien los campos.

Gracias de antemano.

Última edición por jaxa; 20/03/2009 a las 14:29
  #2 (permalink)  
Antiguo 19/03/2009, 14:09
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: Problema al hacer varios inserts

En el codigo que posteaste tienes

$url = nl2br($_POST['url']);

y luego

$urls=split("<br />",$urls);

Ahora si con eso no se corrige tu problema, podrias checar como estan llegando los elementos del formulario en $_POST a ver si viene por ahi el error
  #3 (permalink)  
Antiguo 19/03/2009, 14:57
 
Fecha de Ingreso: marzo-2009
Mensajes: 33
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema al hacer varios inserts

Gracias por responder pero el problema persiste.

Ya arregle lo de 'url' y probe como me mandaba el $_POST y funciona perfectamente y tambien el split.

Tambien intente cmbiando un poco lo que estaba en el querry dejandolo asi:
Código:
for($r=0;$r<count($palabras);$r++){
   		$ica = $palabras[$r];
		$iur = $letra[$r];		
  		mysql_query("INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('$id','$ica','$iur')") or die(mysql_error());
	  	}
Aun asi sigue sin funcionar y no entiendo porque falla.
  #4 (permalink)  
Antiguo 20/03/2009, 13:50
 
Fecha de Ingreso: marzo-2009
Mensajes: 33
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema al hacer varios inserts

Disculpen por hacer doble post pero no creo que muchos vean la pag 4y me urge much esto.

En el cogido cambie mysql_query por un echo para ver que estaba mandando y para mi sorpresa el echo lo manda perfectamente bien pero no funciona alguien sabra que tenga que hacer. intente abrir y cerrar la conexion antes de cada mysql_query pero no funciono.

Ayuda me estoy empezando a desesperar.
  #5 (permalink)  
Antiguo 20/03/2009, 14:10
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: Problema al hacer varios inserts

Veamos, no he entendido bien tu problema. Se envian todos los datos, pero solo seguarda uno?

Saludos

EDITADO:

Prueba usando explode, en vez de split.

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.

Última edición por the_web_saint; 20/03/2009 a las 14:16
  #6 (permalink)  
Antiguo 20/03/2009, 14:26
 
Fecha de Ingreso: marzo-2009
Mensajes: 33
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema al hacer varios inserts

Esque ya esta listo todo llas sentencias de my_sql y todo.

Si pongo echo por darte un ejemplo me aparece esto:
Código:
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','1','1')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 2',' 2')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 3',' 3')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 4',' 4')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 5',' 5')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 6',' 6')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 7',' 7')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 8',' 8')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 9',' 9')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 10',' 10')
INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e',' 11',' 11')
Pero si en vez de hecho pongo mysql_query solo se agrega bien el primero y los otros no, parece que estubiera haciendo esto y solo se agraga el id:
Código:
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','1','1')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('4c35abffe1cec5e9b16189fc0ebff34e','','')')
Vuelvo a dejar el codigo del for haber si ahi esta el error.
Código PHP:
$str nl2br($_POST['capitulos']);
$palabras=split("<br />",$str); 
$let nl2br($_POST['url']);
$letra=split("<br />",$let);  // esto esta bien

   
for($r=0;$r<count($palabras);$r++){
           
$ica $palabras[$r];
        
$iur $letra[$r];
        
//echo "<br>";
        //echo "mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('$id','$ica','$iur')')";        
          
mysql_query("INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('$id','$ica','$iur')") or die(mysql_error());
          } 
  #7 (permalink)  
Antiguo 20/03/2009, 14:29
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: Problema al hacer varios inserts

y ese id, es la llave primaria en tu tabla??
Porque no puede ser el mismo para todos los registros.
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #8 (permalink)  
Antiguo 20/03/2009, 14:33
 
Fecha de Ingreso: marzo-2009
Mensajes: 33
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema al hacer varios inserts

No es la llave primaria es nadamas para identificar cual serie es y el id es lo unico que se me agrega esta muy raro porque si esta haciendo todos los insert pero no esta pasando bien los arrays de los splits en ese momento pero si lo hago con echo funciona perfectamente.
  #9 (permalink)  
Antiguo 20/03/2009, 14:50
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: Problema al hacer varios inserts

Código php:
Ver original
  1. $str = nl2br($_POST['capitulos']);
  2. $palabras=split("<br />",$str);
  3. $let = nl2br($_POST['url']);
  4. $letra=split("<br />",$let);  // esto esta bien
  5.  
  6.    for($r=0;$r<count($palabras);$r++){
  7.            $ica = trim(ltrim($palabras[$r], " "), " ");
  8.         $iur = trim(ltrim($letra[$r], " "), " ");
  9.         //echo "<br>";
  10.         //echo "mysql_query('INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('$id','$ica','$iur')')";        
  11.           mysql_query("INSERT INTO `Capitulos` (`ID`,`Capitulo`,`Url`) VALUES ('$id','$ica','$iur')") or die(mysql_error());
  12.           }

Intenta con esto a ver.

Saludos
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #10 (permalink)  
Antiguo 20/03/2009, 15:12
 
Fecha de Ingreso: marzo-2009
Mensajes: 33
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema al hacer varios inserts

Gracias por el codigo pero no me funciono sigue pasando lo mismo que el primer registro se inserta bien pero los otros nadamas el id.
  #11 (permalink)  
Antiguo 20/03/2009, 15:19
Avatar de the_web_saint  
Fecha de Ingreso: mayo-2008
Ubicación: localhost/tierra/america/panama
Mensajes: 1.229
Antigüedad: 16 años
Puntos: 43
Respuesta: Problema al hacer varios inserts

Tengo una sospecha, trata de aclararme esta duda.
Si esos valores tienen un espacio en blanco como se ve en donde pegas el resultado del echo, no se guardará, ya que lo tienes como int en tu DB, cierto?

Por eso lo de los trim y ltrim, haz el echo ahora con los trim y ltrim a ver si te imprime los espacios esos.

Espero respuesta.
__________________
..::The Saint::..
El pesimista se queja del viento; el optimista espera que cambie; el realista ajusta las velas.
  #12 (permalink)  
Antiguo 20/03/2009, 15:47
 
Fecha de Ingreso: marzo-2009
Mensajes: 33
Antigüedad: 15 años, 2 meses
Puntos: 0
Respuesta: Problema al hacer varios inserts

Los tengo como varchar ya que generlmente guardara urls y nombres solo puse los numeros como ejemplo.
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 11:40.