Newsgroup: it.comp.www.php
Titolo: PHP e validazione pagina HTML al W3C

Sono inceppato in un problema nel validare la mia pagina HTML al W3C
[
http://validator.w3.org/
]  generata con il PHP. Ho questo codice, che
genera un link con un argomento:
<?  if ($versionestampa != true)
	echo "<a href=\"?stampa\" target=\"_top\">Stampa</a>\n "; ?>
Infatti sottoponendo la pagina al validatore (validata come HTML 4.01
Transitional) ritorna 4 errori tutti riferiti a questo errore
generale:
"Line 129, column 18: cannot generate system identifier for general
entity "PHPSESSID"
<a href="?stampa&PHPSESSID=3748e848145cea960ef086b332dc1576"
target="_top" clas
An entity reference was found in the document... [CUT]"
In pratica il PHP aggiunge automaticamente al link un argomento
PHPSESSID e usa il giusto carattere &, ma secondo il W3C bisogna usare
l'equivalente &amp; per dei problemi con alcuni browser.
C'e' un metodo per fare in modo che il PHP generi il link corretto?
Grazie
-- 
Scritto da Gordon
E-mail: 
lordg...@despammed.com

 
cerca nel php.ini queste linee:
; The separator used in PHP generated URLs to separate arguments.
; Default is "&".
;arg_separator.output = "&amp;"
e decommenta (togli il ';') l'ultima. Riavvia il server.
-- 
Spoken: How much is that gorilla in the window?
Take our advice, At any price, A gorilla like Magilla is mighty nice.
Gorilla, Magilla Gorilla for sale

e decommenta (togli il ';') l'ultima. Riavvia il server.
grazie per la soluzione, ma nella versione online del sito non posso
toccare la configurazione del PHP, peccato!


 e risponde:
Grazie a tutti, ho comunque trovato una soluzione (non proprio
immediata come un semplice link) ma che consente di validare la pagina
senza dover modificare il PHP.ini:
if ($versionestampa != true) {
	echo "<script language=\"javascript\"
		 type=\"text/javascript\"><!-- 	\n";
	echo "function reloadstampa () {\n";
	echo "document.location = \"?stampa\";\n";
	echo "}\n --></script>\n";
	echo "<a href=\"Javascript:reloadstampa ()\"
		target=\"_top\">Stampa</a>\n ";
}
?>
Grazie a tutti, ugualmente


 toccare la configurazione del PHP, peccato!
puoi inserirlo nell'htaccess, cosi' non dovrai modificare la configurazione
del server ma solo quella di un ramo di directory.
ciao ciao
-- 
Fabrizio Balliano
http://www.crealabs.it

 
Buona la soluzione.
Potevi intervenire a livello di script con 'ini_set'
http://it.php.net/manual/it/function.ini-set.php
,



http://it.php.net/manual/it/function.ini-set.php
,
si' stavo provando se sul server remoto funziona (speriamo, perche'
per altri normali link la soluzione non puo' ogni volta dover essere
risolta con dei java script)


 ha scritto nel messaggio
news:bocgd09a6tuppd2fv...@4ax.com...


del server ma solo quella di un ramo di directory.
posso provare anche questo.
grazie


del server ma solo quella di un ramo di directory.
hai qualche esempio di file htaccess che modifichi la configurazione
del PHP?
Grazie


del server ma solo quella di un ramo di directory.
hai qualche esempio di file htaccess che modifichi la configurazione
del PHP?
Grazie
-- 


 del PHP?
in questo caso puoi scrivere una cosa cosi':
php_value session.use_trans_sid 0
php_value arg_separator.input "&amp;"
php_value arg_separator.output "&amp;"
la prima riga dice di non aggiungere il session id in maniera trasparente
(non so se ti serve)
per le altre attenzione a utilizzare correttamente input e output...


per le altre attenzione a utilizzare correttamente input e output...
ho provato ma sembra non funzionare...
casomai contatto il servizio del server remoto per sapere se gli
.htaccess sono abilitati.
Mi viene il dubbio: con i virtual server di Apache sono ugualmente
abilitati?


 abilitati?
si
