|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Dec 2003
Città: (VA)
Messaggi: 298
|
(PHP HELP) Creare file da pagina PHP
Ciao a tutti.
Devo creare uno script che mi permetta di creare e uploaddare automaticamente su server, un file .php che cambia ogni volta in base alle mie scelte. Per creare un file vuoto si usa questa funzione <? touch("nome_cartella/nome_file.php") ?> Ma il problema è che il file io non lo voglio vuoto........... e credo esista un modo per creare un file NON VUOTO con una sola stringa di codice. Grazie a tutti quelli che risponderanno!!! |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Dec 2003
Città: (VA)
Messaggi: 298
|
Mi sà che c'entrano qualcosa queste funzioni:
fopen(); fwrite(); fclose(); Ma nessuno le ha mai usate? |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Dec 2003
Città: (VA)
Messaggi: 298
|
Ma visto che nessuno el frattempo mi ha risposto mi dò la risposta da solo!!
<?php $handle = fopen ("/home/rasmus/file.txt", "r"); $handle = fopen ("/home/rasmus/file.gif", "wb"); $handle = fopen ("http://www.example.com/", "r"); $handle = fopen ("ftp://user ?> Anche se non sono riuscito ancora a capire come posso mettere la pagina php che si genererà da sola! |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
pagina php che si genera ogni volta ?? cosa intendi. sei stato un po vago. non ho la piu pallida idea di quello che hai intenzione di fare.
ciao |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Dec 2003
Città: (VA)
Messaggi: 298
|
Ti spiego meglio. Io uso uno script di statistiche molto famoso e mi sono accorto che per rendere molto più veloce il lavoro di inserimento dei download devo modificarlo, in quanto mi appoggio su dei file php esterni e non direttamente sul file .exe. Per problemi di download manager, bisognerebbe creare un piccolissimo script che generi automaticamente questo file .php in base ai dati che vengono immessi prima. Il mio problema è quindi generare automaticamente dei file.php indipendenti, ma diversi in quanto differenziano dall'ID di rifererimento.
Io avevo pensato ad una cosa del genere: <? $page = "CODICE SORGENTE DELLA PAGINA"; $handle = fopen ("/web/htdocs/www.tuosito.it/$nomepagina", "a"); fwrite($handle, "$page"); ?> Purtroppo non sono ancora riuscito a farlo funzionare in quanto non riesco a fargli leggere il codice php nella variabile $page... Il codice da mettere in $page è questo: <html> <head> <?php $option['host']=""; // Indirizzo server MySQL o IP $option['database']=""; // Nome database MySQL $option['user_db']=""; // Utente MySQL $option['pass_db']=""; // Password MySQL // tento la connessione a mysql $error['no_connection']="<b>ERRORE</b>: Non riesco a connettermi a MySQL!."; $error['no_database']="<b>ERRORE</b>: Il database indicato non esiste! Il database va creato prima di effettuare l'installazione."; $db=@mysql_connect($option['host'],$option['user_db'],$option['pass_db']) or die($error['no_connection']); @mysql_select_db($option['database']) or die($error['no_database']); $query = "SELECT `id` , `nome` , `exe` FROM `stats_downloads` WHERE `id` = $id LIMIT 0 , 1 "; $result = mysql_query($query, $db); while ($row = mysql_fetch_array($result)) // rivela il nome del file {echo " <meta http-equiv=\"refresh\" content=\"2;URL=$row[exe]\"></head> <link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.tuosito.it/style/style.css\"> <body> <table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"> <tr> <td height=\"65\" background=\"/style/bgdownload.jpg\">Il download di <strong>$row[nome] </strong> sta per essere avviato.<br> Se entro 5 secondi il download non è ancora partito clicca <a href=\"$row[exe]\">qui</a> <br><br> <div align=\"center\"><input type=\"button\" name=\"Chiudi\" value=\"Chiudi\" onClick=\"parent.close();\"></div> </td> </table> " ;} mysql_close(); ?> </body> </html> |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 11471
|
mhm. forse ho capito. le Heredoc strings potrebbero fare al caso tuo.
qui ci sono piu info ed esempi: http://it2.php.net/types.string funzionano piu o meno cosi: Codice:
$codice_html = <<<EOD <html> <head> [...] </html> EOD; fwrite ($codice_html); ciao |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Dec 2003
Città: (VA)
Messaggi: 298
|
Abbandono l'idea in quanto la ritengo troppo laboriosa....
ora stò studiando un metodo secondo me più efficace basato su un file download.php che controlla direttamente i click ai download!! Grazie comunque per la risposta!! Mi servirà! |
|
|
|
|
|
#8 | |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 217
|
Quote:
http://it.php.net/manual/en/function.fopen.php poi lo upi con le varie funzioni ftp Ciao! |
|
|
|
|
|
|
#9 | |
|
Senior Member
Iscritto dal: Dec 2003
Città: (VA)
Messaggi: 298
|
Quote:
Ehe abbiamo postato insieme comunque il problema non è la creazione e l'upload del file php ma la modifica in quanto deve prendere il codice HTML elaborato in una variabile.... ma non è possibile... ora stò studiando un altro metodo!!! Ciauz Ultima modifica di born2mod : 24-12-2003 alle 13:44. |
|
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 217
|
elaborare del codice html?
eval($stringa) |
|
|
|
|
|
#11 |
|
Senior Member
Iscritto dal: Dec 2003
Città: (VA)
Messaggi: 298
|
Buono come metodo...
ho scoperto che esiste anche la funzione eregi_replace() che esegue la stessa funzoina di eval()... Ora vedo di interagirlo usando una variabile tipo www.nomesito.it/download.php?id=10 in poche parole il file php deve leggere l'ID di riferimento e creare una pagina con la funzione eval() o eregi_replace() in base all'ID specificato! |
|
|
|
|
|
#12 |
|
Senior Member
Iscritto dal: Oct 2001
Messaggi: 217
|
non ho capito precisamente che devi fare :P
a seconda del valore passato ( magari via post e hashato ;-) ) devi creare un'altra pagina? io ho usato eval, ora controllo che cambia da eregi_replace |
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Non capisco perchè tu debba creare una nuova pagina dentro ad un file...
Non ti basta fare un file download.php che prende l'id del download... Prende dal database l'url... Entro 5 secondi (sempre con il meta tag) fa partire il link da cui fare il download... |
|
|
|
|
|
#14 | |
|
Senior Member
Iscritto dal: Dec 2003
Città: (VA)
Messaggi: 298
|
Quote:
La soluzione è il meta tag!! Ma mi sono bloccato qui per la realizzazione |
|
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Ma per usare il meta tag perchè scrivere una apgina php in file ?
Non puoi far caricare il link direttamente dalla pagine che invia anche il metatag ? [code] Ti passi l'id del download e poi recuperi $row["exe"] e poi semplicemente stampi ilemtatag a schermo... echo "<meta http-equiv=\"refresh\" content=\"2;URL=$row[exe]\"></head> <link rel=\"stylesheet\" type=\"text/css\" href=\"http://www.tuosito.it/style/style.css\"> <body> <table width=\"100%\" border=\"0\" cellspacing=\"0\" cellpadding=\"0\"> <tr> <td height=\"65\" background=\"/style/bgdownload.jpg\">Il download di <strong>$row[nome] </strong> sta per essere avviato.<br> Se entro 5 secondi il download non è ancora partito clicca <a href=\"$row[exe]\">qui</a> <br><br> <div align=\"center\"><input type=\"button\" name=\"Chiudi\" value=\"Chiudi\" onClick=\"parent.close();\"></div> </td> </table>"; |
|
|
|
|
|
#16 |
|
Senior Member
Iscritto dal: Dec 2003
Città: (VA)
Messaggi: 298
|
E' vero!!!
Hai ragione!!
Era una cosa talmente semplice che non mi ricordavo esistesse +!!! Sai le vacanze fanno brutti scherzi!!! |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:53.



















