Ciao a tutti.
Vorrei esporvi questo mio problema.
Ho due pagine in PHP che compongono un piccolo guestbook che scrive su un file di testo, chiamato database.txt.
Il tutto funziona egregiamente in locale con EasyPHP, ma una volta pubblicato sul server online, non funziona più, inquanto non scrive sul file database.txt.
Pagina "index.php"
Codice PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Guestbook</title>
<style type="text/css">
table{
text-align:center;
border:1px solid #ff0000;
width:60%;
}
tr, td{
text-align:center;
border:1px dotted #ff0000;
width:60%;
</style>
</head>
<body>
<table>
<tr>
<td>
<h1>Firma il guestbook</h1>
</td>
</tr>
<tr>
<td>
<form action="guest.php" method="post">
Inserisci il tuo nome:
<input type="text" id="utente" name="utente" /></p>
Inserisci la tua e-mail:
<input type="text" id="email" name="email" /></p>
Inserisci il messaggio:
<textarea name="messaggio" rows="5" cols="30"></textarea>
<input type="submit" value="Firma">
<input type="reset" valur="Cancella">
</form>
</td>
</tr>
<?php
include ("database.txt");
?>
</table>
</body>
</html>
Pagina "guest.php"
Codice PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento senza titolo</title>
</head>
<body>
<?php
//recupero i dati e li inserisco in tre variabili di tipo stringa
$utente=$_POST['utente'];
$messaggio=$_POST['messaggio'];
$email=$_POST['email'];
//ricavo l'ora e la data odierna
$data_ora = date("d/m/Y H:i:s");
//assegno ad una variabile il database di testo
$db_testo="database.txt";
//Ora viene controllato che i dati inseriti
//dall'utente siano corretti
if($utente==""){
echo "Il nome inserito non è corretto, inserisci il nome";
}elseif($messaggio==""){
echo "Inserisci il tuo messaggio";
}elseif($email==""){
echo "Inserisci un indirizzo e-mail";
}else{
//se tutto è corretto procedo a scrivere le
//informazioni sul database di testo
$guestbook = fopen($db_testo, "a");
$txt='<tr><td>[b][email="'.$email.'"]'.$utente.'[/email][/b]
';
$txt .= $messaggio . "
";
$txt .= "[i]Messaggio scritto in data: " . $data_ora . "[/i]</td></tr>";
fwrite($guestbook, $txt);
fclose($guestbook);
echo '[url="index.php"]Torna indietro[/url]';
}
?>
</body>
</html>
Qualche idea e consiglio su come risolvere il problema?
Grazie
Ciao