Select Option eTabella MySql

Fabrizio!

Nuovo Utente
31 Gen 2015
15
0
1
Salve,
espongo il seguente problema... in un form ho due campi, COGNOME e NOME.

Nel campo cognome ho una select option che è collegata a una tabella Mysql e il cui value è "cognome", anche se per praticità visualizza i tre campi id, cognome e nome.
In sostanza vorrei che dopo aver selezionato il cognome, il nome corrispondente venisse visualizzato automaticamente nel campo nome.
Con il codice seguente passo automaticamente il cognome .. ma non riesco ad adattarlo per il nome.

PHP:
<html>
  <head> 
    <script src="js/jquery-1.11.0.min.js"></script>
	<script>
	$(document).ready( function ()
	{
	$('#dropdown_selector').change(function()
		{
		var option = $(this).find('option:selected').val();
		$('#showoption').val(option);
		});
	});
</script>
  </head>

  <body>

    <select id="dropdown_selector">
	<?php
		include("blocks/db.php");
		$utente = mysql_query("SELECT id, cognome, nome FROM utenti");
		while ($row = mysql_fetch_assoc($utente)) {
		echo "<option value=\"$row[cognome]\">$row[id]  $row[cognome]  $row[nome]</option>";
		}
	?>		
	</select>
  
    <label> Nome: </label>
      <input type="text" name="name" id="showoption" readonly="readonly" />      
	  </label>
    
  </body>
</html>

Ringrazio chi può aiutarmi.
 
Ciao WottaFacca ... ti ringrazio per il supporto e la disponibilità.

Hai ragione è abbastanza simile, un po' diverso da quello che cercavo, ma credo che con un po' di modifiche si possa adattare al mio caso.
Faccio un po' di prove.
 
Ciao,

ho risolto adattando il codice...... che posto per chi volesse utilizzarlo.

file index.php
PHP:
<!DOCTYPE html>
<html>
    <head>
        <title>Cognome e Nome</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>

        <script type="text/javascript">
            $(document).ready(function(){
                nome();
                $("select").change(function(){
                    nome();
                })
            })
            function nome() {                
                $.ajax({
                    type: "POST",
                    url: "nome.php",
                    data: $("#ricerca").serialize(),
                    success: function(response){
                        eval(response);
                    }
                }); 
            }
        </script>
    </head>
    <body>
        <div class="ricerca">
            <form id="ricerca">
                <span>Cognome :</span>
                <select name="cognome">
                    <option value=""></option>
                </select>
                <span>Nome :</span>
                <select name="nome">
                    <option value=""></option>
                </select>
            </form>
        </div>
    </body>
</html>

file: nome.php
PHP:
<?php

// recupero vaolori delle select
$cognome = $_REQUEST['cognome'];
$nome = $_REQUEST['nome'];
// mi connetto al database
$sql = new mysqli("localhost", "root", "pw", "db");
// estraggo tutti gli utenti
$query = "SELECT * FROM utenti";
$result = $sql->query($query);
// svuoto la select cognome
echo "$('select[name=\"cognome\"]').empty();";
// aggiungo una option vuota
echo "$('select[name=\"cognome\"]').append('<option value=\"\"></option>');";
// ciclo i risultati della query
while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
    // imposto il selected sull'eventuale cognome scelto
    $selected = "";
    if ($row['id'] == $cognome) {
        $selected = "selected=\"selected\"";
    }
    // popolo la select
    echo "$('select[name=\"cognome\"]').append('<option $selected value=\"" . $row['id'] . "\">" . addslashes($row['cognome']) . "</option>');";
}
// se è stato scelto un cognome
if (!empty($cognome)) {
    // estraggo il nome del cognome scelto
    $query = "SELECT * FROM utenti WHERE id ='$cognome'";
    $result = $sql->query($query);
    // svuoto la select nome
    echo "$('select[name=\"nome\"]').empty();";
    // ciclo i risultati della query
    while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
        // imposto il selected sull'eventuale nome scelto
        $selected = "";
        if ($row['nome'] == $nome) {
            $selected = "selected=\"selected\"";
        }
        // popolo la select
        echo "$('select[name=\"nome\"]').append('<option $selected value=\"" . $row['nome'] . "\">" . addslashes($row['nome']) . "</option>');";
    }
}
?>

Grazie Mille per la dritta!
 

Discussioni simili