ciao
come posso fare a leggere il codice html o php di una pagina...
non ci sto riuscendo
ciao
come posso fare a leggere il codice html o php di una pagina...
non ci sto riuscendo
Usa questa funzione.
prima funzionava...
ora non più
ti posto lo script
if(isset($_GET["visualizzafile"])){
echo <<<visualizzafile
<form action="$file" method="POST">
<input type="text" name="vfile">
<input type="submit" name="visualizza" value="Visualizza">
<input type="reset" value="Reset">
</form>
visualizzafile;
}
if(isset($_POST["visualizza"])){
$visualizzafile=$_POST["vfile"];
$vfile=file_get_contents('$visualizzafile', true);
echo "<div align=\"center\"><textarea rows=\"100%\" cols=\"100%\" value=\"$vfile\"></textarea></div>";
}
Codice PHP:
if(isset($_POST["visualizza"])){
$visualizzafile=$_POST["vfile"];
$vfile=file_get_contents($visualizzafile, true);
echo "<div align=\"center\"><textarea rows=\"100%\" cols=\"100%\">".htmlentities($vfile)."</textarea></div>";
}
6 un mito!!!
funziona
una cosa sai come posso fare a distinguere con veri colori i vari tipi di codice
tipo php di un colore
html di un altro
ecc.
Devi usare un syntax highlighter. Il PHP di suo permette di colorare soltanto la sintassi PHP con la funzione highlight_string.
Ti consiglio GeSHi.
e se volessi per css e altro
dovrei applicarlo
su $vfile come posso fare
if(isset($_POST["visualizza"])){
$visualizzafile=$_POST["vfile"];
$vfile=file_get_contents($visualizzafile, true);
echo "<div align=\"center\"><textarea rows=\"100%\" cols=\"100%\">".htmlentities($vfile)."</textarea></div>";
}
Non ho capito cosa intendi. Comunque, ripeto, se devi colorare delle pagine in php c'è la funzione che ti ho suggerito sopra.
ti spiego
il testo non viene inserito al interno della textarea e non viene coloratore il codice phpecho "<div align=\"center\"><textarea class=\"php\" rows=\"100%\" cols=\"100%\">".highlight_string(htmlentities($vfi le))."</textarea></div>";
non capisco dove sbaglio
Usa highlight_string()
Codice PHP:
$echo = "<div align=\"center\"><textarea class=\"php\" rows=\"100%\" cols=\"100%\">".highlight_string(htmlentities($vfi le))."</textarea></div>";
echo highlight_string($echo);
ho fatto cosi funziona ma il codice non si vede al interno della textarea
e sulla textarea stampa il numero 1if(isset($_POST["visualizza"])){
$visualizzafile=$_POST["vfile"];
$vfile=file_get_contents($visualizzafile, true);
$vfile=highlight_string($vfile);
echo "<div align=\"center\"><textarea rows=\"100%\" cols=\"100%\">".htmlentities($vfile)."</textarea></div>";
}
Ultima modifica di hotmailpower : 08-08-2009 alle ore 15.16.57
Devi fare al contrario! =D
Codice PHP:
$vfile = htmlentities($vfile);
echo "<div align=\"center\"><textarea rows=\"100%\" cols=\"100%\">".highlight_string($vfile)."</textarea></div>";
non funziona lo legge solo cosi
il testo al interno della textareaecho "<div align=\"center\"><textarea rows=\"100%\" cols=\"100%\">".htmlentities($vfile)."</textarea></div>";
come posso fare
Ultima modifica di hotmailpower : 08-08-2009 alle ore 16.07.07
Ad highlight_string() devi passare true come secondo parametro, per ottenere il valore di ritorno.
Nella textarea continuerai però a visualizzare soltanto l'html del codice colorato.
Solitamente si aggira questo problema sovrapponendo l'area di testo, resa trasparente, ad un iframe dove mostrare l'output.
Ciao!
P.S: c'è anche highlight_file() ;)
Ultima modifica di programmazioned : 08-08-2009 alle ore 16.50.09
scusa non ti ho capito
ti posto il codice
come posso fare dove devo mettere highlight_string()vorri fare come questo sopra di altervista pero al interno della textareaCodice PHP:
if(isset($_POST["visualizza"])){
$visualizzafile=$_POST["vfile"];
$vfile=file_get_contents($visualizzafile, true);
echo "<div align=\"center\">\n<textarea rows=\"100%\" cols=\"100%\">".htmlentities($vfile)."</textarea>\n</div>";
}
Usa il codice che ti ha postato sIM, passando però true come secondo parametro:
in questo modo troverai l'html che mostra il tuo codice colorato dentro l'area di testo, e non fuori.Codice PHP:
highlight_string($stringa, true);
Ora ti chiedo cosa tu voglia fare:
- mostrare semplicemente il codice nel file, colorato, senza permetterne la modifica. In questo caso la textarea sarebbe inutile;
- mostrare e permettere la modifica del codice in tempo reale (edito il codice php nella textarea -> lo vedo colorato, come nell'editor avanzato di vBulletin);
- mostrare e permettere la modifica del codice non in tempo reale (edito il codice php nella textarea -> salvo -> lo vedo colorato, un pò come "anteprima messaggio" qui)
Siccome, a seconda di quello che vuoi fare, potrebbe trattarsi di una cosa non molto semplice, hai preso in considerazione la possibilità di sfruttare degli editor prefatti, come FCKeditor?
Ciao!
Ultima modifica di programmazioned : 08-08-2009 alle ore 17.11.49
la prima e forse anche la seconda ma casomai dopo
ma perche sarebbe inutile la textarea
tramite true lo fatto non funziona...
Non puoi usarla in quel modo. Levi la textarea e lasci il div, poi vedrai il codice colorato. Non lo colora all'interno della textbox, semplicemente perchè visualizza soltanto il codice html che poi serve a generare il codice colorato. Pertanto, leva la textarea.
Funziona: visualizzi l'html all'interno della textarea, pur non ottenendo completamente quanto vuoi: per questo ti ho chiesto cosa dovresti fare dopo.tramite true lo fatto non funziona...
Se ti va bene mostrare semplicemente il codice, la textarea non ti serve perchè non ci sarebbe nulla da modificare.
Ergo, basterebbe un pre o un div.
La modifica in tempo reale è una cosa piuttosto complessa, rinnovo il consiglio di utilizzare un prefatto.
Ciao!
Ultima modifica di programmazioned : 08-08-2009 alle ore 17.10.40
capit..
lo messo solo il div e solo che il codice lo fa vedere sopra il div e non dentro
echo "<div align=\"center\" class=\"php\">".htmlentities(highlight_string($vfi le))."</div>";
Usa il codice che ti ha postato sIM, passando però true come secondo parametro:
[omissis]
in questo modo troverai l'html che mostra il tuo codice colorato dentro l'area di testo, e non fuori.Ciao!Codice PHP:
echo '<pre class="php">', highlight_string($vfile,true), '</pre>';
Ultima modifica di programmazioned : 08-08-2009 alle ore 17.22.57
ti ho gia detto col true
non funziona XD
Copia il codice sopra, tale e quale, poi ne riparliamo.
Ciao!
non funziona ne anke
fa vedere questo
<?php
error_reporting("E_ALL &~ E_NOTICE &~ E_WARNING");
di colore nero
Hai lasciato htmlentities(), così hai ottenuto le entità HTML.
Ciaooo!Codice PHP:
if(isset($_POST["visualizza"])){
$visualizzafile=$_POST["vfile"];
$vfile=file_get_contents($visualizzafile);
echo '<pre class="php">', highlight_string($vfile,true), '</pre>';
}
funziona in fine ho cambiato pre con div
peccato che nella textarea non si possa fare
graxz.^^