Foros del Web » Programando para Internet » PHP »

mysql_query y bucles

Estas en el tema de mysql_query y bucles en el foro de PHP en Foros del Web. Saludos!. Tengo el siguiente problema: Tengo un archivo de texto, en el cual tengo respaldada informacion. La informacion esta en lineas del tipo INSERT INTO ...
  #1 (permalink)  
Antiguo 27/10/2003, 11:08
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago
Mensajes: 105
Antigüedad: 20 años, 9 meses
Puntos: 1
mysql_query y bucles

Saludos!.
Tengo el siguiente problema:
Tengo un archivo de texto, en el cual tengo respaldada informacion. La informacion esta en lineas del tipo INSERT INTO mitabla VALUES ('datos') .
El siguiente script lo uso para leer la linea del archivo e insertar de inmediato. Pero es aqui donde tengo el probleama. Por alguna razon no realiza la insercion de los datos, ¿porque pasa eso?

Código PHP:
<?

  $fp 
fopen($path,"r");
  while (
$linea fgets($fp,1024)){
    
$res mysql_query($linea,$conexion);    
  }
?>
Gracias de ante mano por las respuestas.
  #2 (permalink)  
Antiguo 27/10/2003, 11:59
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Pero .. $linea de tu archivo de texto plano ... ¿que es? .. ¿que dato es?

Recuerda que debe ser SQL con sintax correcta.

Si no ves el error .. usa:

Código PHP:
mysql_query($linea,$conexion) or die(mysql_error()); 
(el $res .. no es necesario asignalo a una variable si vas hacer un INSERT .. )

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 27/10/2003, 12:44
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago
Mensajes: 105
Antigüedad: 20 años, 9 meses
Puntos: 1
Cita:
Mensaje Original por Cluster
[B]Pero .. $linea de tu archivo de texto plano ... ¿que es? .. ¿que dato es?
$linea es un sql completo, como por ejemplo: "INSERT INTO mitabla(campo) VALUES (campo)"

Por eso es que la consulta la hago directamente en mysql_query($linea,$conexion)

Tambien hago un echo a $linea y me muestra el INSERT sin errores de sintanxis.

Asi que eso, no se que sera.
Gracias de todas maneras.
SaludoS!
  #4 (permalink)  
Antiguo 27/10/2003, 13:39
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Y .. usastes la estructura que te propongo con mysql_error()? .. ahí veras usando mysql_error() los posibles mensajes de error de SQL que puedas tener.

Un saludo,

PD: .. para el caso concreto y suponiendo que en cada línea de tu archivo de texto plano tienes una instrucción SQL .. yo usaria file() y procesaría el array obtenido tipo:

Código PHP:
$lineas=file("tu_archivo.tal");
foreach (
$lineas as $linea){
  
mysql_query($linea,$conexion);

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 27/10/2003, 14:07
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago
Mensajes: 105
Antigüedad: 20 años, 9 meses
Puntos: 1
Amigo Cluster gracias por tu ayuda.
El error era que tenia que llamar mi include de conexion dentro de la funcion. Ahi dunciono altiro.

En todo caso tu foreach me optimizo bastante el script
Muchisimas Gracias!

Saludos cordiales
  #6 (permalink)  
Antiguo 27/10/2003, 14:14
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
jeje .. bueno ya aprendistes hoy algo nuevo:
"el ambito de las variables de una función" (le llaman "scope" también)

Si quieres ver más sobre eso:
http://www.php.net/manual/en/languag...bles.scope.php

Te lo comento porqué el include() que llama a tu conexión quedaría mejor fuera de tus funciones .. En tus funciones sólo declara como globales esas variabels de conexión o bien pasalas como parámetro ..

Un saludo,

PD: Para otra vez especifica si el código lo usas en una función .. o donde, como veras es muy importante ese dato que no mencionastes y que por suerte te diste cuenta tu mismo.
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #7 (permalink)  
Antiguo 27/10/2003, 14:57
 
Fecha de Ingreso: junio-2003
Ubicación: Santiago
Mensajes: 105
Antigüedad: 20 años, 9 meses
Puntos: 1
Ok, pues ya se y lei el articulo que pusiste.
Gracias de nuevo y seguire tus consejos.

Saludos cordiales.
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 14:55.