Visualizzazione risultati 1 fino 7 di 7

Discussione: [risolto] [xoops] Rendere validati i link (era "php ed accessibilità")

  1. #1
    Guest

    Predefinito [risolto] [xoops] Rendere validati i link (era "php ed accessibilità")

    Ciao a tutti :)

    Uso il CMS Xoops, ed ho installato php myadmin messo a disposizione da altervista.
    Io vorrei rendere il mio sito conforme allo standard w3c ed in particolare XHTML 1.0 Transitional.
    Dopo aver utilizzato il validator messo a disposizione dal w3c mi sono reso conto che c'erano degli errori di conformità nei link generati in automatico dai moduli xoops.
    Mi spiego meglio...
    Aggiungendo un download nel modulo PD-Downloads di Xoops (questo vale anche per altri 2 moduli), si genera il relativo link al file aggiunto.
    Il problema è che nel link generato in automatico, il validator, mi dà degli errori...eccone alcuni:

    Codice:
    Warning  Line 294 column 208: cannot generate system identifier for general entity "artid".
    
    ...es/sections/index.php?op=viewarticle&artid=6"> DeeJay TV</a></td></tr>
    
    An entity reference was found in the document, but there is no reference by that name defined. Often this is caused by misspelling the reference name, unencoded ampersands, or by leaving off the trailing semicolon (;). The most common cause of this error is unencoded ampersands in URLs as described by the WDG in "Ampersands in URLs".
    
    Entity references start with an ampersand (&) and end with a semicolon (;). If you want to use a literal ampersand in your document you must encode it as "&amp;" (even inside URLs!). Be careful to end entity references with a semicolon or your entity reference may get interpreted in connection with the following text. Also keep in mind that named entity references are case-sensitive; &Aelig; and &aelig; are different characters.
    
    If this error appears in some markup generated by PHP's session handling code, this article has explanations and solutions to your problem.
    
    Note that in most documents, errors related to entity references will trigger up to 5 separate messages from the Validator. Usually these will all disappear when the original problem is fixed.
    Codice:
    Error  Line 294 column 208: general entity "artid" not defined and no default entity.
    
    ...es/sections/index.php?op=viewarticle&artid=6"> DeeJay TV</a></td></tr>
    
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.
    Dal report degli errori mi è stato linkato un sito per poter risolvere tale problema. Il sito è il seguente.
    In questo sito viene spiegato che per poter risolvere il problema occorre apportare delle modifiche al file php.ini...il problema è che tale file risiede sui server di altervista e noi utenti non possiamo modificarlo.

    Domanda: Come risolvo?

    Grazie a tutti
    MaXxXx

  2. #2
    Guest

    Predefinito

    Molto banalmente, credo che risolveresti mettendo al posto del carattere '&' la stringa '&amp;'.
    Però non saprei dirti dove agire perchè non conosco tale CMS.

    Sposto nella stanza adatta e modifico il titolo.


    Ciaooooo!!!!!

  3. #3
    Guest

    Predefinito

    Ciao debug e grazie x la risposta
    Infatti il problema è proprio quello, cioè modificare la stringa usando il tag '&amp;'
    il problema però è che tale errore si verifica in un link generato in automatico dal php. Non essendo un blocco personalizzato, o un qualcosa che abbia aggiunto io, non saprei proprio dove andare a modificare l'impostazione per generare dei link conformi agli standard w3c.
    La soluzione che mi è stata proposta dal report del w3c è appunto andare a modificare il file php.ini in questo modo:

    Codice:
    arg_separator.output = "&amp;"
    Ma il problema è che noi non possiamo modificarlo.

    Oppure intervenendo con il file .htaccess inserendo questa stringa:

    Codice:
    php_value arg_separator.output &amp;
    Ho già provato ma senza risultati, infatti se nel php.ini è impostato un valore diverso anche modificandolo con un .htaccess sarebbe inutile

    Oppure intervenendo sulla funzione ini_set con questo script:

    Codice:
    <?php ini_set('arg_separator.output','&amp;'); ?>

    Suggerimenti?

    Ciao
    MaXxXx

  4. #4
    Guest

    Predefinito

    Come già detto, dovresti individuare lo script (o gli script) che genera i link in automatico e fare la sostituzione come descritta sopra.
    Non penso che gli altri suggerimenti da te postati c'entrino qualcosa.


    Ciaooo!!!

  5. #5
    Guest

    Predefinito

    Ciao a tutti
    Ho risolto il mio problema...avevo attivato dei moduli per visualizzare degli articoli in automatico sulla mia home page, e mi sono reso conto che nel templates del blocco, che appunto permettava l'aggiunta di articoli in automatico sulla home, c'era la voce '...&...' per generare in automatico i vari link..mi è bastato modificare il template del blocco automatico sostituendo appnto '&' con '&amp;' ed ho risolto.
    Vi ringrazio ancora per i consigli.
    Ciao a tutti
    MaXxXx

  6. #6
    Guest

    Predefinito

    Riapro brevemente questo topic per ringraziarvi, dato che ho risolto lo stesso problema nell'identico modo. Mi chiedo perchè mai nel sito del W3C non indicano una soluzione del genere tra le altre. Forse immaginano che sia scontata...

  7. #7
    Guest

    Predefinito

    Citazione Originalmente inviato da w3cvalidator
    This is usually a cascading error caused by a an undefined entity reference or use of an unencoded ampersand (&) in an URL or body text. See the previous message for further details.

    Ciao

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •