Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: codice PHP ignorato

  1. #1

    codice PHP ignorato

    ciao a tutti, ho un problema per me incomprensibile con del codice php.

    Ho scaricato uno script dal sito (Advanced Guestbook 2.3.1 ), un guestbook con appoggio a mysql che usava un layout a tabelle, ho deciso di rifare il layout usando i div per meglio adattarlo alle mie esigenze. Ora il punto è che all'interno di una pagina del guestbook qualsiasi il codice php che metto io (mi serve fare un include("miapagina.php") viene ignorato completamente, come se non fosse mai stato scritto. Avete idea di come fare per risolvere? ho provato anche con require ma ogni istruzione php anche un echo viene ignorata...

    Codice PHP:

     
    [img]$GB_PG[base_url]/img/gbook.gif[/img]
     [img]$GB_PG[base_url]/img/sign.gif[/img]  [url="$GB_PG[addentry]"][b]$LANG[BookMess3][/b][/url]       
    [b]| 
    [img]$GB_PG[base_url]/img/lock.gif[/img]        
    [url="$GB_PG[admin]"]$LANG[BookMess5][/url][/b]</p>            

    <?php include("miapagina.php"); ?>

      
    [img]$GB_PG[base_url]/img/point3.gif[/img]
    $LANG[NavTotal]       
    [b]$TPL[GB_TOTAL][/b] 
    $TPL[GB_NAVIGATION] 

          

    <div class="tabella">                  
    <div class="riga">             
    <div class="colonna3">[b]$LANG[FormName][/b]</div>             
    <div class="colonna4">[b]$LANG[BookMess7][/b]</div>         
    </div>               
    $TPL[GB_ENTRIES]      /*enrty.php*/
    </div>     
    </div>
    il pezzo di codice sopra è preso da un file del tamplate (body.php). La pagina del guestbook è creata da un index.php che a sua volta carica header.php, body.php, footer.php, entry.php (che sono i commenti del guestbook) e tutti gli script e classi necessarie.

    Vi ringrazio
    www.zukimania.org

  2. #2
    Se quello e' un template, allora non e' li' che devi mettere il codice; devi metterlo nel file che richiama il template.

  3. #3
    si ma se il mio codice lo inserisco nella pagina che richiama il tamplate non ho modo di metterlo nella posizione voluta, o dico cavolate? visto che quello che devo fare io è un include(pagina); devo inserirlo nel punto preciso, altrimenti dovrei usare le variabili?

    grazie
    www.zukimania.org

  4. #4
    Devi usare le variabili del template.

  5. #5
    ci ho provato, ho definito $SCRIVI in una pagina dove vengono definite le variabili usate nello script, a scrivi ho associato il valore $SCRIVI="ciao"; e poi nel template ho scritto semplicemente $SCRIVI ma anche questa soluzione viene interpretata come sopra...

    inserendo però una cosa simile nel file index.php funziona tutto ma chiaramente non posso metterlo dove dico io.
    www.zukimania.org

  6. #6
    Evidentemente il template ha una sua sintassi che va rispettata. Non ho idea di come sia fatto quel template quindi non so farti esempi concreti, forse ti conviene leggere la documentazione.

  7. #7
    ti ringrazio per la disponibilità ciao
    www.zukimania.org

  8. #8
    potresti dire da dove si può scaricare questo script in modo da poter vedere come viene incluso questo tpl più approfonditamente?
    Ubuntu rulez!! :P

  9. #9
    eccolo qui

    http://php.html.it/script/vedi/1604/...uestbook-v231/

    modificato a dovere nel senso che ho tolto tutte le tabelle sostituendole con dei div ma la sostanza è la stessa...
    www.zukimania.org

  10. #10
    ok ne sono arrivto a capo..
    è una soluzione semplice e rapida e dal punto di vista stilistico si può fare di meglio..

    Il codice non è il massimo di questo script però se funziona allora basta

    nel file gb.class.php nella directory lib troverai alla riga 52 nel metodo show_entries degli eval

    prima di quelli per ogni include che vuoi fare fai partire un buffer e salvi il contunuto dentro all'array $TPL impostando delle chiavi a tua scelta

    ad esempio

    Codice PHP:

    //per includere un blocco html
    ob_start();
    include(
    'htmlBlock.php');
    $TPL['htmlBlock'] = ob_get_contents();
    ob_end_clean(); 
    quindi sul tpl andrai a posizionare $TPL['htmlBlock'] dove meglio ti interessa
    Ubuntu rulez!! :P

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.