Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it L'avatar di LA VALE
    Registrato dal
    Sep 2003
    Messaggi
    667

    guestbook php: problema con function non riconosciuta

    Ho inserito nel form per il mio guestbook, uno script che deve impedire l'uso del codice html all'interno dei campi...
    L'ho provato per il campo textarea, ma non funziona..
    Il codice è questo:

    Codice PHP:
    #<?php echo($i 1); ?> -  <?php echo($this->timestamp); ?>

    Nome:  <?php echo($this->name); ?>

    E-mail:  [email="<?php echo($this->email); ?>"] <?php echo($this->email); ?>[/email]

    Spazio-tempo: <?php echo($this->spaziotempo); ?>

    WWW - Homepage: [url="http://<?php echo($this->homepage); ?>"] <?php echo($this->homepage); ?>[/url]

    Messaggio: <?php echo($this->entry);
    function 
    removeAttributes($htmlText)
    {
    $stripAttrib "'\\s(class)=\"(.*?)\"'i"//remove classes from html tags;
    $htmlText stripslashes($htmlText);
    $htmlText preg_replace($stripAttrib''$htmlText);
    $stripAttrib "/(font\-size|color|font\-family|line\-height):\\s".
    "(\\d+(\\x2E\\d+\\w+|\\W)|\\w+)(;|)(\\s|)/i";
    //remove font-style,color,font-family,line-height from style tags in the text;
    $htmlText stripslashes($tagSource);
    $htmlText preg_replace($stripAttrib''$htmlText);
    $htmlText str_replace(" style=\"\""''$htmlText); //remove empty style tags, after the preg_replace above (style="");
    return $htmlText;
    }
    function 
    removeEvilTags($source)
    {
    return 
    preg_replace('/<(.*?)>/ie'"'<'.removeEvilAttributes('\\1').'>'"$source);
    }
    ?>



    <hr />

    Ma il server mi restituisce questo errore:

    Fatal error: Cannot redeclare removeattributes() in /membri2/lv4er/guestbook/html_entry.php on line 9

    ovvero function removeAttributes($htmlText)
    non viene riconosciuto..
    mA forse c'è anche altro che non va...
    è uno script vche ho trovato bello e pronto, non conosco php... Qualcuno mi sa aiutare?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Fai attenzione a quante volte tale funzione viene definita nelle script, due o più definizioni di una stessa funzione portano infatti ad un errore.

  3. #3
    Utente di HTML.it L'avatar di LA VALE
    Registrato dal
    Sep 2003
    Messaggi
    667
    Quello che deve venire stampato a schermo è:

    echo($this->entry);

    Questa funzione deve servire a togliere di mezzo eventuali tag tipo <a>, però così non funziona.. Ripeto che non conosco php, se mi puoi aiutare a modificarla, ci dev'essere un errore ma non saprei cosa..
    Grazie


  4. #4
    Utente di HTML.it L'avatar di LA VALE
    Registrato dal
    Sep 2003
    Messaggi
    667
    Up up and thanks...


  5. #5
    dove hai preso quella cosa li??
    Questa volta, più che un voto.. è favoreggiamento.

  6. #6
    Utente di HTML.it L'avatar di LA VALE
    Registrato dal
    Sep 2003
    Messaggi
    667
    Da un blog/forum che mi era stato segnalato su questo sito...
    C'erano vari sistemi, ho preso questo...

    Cos'ha che non va??

  7. #7
    Utente di HTML.it L'avatar di puddu
    Registrato dal
    Mar 2001
    Messaggi
    143
    Ma non fai prima ad usare la funzione htmlentities e vivere felice?

  8. #8
    Utente di HTML.it L'avatar di LA VALE
    Registrato dal
    Sep 2003
    Messaggi
    667
    Originariamente inviato da puddu
    Ma non fai prima ad usare la funzione htmlentities e vivere felice?

    Non conosco php, Non ho tempo di studiarlo e devo usare le cose già belle pronte

    Se hai tempo e mi scrivi il codice con htmlentities che fa al caso mio, deve funzionare con echo($this->entry); mi fai felice!!

  9. #9
    secondo mè hai preso una cosa troppo complicata.. e poi nn c'è solo quel codice.. ci stà tutta una classe dietro a quel codice li..
    Questa volta, più che un voto.. è favoreggiamento.

  10. #10
    Utente di HTML.it L'avatar di puddu
    Registrato dal
    Mar 2001
    Messaggi
    143
    Prova sostituendo...
    Codice PHP:
    echo ($this->entry); 
    con...
    Codice PHP:
    echo htmlentities($this->entry); 
    Ovviamente puoi eliminare le funzioni removeAttributes e removeEvilTags. A differenza di queste, htmlentities non eliminerà i tag HTML, ma semplicemente li convertirà in modo che possano essere visualizzati come normale testo.

    Ciao.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.