Creare un'alternativa al database con un file di testo. Pseudo_database con file di testo .txt
ALLWEB free
Web Directory Script Linguaggi
Italiano Inglese Tutte
 
 31 Oct 2014
aggiungi in preferiti  
Home    Mappa directory    Script




Alternativa database:

Ogni spazio web ha determinate "leggi" per l'inserimento, la creazione e la manipolazione dei file.
Non è detto che il nostro script di esempio funzioni così come è riportato. Per utilizzarlo verificate le impostazioni di scrittura sul vostro spazio web (potrete sicuramente variarle!!) e verificate che le variabili globali non siano obbligatorie. (vedi Eccezioni get o post oppure Php register_globals)


Introduzione:

C'è la possibilità per alcune procedure di utilizzare un file .txt come uno pseudo-database. Sicuramente un metodo più complesso e meno pratico dove la sicurezza lascia a desiderare, (se qualcuno conosce il nome ed il percorso del file potrete perdere tutto il lavoro ed i dati raccolti).
Per creare uno script del genere dobbiamo utilizzare le funzioni array e strutturare il file di testo secondo alcuni criteri.


Procedura:

  • Per prima cosa diciamo che ogni riga del file di testo sarà associata ad un elemento array, pertanto dobbiamo usare la funzione PHP fopen("nome_file.txt","a+");
  • La logica ci impone di creare un array con la funzione file("nome_file.txt"); che associa ad ogni riga del file di testo un elemento array.
  • A questo punto contiamo gli elementi array con la funzione count($array);
Adesso abbiamo un array, ne conosciamo gli elementi ed il loro numero, possiamo proseguire il resto del programma con le funzioni che in genere caratterizzano gli array.


Codice di esempio:

<table>//inizio tabella form inserimento dati
<form action="articolo_php_alternativa_database.php" method="post">
<tr><td>
Inserisci messaggio
</td></tr>
<tr><td>
<input type="text" name="var1" size="25" maxlength="80">//var1 la scriveremo nel file .txt
Cliccando invia ti ricolleghi a questa pagina e memorizzi il messaggio nel file .txt
<input type="submit" value="Invia">
</form>
</table>
Inizio codice PHP:
<?
$var1=$_POST['var1'];//recupero la variabile globale var1 di tipo POST
if ($var1!=null){//Attiviamo PHP solo se il form è stato cliccato
echo "Risultato del file di testo:<br>";
$var=@fopen("nome_file.txt","a+");//apro il file .txt (modalità lettura/scrittura)
@fwrite($var,$var1."\n");//scrivo la variabile del form nel file .txt
$var2=file("nome_file.txt");//estraggo l'array dal file .txt
@fclose($var);//chiudo il file .txt
$i=count($var2);//conto gli elementi nell'array
for($a=0; $a<=$i; $a++){//uso il ciclo for per guardare nell'array
echo $var2[$a]."<br>";//scrivo tutti gli elementi dell'array, ma potevo eseguire qualunque altra operazione con le variabili!!!
}//fine ciclo for
}//fine ciclo if
?>
Se ti interessa il codice PHP copia/incolla nella tua pagina. La tabella form va modificata.


Esempio in pratica:

Lascia un messaggio, ma ti informo che il tuo numero IP verrà registrato...


Inserisci messaggio

Cliccando 'invia' ti ricolleghi a questa pagina e memorizzi il messaggio nel file .txt