Escritura de ficheros en php

0

Por admin | Para la categoría de php | noticia del 07-08-2009

Escritura de ficheros en php

En este ejemplo se puede ver como un formulario en html es el encargado de recoger una serie de campos de para enviarselor a un script de php.

Se establece una constante mendiante “define” esa constantes se llama NOMBRE_FICHERO, mediante fopen abrimos el fichero para añadidura. Se crea un manejador de fichero $fichero. Para escribir un fputs(manejador,variable o cadena de texto ) escribimos en el el fichero el valor del campo del formulario.

Si queremos mostrar en un html los datos que acabamos de grabar y los ya existentes, se llama a la función leer_campo($fichero) para leer los campos del fichero grabados y mosrtrarlos por pantalla

Tenemos

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<style type="text/css">
 
   th { 
       font-size:12px;
      }
 
   td.azul { font-size:14px;
        color:blue;
       text-align:left; }
 
   body { background-color:#E3C993; }	  
 
   p { text-align:center; }	  
 
</style>
</head>
 
<body>
<p>
INFORMACI&Oacute;N DE LOS ART&Iacute;CULOS ALMACENADOS
</p>
 <table border="2" cellpadding="2" align="center">
    <tr>
      <th>Código</th>
      <th>Descripción</th>
      <th>Precio de coste</th>
      <th>Precio de venta</th>
      <th>Stock actual</th>
      <th>Stock mínimo</th>
    </tr>
 
<?php
   function leer_campo($fichero)
      {
      if (!feof($fichero))
         {
         $buffer = fgets($fichero, 4096);
         // Elimina el carácter de salto de línea chop
         $buffer = chop($buffer);
         // Si la línea se ha quedado vacía 
         // no va a salir
 
         }
      else $buffer="";
      return $buffer;
      }
 
   // Se abre el fichero para guardar los datos al final
   define('NOMBRE_FICHERO', 'pedidos.dat');
   $fichero = fopen(NOMBRE_FICHERO, 'a');
 
   // Se escribe en el fichero una línea por cada campo
   fputs($fichero, "$codigo\n");
   fputs($fichero, "$descripcion\n");
   fputs($fichero, "$coste\n");
   fputs($fichero, "$venta\n");
   fputs($fichero, "$stock\n");
   fputs($fichero, "$minimo\n");
 
   // Se cierra el fichero para que los datos queden guardados
   fclose($fichero);
 
   // Se abre el fichero para leer los datos de los productos
   $fichero = fopen(NOMBRE_FICHERO, 'r');
 
   // Se recorre el fichero para mostrar el nuevo contenido
   while (!feof($fichero))
      {
      echo "<tr>";
      // Se leen los seis campos
      for ($i = 0; $i < 6; $i++)
         {
 
		 $cadena=leer_campo($fichero);
		 if ($cadena!="")
		 { 
          echo "<td class='azul'>";          
		  echo $cadena, "</td>";
		  }
 
         }
      echo "</tr>";
      }
 
   // Se cierra el fichero
   fclose($fichero);
?>
</table>

Escribe un comentario