Ciao per ora lo sto usando in locale con apache. Anch'io avevo pensato ai cookie ma non so come fare per usarli.

Ti metto qua il codice del form di compilazione per autenticarsi e inserire dei post.

inserisci.php


Codice PHP:
<?php
require("config.php"); require("funzioni.php");
?>
<html>
    <head>
        <title><?php echo $titolo ?></title>
        <link rel="stylesheet" type="text/css" href="stile.php" />
    </head>
    <body>
        <?php if ($_SERVER["REQUEST_METHOD"] == "GET") {
?>
<h1>Invia un post</h1>
<form method="post" <?php echo "action=\"",
$_SERVER["PHP_SELF"], "\""?> > 
Username: <input type="text" name="utente" size="10"/>
Password: <input type="password" name="password" size="10"/>

 <hr/>
Titolo: <input type="text" name="titolo" size="50"/>


Contenuto: 

<textarea name="contenuto" rows="10" cols="60"></textarea>


<input type="submit" value="Pubblica"/>
</form>  

<?
}
else
if (!
utenteValido($_POST["utente"], $_POST["password"])) { 
?>
<h2>Errore</h2>


Non sei autorizzato all'inserimento. Torna al [url="indice.php"]blog[/url].</p>
<?
} else {
registra($_POST["titolo"], $_POST["contenuto"]);
echo 
"Il post è stato pubblicato. Torna al <a
href=\"indice.php\">Blog</a>.</p>"
;
}
?>

</body>
</html>
Qui metto le funzioni a cui fa riferiemento il codice (utenteValido,registra e dbConnect)

Codice PHP:

function registra($titolo$testo) {
$conn dbConnect(); 
$titolo nl2br(htmlentities($titolo));
$testo nl2br(htmlentities($testo));
$data date("Y-m-d H:i:s");
$sql "INSERT INTO posts(data, titolo, testo) VALUES('" 
$data "', '" $titolo "', '" $testo "')";
mysql_query($sql) or die("Errore nella query: "
$sql "\n" mysql_error());
mysql_close($conn);
}

function 
utenteValido($utente$password) {
$conn dbConnect();
$sql "SELECT password FROM utenti WHERE utente = '" 
$utente "'";  
$risposta mysql_query($sql) or die("Errore nella query: "
$sql "\n" mysql_error());
if (
mysql_num_rows($risposta) == 0)

return 
FALSE;
$riga mysql_fetch_row($risposta);
mysql_close($conn);
return (
md5($password) == $riga[0]); 
}

function 
dbConnect() {
    
$conn mysql_connect("localhost","pwlsblog","segreta")
    or die(
"Errore nella connessione al db:" .mysql_error());
    
    
mysql_selectdb("pwlsblog")
    or die(
"Errore nella selezione del db:" .mysql_error());
    
    return 
$conn;