Foros del Web » Programando para Internet » PHP »

Problemas con la lectura de un archivo plano

Estas en el tema de Problemas con la lectura de un archivo plano en el foro de PHP en Foros del Web. Hola. El problema es el siguiente: Utilizo este codigo para leer un archivo plano, cuyos registros se guardan en una bd, pero el codigo funcionaba ...
  #1 (permalink)  
Antiguo 18/04/2005, 13:00
 
Fecha de Ingreso: mayo-2004
Mensajes: 16
Antigüedad: 19 años, 9 meses
Puntos: 0
Problemas con la lectura de un archivo plano

Hola.

El problema es el siguiente:

Utilizo este codigo para leer un archivo plano, cuyos registros se guardan en una bd, pero el codigo funcionaba correctamente y ahora es como si el archivo plano estuviera vacio pero esta normal, qué puedo hacer?

Código PHP:
<?php
session_start
();
if (
$_SESSION["autenticado"] != "SI")
header("Location:index.php");
  exit();
}
?>
<?php
require_once("Connections/administrador.php");
$archivo $_POST['archivo'];
$archivo ".../sorteos/".$archivo;
define ('nombre_fichero'$archivo);
$fichero file(nombre_fichero) or die('no existe el fichero');
if (!
$fichero)
{
 echo 
"EL NOMBRE DEL ARCHIVO ESTA ERRADO.\n";
 echo 
"VERIFIQUELO!";
 echo 
"<a href='nuevosorteo.php'>VOLVER</a>";
 die();
}
$i 0;
$newsorteo $_POST["sorteo"];
$DS $_POST["DS"];
$MS $_POST["MS"];
$AS $_POST["AS"];
$fecha $AS."-".$MS."-".$DS;
//obtenemos el ultimo numero de sorteo incluido y comparamos con el ingresado
mysql_select_db($database_loteria,$administrador);
$sql_last "SELECT sorteo FROM sorteo WHERE sorteo = '$newsorteo'";
$sql_last mysql_query($sql_last) or die (mysql_error());
$rows mysql_num_rows($sql_last);
if (
$rows == 0)
{
$insert_sorteo "INSERT INTO sorteo (sorteo,fecha) VALUES ($newsorteo,'$fecha')";
$insert_sorteo mysql_query($insert_sorteo) or die (mysql_error());
foreach (
$fichero as $linea)
{    
    
$sql "";
    
$leido sscanf($linea,"\t%d\t%d\n"$numero$serie);
    
//incluir en la base de datos
    
echo "numero = $numero, serie = $serie";
    if (
$i == 4)
        {
            
$premio 1500000000;
            
$sql "INSERT INTO numeros (id,numero,serie,sorteo,premio) VALUES ('','$numero','$serie','$newsorteo','$premio')";
        }
    if(
$i == 6)
        {
            
$premio 100000000;
            
$sql "INSERT INTO numeros (id,numero,serie,sorteo,premio) VALUES ('','$numero','$serie','$newsorteo','$premio')";
        }
    if(
$i == 8)
        {
            
$premio 50000000;
            
$sql "INSERT INTO numeros (id,numero,serie,sorteo,premio) VALUES ('','$numero','$serie','$newsorteo','$premio')";
        }
    if ((
$i 10) and ($i <= 13))
        {
            
$premio 20000000;
            
$sql "INSERT INTO numeros (id,numero,serie,sorteo,premio) VALUES ('','$numero','$serie','$newsorteo','$premio')";
        }
    if ((
$i 15) and ($i <= 54))
        {
            
$premio 3000000;
            
$sql "INSERT INTO numeros (id,numero,serie,sorteo,premio) VALUES ('','$numero','$serie','$newsorteo','$premio')";
        }
        
$i $i +1;
    if (
$sql != ""
    
$sql mysql_query($sql) or die (mysql_error());
    if (
$i 64)
    {
    
mysql_close($administrador);
    
header("Location:opcionesadmin.php");
    exit();
    }    
}
}
else
{
mysql_close($administrador);
die(
"ESTE SORTEO YA HA SIDO INCLUIDO");
header("Location:nuevosorteo.php");
}
?>

Última edición por Cluster; 18/04/2005 a las 14:15
  #2 (permalink)  
Antiguo 18/04/2005, 14:23
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Si dices que "antes" funcionaba y ahora no .. si no dás más detalles sobre tus pruebas es complicado dar alguna solución ...

Como dices .. ya has verificado que el archivo fuente de texto plano sigue siendo el mismo y con el mismo formato ..

No sé si has ido verificando por ejemplo haciendo cosas como:

Código PHP:
echo "<pre>";
print_r($fichero);
echo 
"</pre>"
si el archivo es leido correctamente .. y así con el resto de tus variables .. como por ejemplo $_POST y ver si están llegando las variables esperadas y con sus valores esperados ..

En general .. se trata de que veas por donde está siendo ejecutado tu código y en que condiciones ..

Un saludo,
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:58.