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

    pagina con switch / case

    ciao,

    ho una pagina costruita con il sistema switch / case in questo modo:

    codice:
    <?php
    
    switch ($pagina) {
    
    case "2":
    $query = "SELECT campi della pagina 2 FROM tabella WHERE CodiceArticolo = $ID";
    break;
    
    case "3":
    $query = "SELECT campi della pagina 3 FROM tabella WHERE CodiceArticolo = $ID";
    break;
    
    
    default:
    $query = "SELECT campi della pagina 1 FROM tabella WHERE CodiceArticolo = $ID";
    }
    
    $result = mysql_query($query);
    //verifica che la query è andata bene e che ha restituito un solo record
    
    $dati = mysql_fetch_array($result);
    
    switch ($pagina) {
    
    case "2":
    echo "stampo i campi della pag 2";
    break;
    
    case "3":
    echo "stampo i campi della pag 3";
    break;
    
    
    default:
    echo "stampo i campi della pag 1";
    }
    adesso avrei bisogno di creare una specie di menu di navigazione che mi carichi nella stessa pagina le varie clausole case.

    tipo: link
    link1

    cosa devo usare, il <'PHP_SELF>? in che modo?

    grazie

  2. #2
    Utente di HTML.it L'avatar di las
    Registrato dal
    Apr 2002
    Messaggi
    1,221
    Tanto per iniziare non hai necessità di fare due volte lo switch di $pagina, basta la prima per creare la Sql poi i campi che visualizzerai saranno per forza quelli della sql giusta, per quanto riguarda il menu se ho capito bene cosa vuoi fare dovrebbe essere una cosa del genere:

    codice:
    link 1
    link 2
    link 3

  3. #3
    ho provato così,

    codice:
    <a href=\"{$_SERVER["PHP_SELF"]}?pagina=2\">".$dati["titolo_sommario"]."</a>
    ma mi stampa sempre default

  4. #4
    ma perchè?
    ho fatto questo script con switch e un solo case:

    codice:
    <?php
    
    include("../pannello/dbconnect.php");
    
    switch ($_REQUEST['pagina']) {
    
    case "2": 
    
    $query = "SELECT presentazione, titolo_sommario, corpo_sommario, titolo_documento, corpo_documento FROM studi WHERE studi.id_studio= '" . $_REQUEST["id_studio"]  . "'";
    $result = mysql_query($query)or die(mysql_error()); 
    $dati = mysql_fetch_array($result);
    echo $dati["presentazione"]."
    ";
    echo $dati["titolo_documento"]."
    ";
    echo  $dati["corpo_documento"];
    
    break;
    
    default:
    
    $query = "SELECT titolo_analisi, corpo_analisi FROM studi WHERE studi.id_studio= '" . $_REQUEST["id_studio"]  . "'";
    $result = mysql_query($query)or die(mysql_error()); 
    $dati = mysql_fetch_array($result);
    
    echo" 
                        ".$dati["titolo_analisi"]."
    
    	       ".$dati["corpo_analisi"]."
     ";
    	       
    break;
    }
    
    echo"<a href=\"{$_SERVER["PHP_SELF"]}?pagina=2\">".$dati["titolo_analisi"]."</a>";
    
    
    ?>
    l'id_studio mi viene passato corettamente ed è dentro la query, le var, le ho provate a stampare e ci sono. quando eseguo lo script, mi stampa regolarmente il default, ma quando tramite il link punto a stamparmi il case 2, non mi visualizza niente!

    ma perchè mondo crudele!

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.