Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Ajax - PHP DropDown

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323

    Ajax - PHP DropDown

    Salve a tutti io ho un menu dropdown costituito da tre scelte in Ajax-PHP
    - NAZIONE
    - REGIONE
    - CITTA



    function Inint_AJAX() {
    try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {} //IE
    try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {} //IE
    try { return new XMLHttpRequest(); } catch(e) {} //Native Javascript
    alert("XMLHttpRequest not supported");
    return null;
    };

    function dochange(src, val) {
    var req = Inint_AJAX();
    req.onreadystatechange = function () {
    if (req.readyState==4) {
    if (req.status==200) {
    document.getElementById(src).innerHTML=req.respons eText;
    }
    }
    };
    req.open("GET", "search_ajax_for_home2.php?data="+src+"&val="+val) ;
    req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded;charset=tis-620");
    req.send(null);
    }

    window.onLoad=dochange('province', -1);
    La mia domanda é:
    io utilizzo le sessioni, se uno mi sceglie NAZIONE ITALIA, come faccio a fare in modo che i secondi 2 menu cambiano?
    ossia dovrei cambiare il seguente codice immagino:
    ma come?

    window.onLoad=dochange('province', -1);

    AIUTO, grazie a tutti

  2. #2
    prendendo come esempio un form semplice con un select se tu scrivi

    <select name="pippo" size="1" onchange="document.forms[0].action='pagina.php'; document.forms[0].submit()">

    quando scegli un elemento del select viene attivato l'evento ONCHANGE che come vedi carica 'pagina.php'; qui in base al valore del select ($_POST['pippo']) potrai visualizzare i valori desiderati.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323
    ma é ancora Ajax?

    mi metti un esempio ben fatto in PHP col form NAZIONE - PROVINCIA - CITTA?

    non riesco bene a capire l'esempio... scusami

    io mi porto dietro le sessioni dalla pagina di ricerca
    $_SESSION[search][country]
    $_SESSION[search][province]

  4. #4
    beh io ora non so che cosa usi come modulo ajax, io ogni tanto uso il dojo toolkit che è davvero fantastico..cmq io ti faccio un esempio generico che cmq vale sempre anche con moduli ajax perchè non sono altro che estensioni dei tag normali...

    Codice PHP:
    <?php
       $nazione 
    $_POST['nazione'];
       
    $regione $_POST['regione'];
       if (
    $nazione$id=1;
       if (
    $regione$id=2;
    ?>
    <html>
    <head><title></title></head>
    <body>
    <form id="test" method="post" action="<?=$_SERVER['PHP_SELF']?>">
      <select name="nazione" size="1" onchange="document.forms[0].submit()">
        <option value="1">Italia</option>
        <option value="1">Francia</option>
        <option value="1">Spagna</option>
      </select>
      <? if ($id==1) { // $nazione è stata selezionata ?>
      <? 
         
    if ($nazione==1$regioni = array('Liguria''Piemonte''Lombardia');
         if (
    $nazione==2$regioni = array('Provenza''Pyrenees''Loira');
         if (
    $nazione==3$regioni = array('Andalusia''Costa Brava''Galizia');
      
    ?>
      <select name="regione" size="1" onchange="document.forms[0].submit()">
        <?
           
    for ($i=0$i<count($regioni); $i++)
              echo 
    "<option value=\"$i\">".$regioni[$i]."</option>";
        
    ?>
       </select>
      <? ?>
      <? if ($id==2) { // $regione è stata selezionata ?>
      <? // ecc ecc ?>
    </form>
    </body>
    </html>
    questo è il metodo standard in PHP, poi dipende dal framework ajax che usi come implementarlo...

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2004
    Messaggi
    323
    grazie mille sei stato di grande aiuto veramente grazie per la cortesia

  6. #6
    denada, grazie anche a te!!!

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.