Visualizzazione dei risultati da 1 a 10 su 10
  1. #1

    [PHP] eval su codice javascript

    Salve ragazzi,
    sto implementando un piccolo CMS per un cliente, che gli consente di customizzare praticamente tutto il sito, dai contenuti ai banners.
    Proprio su questi ultimi ho un quesito da porvi, più che altro per avere dei suggerimenti prima di mettermi a scrivere codice ed accorgermi che ho scritto caXXate...

    Dunque, la gestione dei banner comuni l'ho già implementata, vorrei che il cliente potesse gestire anche il piazzamento di banner Adsense tipo skyscraper ed il classico 468x60.

    Come posso fare per gestire 'sta cosa?
    Io avevo pensato di creare un'interfaccia di inserimento da parte dell'admin (che è un informatico), in modo da mettere il codice javascript su db e poi richiamarlo nelle pagine attraverso la funzione eval() di PHP.

    Che ne dite?
    C'è qualche metodo standard?
    Grazie a tutti

  2. #2
    uppino

  3. #3
    eval interpreta codice testuale PHP, cosa c'entra il javascript ?
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  4. #4
    [supersaibal]Originariamente inviato da andr3a
    eval interpreta codice testuale PHP, cosa c'entra il javascript ? [/supersaibal]
    Hai ragione
    Eval l'ho usata per gestire template html con variabili PHP in codice testuale.

    Quello che voglio fare è una cosa del tipo

    codice:
    // QUESTA FUNZIONE LEGGE E RESTITUISCE IL TEMPLATE HTML FACENDO L'ESCAPE DEGLI APICI DOPPI
    function GetTemplate($template) {
    return str_replace("\"","\\\"",implode("",file($template)));
    }
    
    // QUESTA FUNZIONE STAMPA A VIDEO IL TEMPLATE RISULTANTE DALLA FUNZIONE PRECEDENTE
    function Stampa($template) {
    echo $template;
    }
    Se io in $template mettessi il codice javascript di AdSense prelevato da database...potrebbe andare?

  5. #5
    $js = "
    <script type=\"text/javascript\">
    function helloWorld() {
    alert( 'Hello World!' );
    }
    helloWorld();
    </script>
    ";


    echo $js;




    ... JS e' una parte di html, come metti l' html dentro il php ci metti anche JS o qualunque informazione tipica di un browser ...
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  6. #6
    [supersaibal]Originariamente inviato da andr3a
    $js = "
    <script type=\"text/javascript\">
    function helloWorld() {
    alert( 'Hello World!' );
    }
    helloWorld();
    </script>
    ";


    echo $js;




    ... JS e' una parte di html, come metti l' html dentro il php ci metti anche JS o qualunque informazione tipica di un browser ... [/supersaibal]
    Quindi in sostanza posso mettere del codice javascript in una variabile , scrivere un template HTML con la var sottoforma di codice testuale PHP,da interpretare tramite la funzione eval()!! Così almeno rimaniamo in tema col titlo del 3d!

    Grazie Andr3'

  7. #7
    no, eval col javascript on c'entra niente ... e 2

    tu devi mettere il testo javascript dentro l' output che andrai a stampare, stop
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  8. #8
    Ho capito bene anche la prima volta che me lo hai detto,volevo solo sapere se nella mia situazione potevo fare questa cosa.
    Ho a disposizione "solo ed obbligatoriamente" dei template HTML che sono caricati da PHP tramite un eval , associato alle due funzioni postate prima:

    eval("Stampa(\"".GetTemplate("nome_template.html") ."\");");

    dentro nome_template.html c'è,oltre ovviamente all'XHTML, una var che conterrà codice javascript, tipo:



    $strJavascript</p>

    Non dovrei avere problemi da quanto ho capito!!!
    Scusa se ti ho massacrato le OO

  9. #9
    [supersaibal]Originariamente inviato da pikkio74
    Ho capito bene anche la prima volta che me lo hai detto,volevo solo sapere se nella mia situazione potevo fare questa cosa.
    Ho a disposizione "solo ed obbligatoriamente" dei template HTML che sono caricati da PHP tramite un eval , associato alle due funzioni postate prima:

    eval("Stampa(\"".GetTemplate("nome_template.html") ."\");");

    dentro nome_template.html c'è,oltre ovviamente all'XHTML, una var che conterrà codice javascript, tipo:



    $strJavascript</p>

    Non dovrei avere problemi da quanto ho capito!!!
    Scusa se ti ho massacrato le OO [/supersaibal]
    boh ... fammi un esempio di pagina
    Stampa( GetTemplate("nome_template.html") );
    perche' mica ho capito l' eval a cosa ti serve
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  10. #10
    [supersaibal]Originariamente inviato da andr3a
    boh ... fammi un esempio di pagina
    Stampa( GetTemplate("nome_template.html") );
    perche' mica ho capito l' eval a cosa ti serve [/supersaibal]
    Dunque, per la struttura del sito è stato preso come riferimetno l'articolo di GM
    http://freephp.html.it/articoli/view...sp?id=67&pag=4
    ovvero utilizzare i template integrati con PHP.
    In pratica la struttura è completamente separata dai contenuti, i quali vengono passati a PHP da questa istruzione:

    eval("Stampa(\"".GetTemplate("nome_template.html") ."\");");

    stampa, appunto, stampa il template
    GetTemplate si ciuccia il file HTML facendo l'escape degli apici doppi.
    In un template HTML ci voglio piazzare una variabile con codice javascript prelevato da database.
    In pratica la risposta me l'hai già data, ci tenevo a precisare che eval devo usarlo per forza, non sò de coccio!!!

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 © 2024 vBulletin Solutions, Inc. All rights reserved.