Originariamente inviato da php_34
si purtroppo non esiste (credo) una documentazione in linea, basta ingegnarsi un po'. Prendi d'esempio il cutenews, uno script ottimo per le news senza database mysql, e che usa i files di testo. Per esempio facciamo che un file di testo è strutturato così:
le righe di utenti.php
[list=1][*]<?php die("
<font color="red">ATTENZIONE!!</font>
Non hai i permessi per accedere a questo file!!"); ?>[*]utente 1
[--]password md5 dell'utente 1[*]utente 2
[--]password md5 dell'utente 2[*]utente 3
[--]password md5 dell'utente 3[/list=1]
il testo in grassetto lo chiamiamo
separatore, la prima riga serve a mostrare all'utente un messaggio d'errore.
supponiamo di voler fare qualcosa per il login, con mysql normalmente si userebbe mysql_fetch_rows, o altre funzioni.
Come facciamo con i file di testo? Allora:
questo è il file index.php:
<?php
function check_user($user, $md5pwd) {
$result = FALSE;
$users_db =
file("users.php");
foreach($users_db as $line) {
$user_b = explode("
[--]", $line);
if($user_b[0] == $user && $user_b[1] == $md5pwd) {
$result = TRUE;
break; //diminuiamo il tempo di esecuzione, anche di poco
}
return $result;
}

VVoVe: COSA AVRO' SCRITTO??
esaminiamo questo codice:
$users_db =
file("users.php");
questo fa sì che si crei un array con in ogni riga un utente (ricordate users.php?)
foreach($users_db as $line) {
esegue le operazioni per ogni elemento dell'array.
$user_b = explode("
[--]", $line);
con explode dividiamo le varie informazioni e infine con un if vediamo se sono corrette.
andiamo avanti:
if(check_user($_COOKIE['utente'], $_COOKIE['password']) {
//sì l'utente è loggato, mostriamogli la pagina
}else{
require("paginadilogin.php");
}
bene questo controlla che l'utente sia loggato, capito più o meno? penso che scriverò una pillola...