• Domingo 17 de Noviembre de 2024, 20:43

Autor Tema:  uso de explode.. en archivo txt  (Leído 1951 veces)

cesand

  • Miembro MUY activo
  • ***
  • Mensajes: 127
    • Ver Perfil
uso de explode.. en archivo txt
« en: Viernes 11 de Diciembre de 2009, 04:24 »
0
hola como va?

necesito mostrarles un codigo en el que estoy intentando leer un archivo txt creado con un form con t de separaciones uso explode() para partir la lina de texto y no me lo hace... no de error pero no lo hace y devulve la pagina en blanco como que el txt estuviera en blanco...

este uso para crear el txt..

Código: PHP
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  4. <title>Documento sin título</title>
  5. </head>
  6.  
  7. <body>
  8. <?php
  9. @$eleccion=fopen($_SERVER['DOCUMENT_ROOT']."/curso/archivos/eleccionmod.txt","a");
  10. if (!$eleccion){
  11. echo "no se encontro el archivo";
  12. } else {
  13. $nom=trim($_POST['nombre']);
  14. $marca=$_POST['marca'];
  15. $mod=$_POST['modelo'];
  16. $general=date("d,m,y")."t".$nom."t".$marca."t".$mod."n";
  17. fputs($eleccion,$general);
  18. echo "tu eleccion fue archivada";
  19. fclose($eleccion);
  20. }
  21. echo "<a href='mdelos.php'>vota por otro</a>";
  22. ?>
  23.  
  24. </body>
  25. </html>
  26.  
  27.  

obiamente este levanta los datos del form... y ahora les muestro en el que esta el explode

Código: PHP
  1. <html>
  2.  
  3. <head>
  4.   <title>a</title>
  5. </head>
  6.  
  7. <body>
  8.  
  9. <?php
  10.    $elec= fopen($_SERVER['DOCUMENT_ROOT']."/curso/archivos/eleccionmod.txt", "r");
  11.    
  12.    $numero_elec = count($elec);
  13.    // echo $numero_elec;
  14.    if ($numero_elec == 0)
  15.    {
  16.      echo "<p><strong>No hay elecciones pendientes
  17.         Inténtalo más tarde.</strong></p>";
  18.    }
  19.    echo "<table border=1>";
  20.    echo "<tr><th>Fecha </th>
  21.             <th>Nombre</th>
  22.             <th>Marca</th>
  23.             <th>Modelos</th>
  24.  
  25.         <tr>";
  26.    for ($i=0; $i<$numero_de_elec; $i++)
  27.    {
  28.  
  29.       $linea = explode( "t", $elec[$i] );
  30.  
  31.  
  32.       echo "<tr>
  33.                 <td>".$linea[0]."</td>
  34.                <td align = right>".$linea[1]."</td>
  35.                <td align = right>".$linea[2]."</td>
  36.                <td align = right>".$linea[3]."</td>
  37.  
  38.            </tr>";
  39.    }
  40.    echo "</table>";
  41.    fclose($elec);
  42. ?>
  43. </body>
  44.  
  45. </html>
  46.  

les agradeceria mucho le den una mirada. no puedo saber donde tengo el error..

saludos.

DriverOp

  • Miembro MUY activo
  • ***
  • Mensajes: 201
    • Ver Perfil
Re: uso de explode.. en archivo txt
« Respuesta #1 en: Viernes 11 de Diciembre de 2009, 04:58 »
0
Yo no veo que estés leyendo el archivo en ninguna parte. Y además hay cosas que no se entienden:
Código: PHP
  1. $numero_elec = count($elec);
  2.  
Pero $elec es el handle del archivo que acabas de abrir  :blink:

Código: PHP
  1. for ($i=0; $i<$numero_de_elec; $i++)
  2.  
¿Dónde está definido $numero_de_elec ?  :blink:

Creo que has querido hacer algo como esto:

Código: PHP
  1.  
  2. $elec= fopen($_SERVER['DOCUMENT_ROOT']."/curso/archivos/eleccionmod.txt", "r");
  3.  
  4. echo "<table border=1>";
  5.    echo "<tr><th>Fecha </th>
  6.            <th>Nombre</th>
  7.            <th>Marca</th>
  8.            <th>Modelos</th>
  9.  "
  10.  
  11. while (!feof($elec)) {
  12.   $linea = fgets($elec);
  13.   $lineas = explode("t",$linea);
  14.   echo "<tr>"; 
  15.   foreach($lineas as $key => $value) {
  16.   echo "<td>".$value;
  17. } // foreach
  18. } // while
  19.  
  20. echo "</table>";
  21.  
  22. fclose($elec);
  23.  
  24.