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

    Problema combo box in ajax

    Ciao a tutti ragazzi e non, volevo chiedere un informazione su ciò che ho scritto in ajax php e html, perche non mi funziona corettamente.
    L' idea è quella di selezionare la scuola da un apposito campo e a seconda del campo selezionato ti inserisce gli indirizzi di quella scuola in un altro campo.
    il database e così organizzato una tabella scuole con idscuola, nomescuola, una indirizzi con idindirizzo e nomeindirizzo e infine una intermedia per riuscire a collegare le due precedenti chiamata scuole_indirizzi aventi i campi scuole_idscuola (collega id scuola ) e indirizzi_idindirizzo (collega l'indirizzo).
    l' errore che viene e che una volta selezionata la scuola il campo indirizzi si rimpicciolisce e non appaiono gli indirizzi della scuola =(

    ecco la pagina principale php e html chiamata registrazione2.php
    codice HTML:
    <!DOCTYPE html>
    <html>
        <head>
            <!-- Titolo pagina-->
            <title>Helpschool! - Registrazione - Passo 2</title>
            <!--Import Google Icon Font-->
            <link href="http://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
            <!--Import materialize.css-->
            <link type="text/css" rel="stylesheet" href="css/materialize.min.css"  media="screen,projection"/>
            <!--Let browser know website is optimized for mobile-->
            <meta name="viewport" content="width=device-width, initial-scale=1.0"/>    
            <script type="text/javascript" src="http://code.jquery.com/jquery-1.6.2.min.js"></script>
            <script>
                $(document).ready(function(){
                    $.ajax({
                        url:"php/_getScuole.php",
                        type: "POST",
                        data: {},
                        dataType: "json",
                        success: function(risultati){
                            for(var i=0; i<risultati.length; i++){
                                var opzione = document.createElement("option");
                                opzione.text = risultati[i];
                                $("#scuola").append(opzione);
                            }
                        },
                        error: function(richiesta,stato,errori){
                            alert("Chiamata fallita: "+stato+" "+errori);
                        }    
                    });
                
                    $("#scuola").change(function(){
                        $.ajax({
                            url:"php/_getIndirizzi.php",
                            type: "POST",
                            data: {scuola: $("#scuola").val()},
                            dataType: "json",
                            success: function(risultati){
                                $("#indirizzo").empty(); /*svuoto prima la cmb da tutte le opzioni*/
                                for(var i=0; i<risultati.length; i++){
                                    var opzione = document.createElement("option");
                                    opzione.text = risultati[i];
                                    $("#indirizzo").append(opzione);
                                }
                                $("#indirizzo").prop("disabled", false); /*abilito la cmb*/
                            },
                            error: function(richiesta,stato,errori){
                                alert("Chiamata fallita: "+stato+" "+errori);
                            }
                        });
                    });
                });
            </script>    
          
            
        </head>
    
        <body>  
    
            <h4>Registrazione <b>HelpSchool!</b> - Passo <B>2</B> di 2</h4>
            <p>Ora scegli la <B>tua scuola</B>, il <B>tuo indirizzo di studi</B> e la <B>tua classe</B>! <B>Ricordati che tutti i campi sono obbligatori.</B></p>
            
            
                        <select id="scuola" name="scuola">
                            <option>Scegli la tua scuola...</option>
                             
                        </select>
                        <label>Scegli la <B>tua scuola</B></label>
                        
                        
                        <select id = "indirizzo" name = "indirizzo">
                             <option>Scegli il tuo indirizzo di studi...</option>
                        </select>
                        <label>Scegli il <B>tuo indirizzo di studi</B></label>
                    
                
                        <select  id = "classe" name = "classe">
                            <option value="" disabled selected>Scegli la tua classe...</option>
                            <option value="1">Prima</option>
                            <option value="2">Seconda</option>
                            <option value="3">Terza</option>
                            <option value="4">Quarta</option>
                            <option value="5">Quinta</option>
                        </select>
                        <label>Scegli la <B>tua classe</B> in cui sei iscritto</label>
                        
                
            
            
            
        </body>
      </html>
    pagina getScuole.php :
    Codice PHP:
    <?php    
        
    include ("_connessionedb.php"); //connessione al database, presente nella pagina _connessionedb.php        
        
        
    try{

            
    $stmSql $conn->prepare("SELECT nome_scuola FROM scuole");
            
    $result $stmSql->execute();
            
            
    $risultati[] = '';
            while(
    $row $stmSql->fetch()){
                
    $risultati[] = $row[0];
            }
            
            echo 
    json_encode($risultati);
            
    $conn null;
        }catch(
    PDOException $ex){
            die(
    "Errore: " .$ex->getMessage());
        }    
        
    ?>
    pagina _getIndirizzi.php:
    Codice PHP:
    <?php    
        
    if(isset($_POST['scuola']) && !empty($_POST['scuola'])){
            
    $scuola $_POST['scuola'];
            include (
    "_connessionedb.php"); //connessione al database, presente nella pagina _connessionedb.php
            
    try{
                    
    $stmSql $conn->prepare("SELECT nome_indirizzo FROM indirizzi JOIN scuole_indirizzi ON (indirizzi.idindirizzo = scuole_indirizzi.indirizzi_idindirizzo) JOIN scuole ON (scuole_indirizzi.scuole_idscuola = scuole.idscuola) WHERE scuole.idscuola = ?");
                
    $stmSql->bindParam(1$scuola);
                
    $result $stmSql->execute();
                
                
    $risultati[] = '';
                while(
    $row $stmSql->fetch()){
                    
    $risultati[] = $row[0];
                }
                
                echo 
    json_encode($risultati);
                
                
    $conn null;
                
            }catch(
    PDOException $ex){
                die(
    "Errore connessione: " .$ex->getMessage());
            }
        }
        
    ?>
    pagina connessione.php
    Codice PHP:
    <?php
    //Costanti di connessione al database
     //IN CASO DI ACCESSO AL SERVER DELLA SCUOLA: USER: "inf-5ogruppo6" PWD: "tesina9016" ----- ACCESSO IN LOCALE: USER: "root" PWD: ""
    $user "root";  
    $pwd =""
    $host "localhost";
    $dbname "inf-5ogruppo6";

    //Connessione al database MySql
    try{
        
    $conn = new PDO("mysql:host=$host;dbname=$dbname",$user,$pwd);
        
    $conn -> setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
    }catch(
    PDOException $ex){
        
    header("location: /helpschool/avviso.php?n=13"); //in caso di errore di connessione, reindirizzazione nella pagina di errore corrispondente
    }
    ?>
    grazie in anticipo a presto!

  2. #2
    tra l'altro non riesco nemmeno a modificare la discussione sopra...pure essendo io l'utente che l'ha scritta..

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Quote Originariamente inviata da memeolivero Visualizza il messaggio
    tra l'altro non riesco nemmeno a modificare la discussione sopra...pure essendo io l'utente che l'ha scritta..
    Ciao e benvenuto, le modifiche (per scelta admin) sono possibile solo nei successivi 60 minuti. Per agevolare metti il link alla pagina pubblica cosi da fare dei test.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Quote Originariamente inviata da cavicchiandrea Visualizza il messaggio
    Ciao e benvenuto, le modifiche (per scelta admin) sono possibile solo nei successivi 60 minuti. Per agevolare metti il link alla pagina pubblica cosi da fare dei test.
    ciao grazie dei suggerimenti, il problema e che l ho scritto giorni fa e non riesco ad effettuare modifiche e credimi sono necessarie perche ho inserito dati che non dovevo mettere xD

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Quote Originariamente inviata da memeolivero Visualizza il messaggio
    ciao grazie dei suggerimenti, il problema e che l ho scritto giorni fa e non riesco ad effettuare modifiche e credimi sono necessarie perche ho inserito dati che non dovevo mettere xD
    Devi chiedere ad un moderatore di questa sezione (mandandogli un privato) di modificarti il post
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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.