PDA

Visualizza la versione completa : [php] scrivere su file


MrX87
12-10-2010, 00:25
Ciao a tutti sto cercando di scrivere su un file tramite php...in poche parole tramite uno script php prelevo una parola scritta su uno spazio di testo di una pagina html, e i dati prelevati volevo salvarli su un file...premetto che lavoro su ubuntu.
posto qua sotto il codice...se devo chiarire ancora qualche altra cosa...chiedetemi pure


<?php

$nome = $_POST['stringa'];
$scrivi_file = fopen("/home/dati.txt","w");
fwrite($scrivi_file,$nome);
fclose($scrivi_file);
echo $nome;
?>
lo script penso che funziona perchè la stringa nome viene stampata correttamente sulla pagina del browser, ma non viene salvata da nessuna parte!
Inoltre non so se nella funzione fopen() come primo parametro posso mettere tutto il path del file dove deve essere scritta la stringa nome e se tramite il parametro "w" il file viene creato in caso non esistesse...io suppongo questo perchè so che in C è così!
grazie a tutti

PS: mi sono accorto adesso che c'è il forum apposito per php....chiedo scusa e chiedo a qualche moderatore se potrebbe spostare il mio post nel forum apposito!
grazie mille ancora

alka
12-10-2010, 01:43
PHP ha una propria area dedicata: sposto la discussione.

MrX87
12-10-2010, 13:21
nessuno riesce a darmi una mano per questo piccolo problema..??

Samleo
12-10-2010, 13:50
Prova inserendo solo il nome del file:



$stringa= $_POST['stringa'];
$scrivi_file=fopen("dati.txt","w");
fwrite($scrivi_file,$stringa);
fclose($scrivi_file);


:ciauz:

MrX87
12-10-2010, 13:57
nulla....ho provato anche dome dici tu...e ho provato anche a fare un controllo sulla fopen() e mi da un errore di apertura nel file:


?php

$nome = $_POST['stringa'];
$scrivi_file = fopen("dati.txt","w");
if ( $scrivi_file == FALSE ) {
print "Errore apertura file!";
}
fwrite($scrivi_file,$nome);
fclose($scrivi_file);
echo $nome;
?>

facendo questo controllo noto che la fopen() mi ritorna FALSE...quindi c'è qualcosa che non va!

Samleo
12-10-2010, 14:07
Prova direttamente così:


$scrivi_file = fopen("dati.txt","w") or die("Impossibile aprire il file");

Ed esegui lo script!

MrX87
12-10-2010, 15:11
mi da impossibile aprire il file...quindi anche qua si capisce che qualcosa non va nella fopen()!
L'unico dubbio che mi viene in mente è che ci siano problemi di permessi di scrittura, perchè il file php è in /var/www insieme al file della pagina html...in questa directory non penso che sia possibile scrivere senza permessi di super user, quindi non vorrei che il file php che viene eseguito senza permessi non è in grado si creare nessun file!

Loading