- Home
- Categorie
- Coding e Sistemistica
- Coding
- Problema fwrite
-
Problema fwrite
Ciao,
ho intenzione di creare un sito che comprende, alla registrazione, l'autocreazione di una pagina USERNAMESCELTO.php. Il contenuto sarà uguale per tutti.
Quindi, ho fatto questo:$nome = $_POST['username']; if (!file_exists($file)) { $file = fopen($nome.".php", 'w'); fwrite($file, ""); fclose($file); }
e l'ho inserito nella pagina dove è contenuto tutto il lato php del form di registrazione.
Funziona, tutto ok: ma solo quando vado a mettere tra le virgolette un semplice testo HTML; quando inserisco (faccio degli esempi, ho provato di tuttto) un include php, un redirect, un iframe, o cose del genere, mi dà pagina bianca in registra.php (dove è stato inserito lo script).Non so se mi spiego, potete aiutarmi?
-
Se il contenuto da scrivere è sempre lo stesso, conviene che ti crei il file e lo chiami ad esempio "modello.txt".
Quando devi fare questa copia, ti basta aprire il file modello.txt, leggerne il contenuto e scriverlo nel nuovo file.
Oppure, se hai la possibilità di farlo e soprattutto con le dovute precauzioni, usa shell_execshell_exec("cp modello.txt nuovofile.php"); ```Questo metodo del shell_exec però te lo consiglio SOLO ed esclusivamente se fai un opportuna bonifica dei dati in ingresso. Se usi questo metodo e ti trovi con dei problemi di sicurezza sul sito perchè non fai tutto il necessario per bonificare l'input, la colpa è solo ed esclusivamente tua!!
-
Mi hai un po' spaventato col metodo del shell_exec, quindi preferisco il primo, ahah!
Mi sapresti dire come, però? S:
-
Ehehe
Beh...fopen per aprirlo, file_get_contents per leggerlo, e poi usi fwrite per scrivee il nuovo file
-
Grazie mille!
-
Risolto, ti ringrazio!