• Home
  • Forum
  • Fare Web
  • PHP

la select non compare come dovrebbe apparire inserendo da tastiera

  • Creatore Discussione Creatore Discussione paperinik4
  • Data di inizio Data di inizio 2 Giu 2016
Prec.
  • 1
  • 2
Primo Prec. 2 di 2

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
32
  • 5 Giu 2016
  • #21
Ovvio che non funziona! In codice è completamente sbagliato. Devi richiamare la funzione javascript e passargli l'indice altrimenti ti esce sempre l'input. Non hai proprio le basi secondo me di come si sviluppi questa cosa e nè una logica. Appena ho tempo ti invio un esempio.
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 5 Giu 2016
  • #22
Grazie ibernato
 

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
32
  • 5 Giu 2016
  • #23
Codice:
<?php
    //includi file connessione DB
    $query = "SELECT count(*) FROM UTENTI";
    $result = mysqli_query($connessione, $query);
    if(!$result) echo "Errore Query";
    else{
        $row = mysqli_num_rows($result);
        if($row > 0) $indice = 1;
        else $indice = 0;
    }
?>

<!DOCTYPE html>
<html lang="it">
    <head>
        <title> prova </title>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js">
        </script>
        <script>
            function funzione(indice){
                if(indice == 1){
                    $("#nazione").show();
                    $("#nazionalita").hide();
                }
                else {
                    $("#nazionalita").show();
                    $("#nazione").hide();
                }
            </script>
        </head>
        <body onLoad="funzione(<?php echo $indice ?>)">
           
            <form action="tuapagina" method="POST">
                //metti qui il tuo form con gli id
            </form>
        </body>
    </html>
 
Reactions: paperinik4
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 5 Giu 2016
  • #24
Ciao Ibernato,

Grazie dell'esempio. Lo provo e ti dirò se va o meno ma non credo di avere dubbbi. Spero che filerà tutto liscio.
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 6 Giu 2016
  • #25
Ciao ibernato,

Ho eseguito il tuo esempio ma non so perchè Forse ho sbagliato posizione dove doveva andare ??? ma mi sembra che era abbastanza chiaro. Di seguito ti mostro il listato completo. E un'immagine di quello che mi appare.

iscrizione2.php

PHP:
<!DOCTYPE html>

<html>
  <head>
  <meta charset="UTF-8">
  <title>Modulo d'iscrizione</title>
  <link href="style.css" rel="stylesheet" type="text/css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
   
  </head>
  <body>
   
  </body>
<DOCTYP<?php
////////////////////////////////////////////////////////////////////////
// Connessione alla base di dati
// NOTA: La connessione è disponibile nella variabile globale $con
require_once("connettimysqli.php");

require_once("data.php");


////////////////////////////////////////////////////////////////////////
// Controllo su dati inviati dal form
// Se sono stai inviati dei dati, la richiesta di inserimento di un utente
// viene elaborata
if (!empty($_POST)) {
  // Lettura e validazione dei parametri
  $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']);
  $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']);
   
   
  // Controlla che la data inserita sia valida e la codifica nel formato aaaammgg
  if (!checkdate($mese, $giorno, $anno)) {
  echo "<p><strong>Errore</strong>: Data non valida</p>";
  }
  $nascita = sprintf("%04d%02d%02d", $anno, $mese, $giorno);

// Inizia nascondi/appari dell'input per la nazionalità
   
   
  $query = "SELECT count(*) FROM UTENTI";
  $result = mysqli_query($con, $query);
  if(!$result) echo "Errore Query";
  else{
  $row = mysqli_num_rows($result);
  if($row > 0) $indice = 1;
  else $indice = 0;
  }
   
   
   
  // Inserimento nella tabella utenti
  $query = "INSERT INTO utenti (cognome, nome, nascita, nazionalita, username, email, password) "
  . "VALUES('$cognome','$nome','$nascita','$nazionalita','$username','$email','$password')";
  $result = mysqli_query($con, $query);
  if ($result !== false) {
  echo "<p>Inserimento avvenuto correttamente<p>";
  } else {
  echo "<p>Inserimento non eseguito.<br />";
  echo '<strong>Errore</strong>: '.mysqli_error($con).'</p>';
  }
}

?>

<DOCTYPE html>
<html>
  <head>
  <meta charset="UTF-8">
   
  <script>
  function funzione(indice){
  if(indice == 1){
  $("#nazione").show();
  $("#nazionalita").hide();
  }
  else {
  $("#nazionalita").show();
  $("#nazione").hide();
  }
  </script>
  </head>
  <body onLoad="funzione(<?php echo $indice ?>)">
   
  </head>
  <body>
  <div id="intestazione">
  <h2>BENVENUTI NEL MODULO D'ISCRIZIONE</h2>
  <hr>
  </div>

  <div id="divhr">
  <form method="POST" autocomplete="off" action="<?php $_SERVER['PHP_SELF'] ?>">
  <!-- Cognome -->
  <p>
  <label for="campo-cognome">Cognome: </label>
  <input type="text" name="cognome" required />
  </p>
   
  <!-- Nome -->
  <p>
  <label for="campo-nome">Nome: </label>
  <input type="text" name="nome" required />
  </p>

  <!-- Data di nascita -->
  Seleziona la data di nascita (gg/mm/aaaa):
   
  <!-- Giorno -->
  <select name="giorno">
  <option value="">Scegli giorno: </option>
   
  <?php for ($i = 0; $i < 32; $i++): ?>
  <option value="<?= $i ?>"><?= $i ?></option>;
  <?php endfor; ?>
  </select>
   
  <!-- Mese -->
  <select name="mese">
  <option value="">Scegli mese: </option>
   
  <?php for ($i = 1; $i < 13; $i++): ?>
  <option value="<?= $i ?>"><?= $i ?></option>
  <?php endfor; ?>
  </select>

  <!-- Anno -->
  <select name="anno">
  <option value="">Scegli anno: </option>

  <?php for ($i = 2012; $i >= 1920; $i--): ?>
  <option value="<?= $i ?>"><?= $i ?></option>
  <?php endfor; ?>
  </select>


  <!-- Nuova nazionalità (non presente nella lista) -->
  <div id = "posnazionalita">
  <p>
  <label for="campo-nazionalita">Nazionalità: </label>
  <input type="text" name="nazionalita" required/>
  </p>
  </div>

   
  <!-- Nazionalità (lista di nazionalità già inserite, non compare se vuota) -->

  <?php if (!empty($nazionalite)): ?>
<select hidden="true" name="nazione"
<option value="">-seleziona-</option>

  <?php foreach ($nazionalite as $entry): ?>
  <option value="<?= $entry ?>"><?= $entry ?></option>
  <?php endforeach; ?>
</select>
<?php endif; ?>
   

  <!-- Nome utente -->
  <div id="posusername">
  <p>
  <label for="campo-username">Username: </label>
  <input type="text" name="username" required/>
  </p>
  </div>

   
  <!-- Email -->
  <div id="posemail">
  <p>
  <label for="campo-email">Email: </label>
  <input type="text" name="email" required/>
  </p>
  </div>

   
  <!-- Ripeti email -->
  <div id="posripemail">
  <p>
  <label for="campo-ripemail">Ripeti-Email: </label>
  <input type="text" name="ripemail" required/>
  </p>
  </div>


  <!-- Password -->
  <div id="pospassword">
  <p>
  <label for="campo-password">Password: </label>
  <input type="password" name="password" required/>
  </p>
  </div>


  <!-- Ripeti password -->
  <div id="posripassword">
  <p>
  <label for="campo-ripemail">Ripeti-Password: </label>
  <input type="password" name="rippassword" required/>
  </p>
  </div>

  <div align ="center">
  <input type="submit" name="reg" value="Invio dati" id="submit" />
  </div>
  </form>
  </div>
   
  <?php
   
  echo "</hr>";
  ?>
  </body>
</html>


E questo è il risultato che mi da:

 

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
32
  • 6 Giu 2016
  • #26
Ma perchè apri sempre <DOCTYPE ECC. In una pagina deve starci un solo DOCTYPE, un solo tag HEAD e un solo tag BODY. Secondo me devi rivederti HTML perchè non sei molto pratico.
Questo è il cdice come dovrebbe essere scritto, ma non so se funziona poichè non ho il DB tuo a portata di mano.
PHP:
<?php
    require_once("connettimysqli.php"); 
    require_once("data.php");
    $query = "SELECT * FROM nome_tua_tabella_utenti";
    $result = mysqli_query($con, $query);
    if(!$result) echo "Errore Query";
    else{
        $row = mysqli_num_rows($result);
        if($row > 0) $indice = 1;
        else $indice = 0;
    }
?>
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>Modulo d'iscrizione</title>
        <link href="style.css" rel="stylesheet" type="text/css">
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js"></script>
     
        <script>
            function funzione(indice){
                if(indice == 1){
                    $("#nazione").show();
                    $("#nazionalita").hide();
                }
                else {
                    $("#nazionalita").show();
                    $("#nazione").hide();
                }
            </script>
        </head>
        <body onLoad="funzione(<?php echo $indice ?>)">
         
            <div id="intestazione">
                <h2>BENVENUTI NEL MODULO D'ISCRIZIONE</h2>
                <hr>
            </div>
         
            <div id="divhr">
                <form method="POST" autocomplete="off" action="<?php $_SERVER['PHP_SELF'] ?>">
                    <!-- Cognome -->
                    <p>
                        <label for="campo-cognome">Cognome: </label>
                        <input type="text" name="cognome" required />
                    </p>
                 
                    <!-- Nome -->
                    <p>
                        <label for="campo-nome">Nome: </label>
                        <input type="text" name="nome" required />
                    </p>
                 
                    <!-- Data di nascita -->
                    Seleziona la data di nascita (gg/mm/aaaa):
                 
                    <!-- Giorno -->
                    <select name="giorno">
                        <option value="">Scegli giorno: </option>
                     
                        <?php for ($i = 0; $i < 32; $i++): ?>
                        <option value="<?= $i ?>"><?= $i ?></option>;
                        <?php endfor; ?>
                    </select>
                 
                    <!-- Mese -->
                    <select name="mese">
                        <option value="">Scegli mese: </option>
                     
                        <?php for ($i = 1; $i < 13; $i++): ?>
                        <option value="<?= $i ?>"><?= $i ?></option>
                        <?php endfor; ?>
                    </select>
                 
                    <!-- Anno -->
                    <select name="anno">
                        <option value="">Scegli anno: </option>
                     
                        <?php for ($i = 2012; $i >= 1920; $i--): ?>
                        <option value="<?= $i ?>"><?= $i ?></option>
                        <?php endfor; ?>
                    </select>
                 
                 
                    <!-- Nuova nazionalità (non presente nella lista) -->
                    <div id = "posnazionalita">
                        <p>
                            <label for="campo-nazionalita">Nazionalità: </label>
                            <input type="text" name="nazionalita" required/>
                        </p>
                    </div>
                 
                 
                    <!-- Nazionalità (lista di nazionalità già inserite, non compare se vuota) -->
                 
                    <?php if (!empty($nazionalite)): ?>
                    <select hidden="true" name="nazione">
                    <option value="">-seleziona-</option>
                 
                    <?php foreach ($nazionalite as $entry): ?>
                    <option value="<?= $entry ?>"><?= $entry ?></option>
                    <?php endforeach; ?>
                </select>
                <?php endif; ?>
             
             
                <!-- Nome utente -->
                <div id="posusername">
                    <p>
                        <label for="campo-username">Username: </label>
                        <input type="text" name="username" required/>
                    </p>
                </div>
             
             
                <!-- Email -->
                <div id="posemail">
                    <p>
                        <label for="campo-email">Email: </label>
                        <input type="text" name="email" required/>
                    </p>
                </div>
             
             
                <!-- Ripeti email -->
                <div id="posripemail">
                    <p>
                        <label for="campo-ripemail">Ripeti-Email: </label>
                        <input type="text" name="ripemail" required/>
                    </p>
                </div>
             
             
                <!-- Password -->
                <div id="pospassword">
                    <p>
                        <label for="campo-password">Password: </label>
                        <input type="password" name="password" required/>
                    </p>
                </div>
             
             
                <!-- Ripeti password -->
                <div id="posripassword">
                    <p>
                        <label for="campo-ripemail">Ripeti-Password: </label>
                        <input type="password" name="rippassword" required/>
                    </p>
                </div>
             
                <div align ="center">
                    <input type="submit" name="reg" value="Invio dati" id="submit" />
                </div>
            </form>
        </div>
     
        <?php
         
            echo "</hr>";
        ?>
     
        <?php
        ////////////////////////////////////////////////////////////////////////
        // Controllo su dati inviati dal form
        // Se sono stai inviati dei dati, la richiesta di inserimento di un utente
        // viene elaborata
        if (!empty($_POST)) {
            // Lettura e validazione dei parametri
            $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']);
            $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']);
         
         
            // Controlla che la data inserita sia valida e la codifica nel formato aaaammgg
            if (!checkdate($mese, $giorno, $anno)) {
                echo "<p><strong>Errore</strong>: Data non valida</p>";
            }
            $nascita = sprintf("%04d%02d%02d", $anno, $mese, $giorno);
         
            // Inserimento nella tabella utenti
            $query = "INSERT INTO utenti (cognome, nome, nascita, nazionalita, username, email, password) "
            . "VALUES('$cognome','$nome','$nascita','$nazionalita','$username','$email','$password')";
            $result = mysqli_query($con, $query);
            if ($result !== false) {
                echo "<p>Inserimento avvenuto correttamente<p>";
                } else {
                echo "<p>Inserimento non eseguito.<br />";
                echo '<strong>Errore</strong>: '.mysqli_error($con).'</p>';
            }
        }
     
    ?>
    </body>
</html>
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 6 Giu 2016
  • #27
Sapevo che si potevano aprire e chiudere più dcotype e tah head. Per lo meno così avevo capito. Forse, azni da quello che mi dici credo proprio di aver capito male. A proposito, ma è giusto che ci sia prima il php e poi di seguito hmtl, e nel caso delle select della data sia mescolato html e php ???? Perchè sapevo che prima andava html di sopra e poi php.


P.S.: Ho provato il codice ma non compare la select alla seconda registrazione.
 

Ibernato

Utente Attivo
2 Giu 2016
70
6
8
32
  • 6 Giu 2016
  • #28
Il php può essere mescolato all'html. Tu puoi fare per esempio un ciclo while in php
PHP:
<?php
  $i = 1;
while($i < = 5){
?>
<h3> Numero <?php echo $i ?> </h3> <br>
<?php
} //fine while
?>
e così ti stampa 5 i numeri da 1 a 5 uno sotto l'altro.
 
P

paperinik4

Utente Attivo
29 Mag 2011
1.811
0
36
Roma
www.ricetteagogo.it
  • 6 Giu 2016
  • #29
Ok perfetto questo era la mia conferma. Senti ma secondo te perchè il tuo esempio che mi hai fatto non va ??? Non riesco a capire dove ho sbagliato.
 
Prec.
  • 1
  • 2
Primo Prec. 2 di 2
Devi accedere o registrarti per poter rispondere.

Discussioni simili

A
select dinamiche, errore assurdo, non compare la terza select
  • angelo85ct
  • 18 Nov 2008
  • Javascript
Risposte
0
Visite
2K
Javascript 18 Nov 2008
angelo85ct
A
R
Select concatenata che non funziona la seconda volta
  • _Rosy_
  • 29 Nov 2020
  • Ajax
Risposte
3
Visite
3K
Ajax 29 Nov 2020
WmbertSea
X
[Select] Valori chiave non presenti in un'altra tabella
  • xSlart01x
  • 21 Mar 2020
  • MySQL
Risposte
2
Visite
1K
MySQL 21 Mar 2020
xSlart01x
X
Select ... where... AND... aggiornamento PHP non funziona
  • alessandroz
  • 3 Lug 2017
  • PHP
Risposte
9
Visite
2K
PHP 4 Lug 2017
alessandroz
S
Il metodo $.getJSON() e <select> che non si popola di dati per query troppo grandey
  • SAC07PA
  • 24 Apr 2017
  • Ajax
Risposte
0
Visite
1K
Ajax 24 Apr 2017
SAC07PA
S
D
[ASP.Net] Non elencare nella select i duplicati dallo split
  • djjunior
  • 12 Apr 2017
  • Classic ASP
Risposte
9
Visite
2K
Classic ASP 25 Apr 2017
djjunior
D
Piccolo Script su select non funziona
  • otto9due
  • 9 Nov 2016
  • jQuery
Risposte
2
Visite
1K
jQuery 9 Nov 2016
otto9due
[PHP] form con select che non invia dati se con apostrofo
  • asevenx
  • 8 Ago 2016
  • PHP
Risposte
4
Visite
4K
PHP 10 Ago 2016
borgo italia
P
le select vanno per i fatti loro e non a fianco alle label
  • paperinik4
  • 23 Ott 2014
  • PHP
Risposte
2
Visite
2K
PHP 24 Ott 2014
paperinik4
P
P
due select che non vanno d'accordo fra di loro
  • paperinik4
  • 20 Ott 2014
  • PHP
Risposte
4
Visite
1K
PHP 22 Ott 2014
paperinik4
P
[risolto] insert into if select non presente
  • Monital
  • 22 Feb 2014
  • MySQL
Risposte
7
Visite
3K
MySQL 22 Feb 2014
Monital
M
[risolto] Select non funziona dopo 8 record
  • mauro81
  • 29 Nov 2013
  • MySQL
Risposte
8
Visite
2K
MySQL 29 Nov 2013
flameseeker
H
Problema con MySQL e PHP, dopo aver fatto una SELECT non ottengo alcun risultato
  • hud468
  • 5 Ago 2013
  • PHP
Risposte
7
Visite
3K
PHP 6 Ago 2013
borgo italia
Non recupero il value in un select popolato da DB
  • neo996sps
  • 1 Ago 2013
  • PHP
Risposte
4
Visite
2K
PHP 1 Ago 2013
neo996sps
P
Non riesco a mettere al centro i tasti e ingrandire la select
  • paperinik4
  • 4 Set 2012
  • PHP
Risposte
10
Visite
2K
PHP 4 Set 2012
paperinik4
P
M
Select dinamica asp non funziona su chrome e ff -> si su ie...help
  • marco75sa1
  • 19 Dic 2010
  • Classic ASP
Risposte
6
Visite
3K
Classic ASP 29 Dic 2010
marco75sa1
M
D
SELECT DISTINCT non mi funziona
  • daniele71
  • 7 Apr 2010
  • Database
Risposte
2
Visite
2K
Database 10 Apr 2010
daniele71
D
R
switch che non funziona con select $_session
  • Ranius
  • 18 Mar 2010
  • PHP
Risposte
3
Visite
1K
PHP 18 Mar 2010
alessandro1997
L
Select dinamiche - stampa ID e non il valore
  • leftist73
  • 7 Gen 2010
  • PHP
Risposte
3
Visite
2K
PHP 8 Gen 2010
leftist73
L
M
select non deve restituire value
  • max123
  • 26 Feb 2009
  • Javascript
Risposte
1
Visite
2K
Javascript 9 Mar 2009
daviduccio
Condividi:
Facebook X (Twitter) LinkedIn WhatsApp e-mail Condividi Link
  • Home
  • Forum
  • Fare Web
  • PHP
  • Italiano
  • Termini e condizioni d'uso del sito
  • Policy Privacy
  • Aiuto
  • Home
Community platform by XenForo® © 2010-2024 XenForo Ltd. | Traduzione a cura di XenForo Italia
Menu
Accedi

Registrati

  • Home
  • Forum
    • Nuovi Messaggi
    • Cerca...
  • Novità
    • Featured content
    • Nuovi Messaggi
    • Ultime Attività
X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?

X

Privacy & Transparency

We use cookies and similar technologies for the following purposes:

  • Personalized ads and content
  • Content measurement and audience insights

Do you accept cookies and these technologies?