• User

    non ho capito al tua domanda io praticamente vorrei fare questo...

    $pagine(iscrizione.php,pagina.php)
    cioè se si clicca su una di queste pagine
    get mi carica quelle pagine nella tabella centrale.

    oppure mi spiego meglio.. il mio problema è questo
    io ho due menu laterali...vorrei mantenere sempre la stessa struttura...in ogni pagina...cambiando solo quella centrale.come succedere per header e footer con include.


  • User

    Non so se ho capito bene, forse potresti fare così:

    $id = $_GET["id"];

    if ($id=="iscrizione") {
    echo "";
    ?>

    (...) contenuto pagina

    <?php
    }
    ?>

    e questo dovrebbe essere il tuo link:

    <a href="nomedominio/iscrizione.php?id=iscrizione">iscriviti</a>


  • User

    si cosi è tutto corretto è normalmente ma le mie pagine che voglio richiamare sono pagine.php ...non sono appartenenti al index(cioè le news) perchè quelli le richiamo con il metodo descritto da te...come posso fare?


  • User

    quindi devi richiamare i contenuti da una pagina esterna?

    non puoi spiegarti un po' meglio?


  • User

    si cerco di spiegarmi meglio allora..io ho questa struttura
    header include questo
    <table width="100%" align="center" summary="Tabella principale" class="tablesfondo" >
    <tr>
    <td valign="top">

    include("./header.php");
    <td class="menusinistra" valign="top"><?php echo "<div id='menusinistra'>";
    include("./menu_s.php");
    echo "</div></td>";
    ?></td><td valign="top">

    <div class="contenuto">
    <div id="articoli">
    <div id="sinistra">
    <div class="articoli_s">

    <?php
    contenuto
    echo "</div>
    </div></td>";
    echo "<td class='destra' valign='top'>";
    echo "<div id='destra'>";
    include("./menu_i.php");
    echo "</div></td>";
    ?>
    <?
    include("./footer.php");
    ?>

    foooter contiene questo;
    </td></tr></table>
    <table width="100%" border="0" align="center">
    <tr>
    <td height="42" align="center" valign="top" nowrap="nowrap" class="footer"><span class="corsivo">
    <p>Contatti | Credit | Partner </p>
    <p>t</p></span></td>
    </tr>
    </table>

    ora io ho nelle due tabelle laterali i due menu menu_i menu_s poi al centro ho il contenuto dell idex che qui ho cancellato...è la gestione delle news....ora io in menu_s menu_i ho dei link ha pagine che sono nella stessa directori del sito che sono pagine.php
    ora io vorrei che cliccando sul il link nei menu il contenuto delle pagine.php venisse caricato al centro tra i due menu in modo tale da avere sempre i due menu laterali piu footer e header inclusi con include...mi sono spiegato?


  • User

    Allora io ho un home strutturata cosi
    include header
    <table width="100%" border="0">
    <tr>
    <td><?php echo "<div id='menusinistra'>";
    include("./menu_s.php");
    echo "</div> </td>
    <td>contentuo sito che è un sloga e la gestione delle news che funziona con get
    <div class="contenuto">
    <div id="articoli">
    <div id="sinistra">
    <div class="articoli_s"></td>
    <td><?php echo "<div id='menusinistra'>";
    include("./menu_i.php");
    echo "</div> </td>
    </tr>
    </table>
    include footer

    ora io nei due menu ho dei link a pagina.php ...ora io vorrei che cliccando sui link dei menu il contenuto di queste pagien php venisse caricato al centro tra i due menu in modo tale da avere sempre la stessa grafica. non so se mi sono spiegato...
    ora per alcune pagine... viene caricato un solo menu a sinistra con questa variabile td

    <table width="100%" border="0">
    <tr>
    <td valign=top>
    <td><?php echo "<div id='menusinistra'>";
    include("./menu_s.php");
    echo "</div> </td>
    <td>contentuo sito che è un sloga e la gestione delle news che funziona con get</td>
    <td><?php echo "<div id='menusinistra'>";
    include("./menu_i.php");
    echo "</div> </td>
    </td> </tr>
    </table>

    cioè è creata un ulteriore colonna che quando io in una apgina faccio
    include("./menu_i.php"); mi viene caricato in quello spazio ma questo non succede sempre io vorrei che ci fosse sempre la struttura a tre colonne..


  • User

    Prova a fare una funzione per i contenuti delle tue pagine.php:

    <?php
    function contenuto1 () {
    echo "";
    ?>
    (contenuti...)
    <?php
    }
    ?>

    e poi nella pagina dove vuoi caricare quel contenuto chiami la funzione:

    <div id="contenuto">
    <?php
    contenuto1 ();
    ?>
    </div>

    Altrimenti scusami, ma non ho capito... :ciauz:


  • User

    ok provo e vi faccio sapere...scusami se mi sono espresso male...


  • User Attivo

    Supadema è andato vicino a quello che voglio suggerire...
    Come hai incluso footer e header... se tu prepari i contenuti in file a parte (php, txt, html non fa differenza) e poi li includi nella cella che vuoi, ottieni quello che desideri senza ricorrere ai frame!


  • User

    sisisi vi ringrazio per le risposte voi dite cosi:
    file header:
    apertura table
    file index corpo
    con le tra colonne td,td,td
    e footer
    chiusura table
    quindi se io per esempio al file pagina.php
    inseriesco
    INCLUDO MENU
    td INCLUDO MENU ,td CONTENUTO PAGINA.PHP,td INCLUDO MENU
    INCLUDO MENU
    mi richiama sempre la stessa struttura, ho fatto cosi per alcune pagine ma io in verita volevo evitare di editare ogni pagina...e richiamare direttamente nel td centrale il contenuto della pagina.php


  • User Attivo

    Ti stai accartocciando con la storia delle tabelle, lasciale stare!
    E' molto semplice la cosa; i contenuti li metti in file separati... per esempio pagina1.html, pagina2.html, pagina3.html che vanno inclusi nella pagina "madre", anche in una cella di una tabella (non è questo il problema...), con include di php.
    I link puntano tutti la stessa pagina madre (per esempio, index.php) MA inviano ad essa il nome del file che bisogna includere!

    Esempio:

    i link:
    <a href="index.php?pag=pagina1">Pagina1</a>
    <a href="index.php?pag=pagina2">Pagina2</a>

    e così via...

    Nella cella dove vuoi che vengano visualizzati i contenuti metti:

    **<?php
    $pag=$_GET['pag'];
    include($pag.'.html');
    ?>**
    

    Cliccando sul primo link, verrà ricaricata la pagina ma con la variabile pag che conterrà la stringa pagina1... il codice acquisisce la variabile, include la pagina1.html e viene visualizzato il contenuto del file pagina1.html...
    Sul secondo link, pagina2 e così via...

    Chiaro?


  • User

    si grazie della tua spiegazioni, un ultima vosa come posso proteggere get? perchè so che è molto vulnerabili agli attacchi.


  • User Attivo

    Puoi creare dei form al posto dei link così invii in POST.


  • User

    scusa mi sono avvicinato da poco al mondo php, sono autodidatta..mi puoi fare un esempio? basta che sia sicur , perchè gia normalmente in un codice php ci sono bug e buchi. grazie mille.


  • User

    Grazie di avermi dedicato un pò del tuo tempo aspetto due notizie.


  • User Attivo

    Anch'io sono autodidatta, non si finisce mai di imparare ma si comincia dall'inizio!
    Io l'input te l'ho dato... anche troppo...
    Sta a te capire il codice e cercare di migliorarlo.

    Vuoi sapere come si inviano i dati in POST? Studia i form HTML.

    Inviare i dati in GET non è che sia pericoloso di per se... mica stai inviando user e password...

    Piuttosto, il codice che riceve i dati andrebbe reso sicuro impostando un controllo if che verifichi se il file che deve includere esista e sia presente in una determinata cartella sul server, al fine di scongiurare inclusioni di file esterni...

    Forza!;)