Foros del Web » Programando para Internet » PHP »

La he liado actualizando una tabla!!

Estas en el tema de La he liado actualizando una tabla!! en el foro de PHP en Foros del Web. Hola, tengo un problema gordísimo , resulta que quería actualizar una tabla (cambiar la dirección a otra carpeta , en este caso "Aventuras") con php ...
  #1 (permalink)  
Antiguo 14/11/2007, 07:28
Avatar de Masterkhan  
Fecha de Ingreso: septiembre-2006
Ubicación: En mi casa
Mensajes: 64
Antigüedad: 17 años, 7 meses
Puntos: 0
La he liado actualizando una tabla!!

Hola, tengo un problema gordísimo , resulta que quería actualizar una tabla (cambiar la dirección a otra carpeta , en este caso "Aventuras") con php a través de un bucle del tipo:

Código PHP:
 $conex mysql_connect("xxxx",
                            
"xxxx",
                            
"xxxxxx")or die("Mysql Error :P");
mysql_select_db("xxxxx") or die("The database doesnt exist");
$I="SELECT * from Libros where Tema='Aventuras'";
$IN=mysql_query($I,$conex) or die("Error, Please contact with the Webmaster");
while (
$O=mysql_fetch_array($IN))
{
//$O['Titulo']--> Es el título del libro
$im="Aventuras/$O['Título']";
$U="UPDATE Roms SET Link='$im' where Tema='Aventuras'";
$UP=mysql_query($U,$conex); 
El problema viene que me actualiza todos los registros pero con el título del primero en vez de actualizarse todos cada uno con su nueva ubicación.Se actualizan todos con el primero.
  #2 (permalink)  
Antiguo 14/11/2007, 09:01
Avatar de BrujoNic
Super Moderador
 
Fecha de Ingreso: noviembre-2001
Ubicación: Costa Rica/Nicaragua
Mensajes: 16.935
Antigüedad: 22 años, 5 meses
Puntos: 655
Re: La he liado actualizando una tabla!!

Trasladado de BD a PHP. Favor no poner código de programación en BD.

Función de la sección de Base de Datos
__________________
La tecnología está para ayudarnos. No comprendo el porqué con esa ayuda, la gente escribe TAN MAL.
NO PERDAMOS NUESTRO LINDO IDIOMA ESPAÑOL
  #3 (permalink)  
Antiguo 14/11/2007, 09:09
Avatar de jorgedx  
Fecha de Ingreso: junio-2005
Ubicación: Chile, Los Andes
Mensajes: 406
Antigüedad: 18 años, 10 meses
Puntos: 4
Re: La he liado actualizando una tabla!!

cuantas filas en el campo tema tienen la palabra aventuras??

hazte esa pregunta.
__________________
Nuevamente a las pistas ...
  #4 (permalink)  
Antiguo 14/11/2007, 09:13
 
Fecha de Ingreso: noviembre-2007
Mensajes: 157
Antigüedad: 16 años, 5 meses
Puntos: 3
Re: La he liado actualizando una tabla!!

No te serviría algo así? más automatizado todo. (Haz backup de la base de datos antes)

Código PHP:
 $conex mysql_connect("xxxx",
                            
"xxxx",
                            
"xxxxxx")or die("Mysql Error :P");
mysql_select_db("xxxxx") or die("The database doesnt exist");
$query 'UPDATE Roms SET Link = concat(Tema,"/",Título)';
$result mysql_query($query); 

Última edición por Lanselot; 14/11/2007 a las 09:17 Razón: Faltaba un cacho de código xD
  #5 (permalink)  
Antiguo 14/11/2007, 09:14
Avatar de Masterkhan  
Fecha de Ingreso: septiembre-2006
Ubicación: En mi casa
Mensajes: 64
Antigüedad: 17 años, 7 meses
Puntos: 0
Re: La he liado actualizando una tabla!!

Gracias Lanselot. Les dado de pleno

Última edición por Masterkhan; 14/11/2007 a las 09:25
  #6 (permalink)  
Antiguo 14/11/2007, 09:21
Avatar de kaninox  
Fecha de Ingreso: septiembre-2005
Ubicación: In my House
Mensajes: 3.597
Antigüedad: 18 años, 7 meses
Puntos: 49
Re: La he liado actualizando una tabla!!

eso sera por que tienes el update o actualizador fuera del bucle que haces debe ir adentro para que valla tomando a medida que avanza el bucle los datos y no que llegue al final y te actualize todo con el ultimo valor del bucle...
para ello un bucle while estaria bien
__________________
Gokuh Salvo al mundo. PUNTO!!!!
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 19:50.