Foros del Web » Programando para Internet » PHP »

Problema en foreach

Estas en el tema de Problema en foreach en el foro de PHP en Foros del Web. <?php // Eliminamos todos los campos de la tabla require("configuracion.php"); // Conectamos con la b $db_conexion= mysql_connect("$sql_host", "$sql_usuario", "$sql_pass") or die("No se pudo conectar a ...
  #1 (permalink)  
Antiguo 18/01/2010, 07:12
 
Fecha de Ingreso: enero-2010
Mensajes: 46
Antigüedad: 14 años, 3 meses
Puntos: 0
Problema en foreach

<?php

// Eliminamos todos los campos de la tabla

require("configuracion.php");
// Conectamos con la b
$db_conexion= mysql_connect("$sql_host", "$sql_usuario", "$sql_pass") or die("No se pudo conectar a la Base de datos") or die(mysql_error());

mysql_select_db("$sql_db") or die(mysql_error());
// Realizamos la consulta
$usuario_consulta = mysql_query("SELECT * FROM $sql_tabla") or die("No se pudo realizar la consulta a la Base de datos");
while($array=mysql_fetch_array($usuario_consulta))
{
foreach ($array as $value) {
echo $value;
}
$archivo = fopen("/home/fran/Escritorio/log.txt", "a");
fwrite ($archivo, $value);
fclose ($archivo);
}
$usuario_consulta = mysql_query("TRUNCATE TABLE $sql_tabla") or die("No se pudo realizar la consulta a la Base de datos");

mysql_close();

?>


Hola muy buenas me llamo fran y soy de murcia, tengo un problema y creo que es con el foreach ya que el echo me devuelve dos veces los valores de la sql y el txt solo se añade un numero de el ultimo campo, no lo entiendo, alguien me hecha una manita, un saludo y gracias.
  #2 (permalink)  
Antiguo 18/01/2010, 07:22
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 en foreach

sabes como funciona mysql_fetch_array? (mas especificamente los valores de retorno).
y el codigo que escribe el txt no lo tienes dentro del ciclo que recorre los campos
  #3 (permalink)  
Antiguo 18/01/2010, 09:49
 
Fecha de Ingreso: enero-2010
Ubicación: Guadalajara, Jalisco
Mensajes: 12
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: Problema en foreach

Cita:
Iniciado por xiskoct Ver Mensaje
<?php

// Eliminamos todos los campos de la tabla

require("configuracion.php");
// Conectamos con la b
$db_conexion= mysql_connect("$sql_host", "$sql_usuario", "$sql_pass") or die("No se pudo conectar a la Base de datos") or die(mysql_error());

mysql_select_db("$sql_db") or die(mysql_error());
// Realizamos la consulta
$usuario_consulta = mysql_query("SELECT * FROM $sql_tabla") or die("No se pudo realizar la consulta a la Base de datos");
while($array=mysql_fetch_array($usuario_consulta))
{
foreach ($array as $value) {
echo $value;
}
$archivo = fopen("/home/fran/Escritorio/log.txt", "a");
fwrite ($archivo, $value);
fclose ($archivo);
}
$usuario_consulta = mysql_query("TRUNCATE TABLE $sql_tabla") or die("No se pudo realizar la consulta a la Base de datos");

mysql_close();

?>


Hola muy buenas me llamo fran y soy de murcia, tengo un problema y creo que es con el foreach ya que el echo me devuelve dos veces los valores de la sql y el txt solo se añade un numero de el ultimo campo, no lo entiendo, alguien me hecha una manita, un saludo y gracias.
Veamos, la escritura en el archivo es porque el fwrite esta fuera del foreach, asi nada más.

Sobre el echo.... supongo que puede ser por los arreglos.... intenta usandolo asi...

Código PHP:
$archivo fopen("/home/fran/Escritorio/log.txt""a");
while(
$array=mysql_fetch_array($usuario_consultaMYSQL_ASSOC))
    foreach (
$array as $key => $value)
    {
        echo 
"Key: ".$key."; Value: ".$value."<br />";
        
fwrite ($archivo$value);
    }
fclose ($archivo); 
  #4 (permalink)  
Antiguo 18/01/2010, 10:58
 
Fecha de Ingreso: septiembre-2008
Mensajes: 22
Antigüedad: 15 años, 7 meses
Puntos: 1
Respuesta: Problema en foreach



un dato esta linea esta mal
Código PHP:
$db_conexionmysql_connect("$sql_host""$sql_usuario""$sql_pass") or die("No se pudo conectar a la Base de datos") or die(mysql_error()); 
deberia ser asi:

Código PHP:
$db_conexionmysql_connect("$sql_host""$sql_usuario""$sql_pass") or die("No se pudo conectar a la Base de datos "mysql_error()); 

Etiquetas: foreach
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 08:22.