Visualizzazione risultati 1 fino 2 di 2

Discussione: Errore switch($_GET['page'])

  1. #1
    Guest

    Predefinito Errore switch($_GET['page'])

    Non capisco perché mi da errore:

    ( ! ) Notice: Undefined index: page in /indexG.php on line 10
    Call Stack


    Ecco il codice:

    <?php
    echo "<a
    href='indexG.php'>Home</a> | <a
    href='indexG.php?page=contatti'>Contatti</a> | <a
    href='indexG.php?page=bio'>Biografia</a> | <a
    href='indexG.php?page=links'>Links</a>
    ";
    echo "<p></p>";

    switch($_GET['page'])
    {
    case "bio":
    echo "Contenuto della pagina biografia";
    break;
    case "links":
    echo "contenuto della pagina links";
    break;
    case "contatti":
    ?>
    <p>Contenuto della pagina contatti(IN HTML, chiudendo i tags php qui posso usare normale html.)</p>
    <?php
    break;
    default:
    echo "Contenuto della home page, cioè di quando il get page è vuoto!";
    break;
    }
    ?>

    Grazie

  2. #2
    darbula non è connesso AlterGuru 2500
    Data registrazione
    24-04-2011
    Messaggi
    2,896

    Predefinito

    Le variabili esterne o le variabili costruite da te che potrebbero non esserci andrebbero prima controllate..
    if(!isset($_GET['page'])) {
    $_GET['page'] = '';
    }
    switch($_GET['page']) {
    case '': echo 'senza query string o query string senza alcun valore';
    $_GET = array(); //senza page=
    break;
    case 'bío': echo 'biografia';
    break;
    default: echo 'query string non racchiusa tra i casi';
    $_GET = array(); //senza page=query+fuori+lista
    break;
    }
    controlli la stringa vuota o query non in lista... Ambedue vogliono dire homepage... Ancora meglio se non racchiudi la stringa vuota nel case e lasci il compito al default.
    Ultima modifica di darbula : 05-10-2017 alle ore 18.17.26

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •