Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1

    Cambiare contenuto pagina lasciando layout pagina intatto

    Salve a tutti,sto creando un piccolo sito personale,e vorrei fare in modo che creo una sola pagina con il menu laterale con delle opzioni,per esempio Home-Gallery-Contatti- ecc...però vorrei che quando si clicca ad un link del menu mi debba visualizzare la pagina al centro e lasciare il menu ecc intatti.Non so se mi sono spiegato bene.Grazie a tutti in anticipo.
    PS:Non voglio utilizzare iframe,grazie

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Nella pagina metti un div nel quale mostrare i contenuti, al click sulle voci di menu fai delle chiamate Ajax ad uno script che genera il nuovo contenuto e lo metti nel div rimpiazzando ciò che c'era prima.

  3. #3
    Ciao ,grazie per avermi risposto,ti volevo chiedere come posso farlo in php?ho visto in alcuni siti dove passava il parametro per esempio:index?=p=1 più o meno era cosi;come posso farlo cosi?grazie ancora.

  4. #4
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    In quel caso viene ricaricata tutta la pagina, con Ajax invece solo il contenuto del div in questione.

    Comunque, se non ti interessa che la pagina si ricarichi, allora non c'è problema, lato php generi il contenuto da mostrare a seconda del parametro che riceve, metti tutto in una variabile e ne fai un echo nel div che mostra i contenuti.

    In pratica ti fai tutta la struttura della pagina: header, menu laterale, footer ed eventualmente altri elementi che devono sempre apparire, poi il div per i contenuti variabili fatto così
    Codice PHP:
    <div class='qualcosa'>
    <?php echo $contenuto ?>
    </div>
    dove $contenuto è la variabile che contiene il contenuto da mostrare.

  5. #5
    ciao,ti poso chiedere l'ultima cosa...come faccio a fargli cambiare pagina in base al link che scelgo dal menu?tipo pagina.html?grazie ancora.

  6. #6
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Fai i link in questo modo

    Poi nello script recuperi il valore di id e in base a questo decidi cosa mostrare
    Codice PHP:
    switch ($_GET['id'])
    {
        case 
    1:
            
    //il codice per generare il contenuto di "chi siamo"
            
    $contenuto //... il codice generato qui sopra
            
    break;

        case 
    2:
            
    //il codice per generare il contenuto di "dove siamo"
            
    $contenuto //... il codice generato qui sopra
            
    break;

        case 
    3:
            
    //il codice per generare il contenuto di "portfolio"
            
    $contenuto //... il codice generato qui sopra
            
    break;

        default:
            
    //il codice per generare il contenuto della home page o di una pagina d'errore, a te la scelta
            
    $contenuto //... il codice generato qui sopra
            
    break;
    }

    //ora in $contenuto hai il codice giusto da mostrare nel div dei contenuti 

  7. #7
    Perfetto! Sei un grande :-) ti ringrazio per la pazienza ciaoo

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2013
    Messaggi
    147
    non capisco bene la sintassi che devo inserire nei vari casi del switch.
    nel mio caso ho questi script:
    script1.php
    codice:
    <?php 
    include ("config.php");
    $result = mysql_query("SELECT * FROM users ORDER BY CAST(username AS DATE)")  or die(mysql_error());
    while($row = mysql_fetch_array( $result ))
     {                   
    echo "<table  width='100%' border='1'>";   
    echo"<tr>";     
    echo "<th width='10%'>Utente</th>";     
    echo"<td>";     
    echo $row['username'];     
    echo"</td>";   
    echo"</tr>";   
    echo"<tr>";     
    echo"<th width='10%'>Email</th>";     
    echo"<td>";     
    echo $row['email'];     
    echo"</td>";   
    echo"</tr>";   
    echo"</table>";  
    echo"
    
    ";           
    }    
    ?>
    script2.php
    codice:
    <?php 
    include ("config.php");
    $result = mysql_query("SELECT * FROM users ORDER BY CAST(articolo AS DATE)")  or die(mysql_error());
    while($row = mysql_fetch_array( $result ))
     {                   
    echo "<table  width='100%' border='1'>";   
    echo"<tr>";     
    echo "<th width='10%'>articolo</th>";     
    echo"<td>";     
    echo $row['articolo'];     
    echo"</td>";   
    echo"</tr>";   
    echo"<tr>";     
    echo"<th width='10%'>prezzo</th>";     
    echo"<td>";     
    echo $row['prezzo'];     
    echo"</td>";   
    echo"</tr>";   
    echo"</table>";  
    echo"
    
    ";           
    }    
    ?>

    quindi come faccio a richiamare questi miei 2 script nei case del switch?


    codice:
    case 1:         //il codice per generare il contenuto di "chi siamo"         
    $contenuto = //... il codice generato qui sopra         
    break;

  9. #9
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Metti tutto il codice di ogni script dentro lo switch giusto.

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2013
    Messaggi
    147
    tutto completo? Così?
    codice:
    switch ($_GET['id'])
    {   
     case 1:              
     
    include ("config.php");
    $result = mysql_query("SELECT * FROM users ORDER BY CAST(articolo AS DATE)")  or die(mysql_error());
    while($row = mysql_fetch_array( $result ))
     {                   
    echo "<table  width='100%' border='1'>";   
    echo"<tr>";     
    echo "<th width='10%'>articolo</th>";     
    echo"<td>";     
    ...
    ...
         
    break;
    C'è modo di richiamare nei vari case un richiamo al un file .php ?
    Senza dover inserire tutto lo script nel ?case ?

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.