Visualizzazione risultati 1 fino 3 di 3

Discussione: rpblema con visualizzazione inserendo un if

  1. #1
    Guest

    Predefinito rpblema con visualizzazione inserendo un if

    Salve a tutti,

    Non so il perchè o meglio non riesco a risolvere un piccolo problema. Quando metto l'if all'inizio mi scompare la selezione data ma i campi restanti ci sono perchè ???? Questo è il listato.

    iscrizione.php

    Codice PHP:
    <?php
    if(!empty($_POST)){

    require_once(
    "connettimysqli.php");
    echo
    '<div id = "posdata">';
    require_once(
    "data.php");
    echo
    "</hr>";


    # Inizializzazioni variabili

    $id = mysqli_real_escape_string($con, $_POST['id']);
    $cognome = mysqli_real_escape_string($con, $_POST['cognome']);
    $nome = mysqli_real_escape_string($con, $_POST['nome']);
    $giorno = mysqli_real_escape_string($con, $_POST['giorno']);
    $mese = mysqli_real_escape_string($con, $_POST['mese']);
    $anno = mysqli_real_escape_string($con, $_POST['anno']);
    $nascita = sprintf("%04d%02d%02d", $anno, $mese, $giorno);
    $nazionalita = mysqli_real_escape_string($con, $_POST['nazionalita']);
    $citta = mysqli_real_escape_string($con, $_POST['citta']);
    $prov = mysqli_real_escape_string($con, $_POST['prov']);
    $username = mysqli_real_escape_string($con, $_POST['username']);
    $email = mysqli_real_escape_string($con, $_POST['email']);
    $ripemail = mysqli_real_escape_string($con, $_POST['ripemail']);
    $password = mysqli_real_escape_string($con, $_POST['password']);
    $rippassword = mysqli_real_escape_string($con, $_POST['rippassword']);




    echo
    '<div id = "posselectgiorno">';
    // formazione dei tre select:
    // giorno

    echo '<select name="giorno">';
    echo
    '<option value="">Scegli giorno: </option>';
    for(
    $i=1;$i<32;$i++){
    echo
    "<option value=\"" . $i . "\">" . $i . "</option>\n";
    }

    echo
    "</select> ";

    echo
    "</div>";

    // mese
    echo '<div id = "posselectmese">';

    echo
    '<select name="mese">';
    echo
    '<option value="">Scegli mese: </option>';
    for(
    $i=1;$i<13;$i++){
    echo
    "<option value=\"" . $i . "\">" . $i . "</option>\n";
    }
    echo
    "</select> ";
    echo
    "</div>";

    // anno

    echo '<div id = "posselectanno">';

    // anno
    echo '<select name="anno">';
    echo
    '<option value="">Scegli anno: </option>';

    for(
    $i=1920;$i<2012;$i++){
    echo
    "<option value=\"" . $i . "\">" . $i . "</option>\n";
    }
    echo
    "</select>";
    echo
    "</div>";

    //controlla l'inserimento della data che sia corretta
    if (!checkdate($input['mese'], $input['giorno'], $input['anno'])) {
    $errore = "Data non valida";
    }


    //Inserimento select e input per aggiungere la nazionalità

    $checknazionalita="SELECT DISTINCT nazionalita FROM utenti ORDER BY nazionalita";
    $result = mysqli_query($con, $checknazionalita);
    if (
    $result === false) {
    echo
    "ERROR: " . mysqli_error($con);
    }

    $nazionalite = array();
    while (
    $row = mysqli_fetch_assoc($result)) {
    $nazionalite[] = $row['nazionalita'];
    }
    }
    //chiude l'if iniziale
    ?>
    </body>
    </html>
    Dov'è l'errore ??? Grazie.

  2. #2
    mzanella non è connesso AlterGuru
    Data registrazione
    29-12-2015
    Messaggi
    1,954

    Predefinito

    La generazione delle select per la data è contenuta nell'if, ma il corpo di quest'ultimo viene eseguito solo quando sono stati inviati dei dati tramite POST.

    Dovresti collocare la stampa delle select al di fuori del codice che invece gestisce l'input.

  3. #3
    Guest

    Predefinito rpblema con visualizzazione inserendo un if

    cioè mi stai dicendo come il vecchio listato facendo un casino con php e html ???? Però ho fatto una prova ho spostato l'if più in basso e compare la select e qusto che non capisco. Ptaticamente l'ho messo qua, dopo le select non so se può andar bene o meno o fa la setssa cosa:

    Codice PHP:
    if(!empty($_POST)){

    //Inserimento select e input per aggiungere la nazionalità

    $checknazionalita="SELECT DISTINCT nazionalita FROM utenti ORDER BY nazionalita";
    $result = mysqli_query($con, $checknazionalita);
    if (
    $result === false) {
    echo
    "ERROR: " . mysqli_error($con);
    }

    $nazionalite = array();
    while (
    $row = mysqli_fetch_assoc($result)) {
    $nazionalite[] = $row['nazionalita'];
    }
    }

    ?>

Regole di scrittura

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