-
Problema scrittura file
Scusa Gianluca non riesco ad aprire una nuova discussione e ti mando qui lo script che dicevo non scrive niente nel file txt
Codice PHP:
<?php
// calcolare il giocatore che deve iniziare il gioco in modo casuale
$giocatore == "5\n"; // momentaneamente consideriamo che inizia il giocatore 5
//scrittura dati dal file in_gioco
$var=fopen("./in_gioco.txt","w");
fwrite($var, $giocatore);
fclose($var);
chmod("./in_gioco.txt", 666);
echo"fatto!, abbiamo scritto $testo nel file : $giocatore";
//header('Location: ./NFile.php?OP=0'); // avvio il programma indicando che siamo all'inizio OP = 0
?>
EDIT:
chmod("./in_gioco.txt", 666);
l'aveo messo dopo vari tentativi ed ho provato a metterlo sia prima di aprire il file che dopo
ho anche provato a creare il file con ftp e dargli i permessi 666
-
Citazione:
Codice PHP:
$giocatore == "5\n";
Cosa dovrebbe far questa riga?
Inoltre, fai sempre un controllo sul valore restituito dalla fopen, ovvero su $var.
Per scrivere su file, con PHP ti consiglio di usare la file_put_contents(), che è meno macchinoso della file() + fwrite() + fclose()...
Ciao!
-
Codice PHP:
$giocatore == "5\n";
è il dato che volevo memorizzare in effetti mi serve solo 5 ma ho aggiunto dopo varie prove lo \n
provato file_put_contents()
col seguente codice
Codice PHP:
$giocatore == "5\n"; // momentaneamente consideriamo che inizia il giocatore 5
http://dreadnaut.altervista.org/_alt...-sign-tiny.png edit:
Codice PHP:
//scrittura dati dal file in_gioco
file_put_contents("./in_gioco.txt", $giocatore);
ma il file contiene sempre 0 byte
provato anche il controllo su fopen
Codice PHP:
//scrittura dati dal file in_gioco
$vai = file_exists("./player.txt");
if ($vai==true) {
$var=fopen("./in_gioco.txt","w");
fwrite($var, $giocatore);
fclose($var);
echo "scritto";
}
mi dice che ha scritto ma in effetti il file contiene sempre 0 byte
anche se lo scrivo io un valore qualsiasi prima e poi avvio questo script
http://dreadnaut.altervista.org/_alt...-sign-tiny.png edit:
scusa ho copiato male il file che controllo prima di fare fopen è quello che mi serve realmente non quello che vedi sopra
cioè in ambedue le istruzioni c'è il file in_gioco.txt
http://dreadnaut.altervista.org/_alt...-sign-tiny.png edit:
ma possibile che non ci sia un modo certo di scrivere un semplice numero in un file di testo?
-
Il modo c'è, ed è file_put_contents(). Leggi con attenzione la documentazione, perché se non funziona vuol dire che lo stai usando incorrettamente.
-
e cosa c'è di errato in quello che ho inviato prima?
lo ripeto anche qui
Codice PHP:
<?php
$giocatore == "5";
//scrittura dati dal file in_gioco
file_put_contents("./in_gioco.txt", $giocatore);
?>
questo è tutto lo script
io devo scrivere 5 nel file in_gioco.txt che si trova nella stessa cartella
-
ok risolto
grazie per l'attenzione
-
Come hai risolto? Ho lo stesso problema.
-
Come è il tuo sorgente? Cosa vuoi fare? Ti conviene aprire un nuovo topic per il tuo problema.
Ciao!