Visualizzazione risultati 1 fino 3 di 3

Discussione: php db e ajax auto completamento

  1. #1
    Guest

    Predefinito php db e ajax auto completamento

    Ciao a tutti....
    Prendendo spunto da uno script creato da javascript... ^^
    Devo fare controllare al ajax se esiste questo nome nel db se si mi stampa tutti i nomi con quella determinate lettere tipo google....

    la tabella del db:
    Codice PHP:
    CREATE TABLE IF NOT EXISTS `autocompletamento` (
    `
    id` int(11) NOT NULL auto_increment,
    `
    nome` varchar(65) NOT NULL default '',
    PRIMARY KEY (`id`)
    )
    ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
    devo creare un file di controllo pensavo ad una cosa del genere:
    Codice PHP:
    <?php
    if(!isset($_POST["modulo"])){
    exit();
    }else{
    mysql_connect("localhost", "hotmailpower", "") or die("Impossibile connettersi al database");
    mysql_select_db("my_hotmailpower") or die("Impossibile selezionare il database");
    $query = mysql_query("SELECT nome FROM autocompletamento WHERE nome = '".mysql_real_escape_string($_POST["modulo"])."'");
    echo
    mysql_num_rows($query);
    }
    ?>
    il vero problema e la parte per il controllo dei dati cioè ajax sapete darmi una mano:
    ajax
    Codice PHP:
    <script type="text/javascript">
    function
    HttpAjax(handler){
    var
    xmlhttp = null;
    try{
    //Firefox, Opera e Safari
    xmlhttp=new XMLHttpRequest();
    }
    catch(
    exc){
    //Internet Explorer
    try{
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch(
    exc){
    try{
    xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(
    exc){
    alert("Il tuo Browser non supporta AJAX.");
    return
    false;
    }}}
    xmlhttp.onreadystatechange = handler;
    return
    xmlhttp;
    }

    function
    Controlla(controlla){
    var
    Ajax = HttpAjax();
    var
    dato = "controlla="+unescape(controlla);
    Ajax.open("POST","controllo.php",true);
    Ajax.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
    Ajax.setRequestHeader("Content-length", dato.length);
    Ajax.send(dato);
    if(
    Ajax.readyState == 4 && Ajax.responseText == 1){
    }else{
    }}
    </script>
    campo input:
    Codice PHP:
    <input type="text" name="modulo" id="modulo" onkeyup="Controlla(this);">
    <
    ul id="AutoComplete"></ul>

  2. #2
    Guest

    Predefinito

    ti consiglio di seguire qualche guida url rimosso


    ciao ;)

    [Io invece ti consiglio di non spargere, sempre e comunque, i tuoi link nel forum (si chiama spam) by musicanapoli]
    Ultima modifica di musicanapoli : 20-05-2010 alle ore 13.49.57

  3. #3
    Guest

    Predefinito

    cosa scusa....

    DISCUSSIONI UNITE:
    Ciao a tutti sapete darmi una mano con js e ajax...
    Vi spiego...
    Ho un tabella formata cosi:
    Codice PHP:
    CREATE TABLE IF NOT EXISTS `autocompletamento` (
    `
    id` int(11) NOT NULL auto_increment,
    `
    nome` varchar(65) NOT NULL default '',
    PRIMARY KEY (`id`)
    )
    ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
    con tre nomi andre,alessio,giov
    un file php chiamato controlla.php
    Codice PHP:
    <?php
    if(!isset($_POST["modulo"])){
    exit();
    }else{
    mysql_connect("localhost", "hotmailpower", "") or die("Impossibile connettersi al database");
    mysql_select_db("my_hotmailpower") or die("Impossibile selezionare il database");
    $modulo = mysql_real_escape_string($_POST["modulo"]);
    $query = mysql_query("SELECT * FROM autocompletamento WHERE nome LIKE '%$modulo%'");
    echo
    "Suggerimenti trovati: ".mysql_num_rows($query).",";
    while(
    $risultato = mysql_fetch_array($query)){
    echo
    $risultato['nome'].",";
    }}?
    ad esempio se dovrei inviare via post la lettera a dovrebbe stampare
    Suggerimenti trovati: 2,andre,alessio,
    usando ajax come posso inviare da un campo input un testo via post....

    per poi dovrebbe stampare se invio la lettera a
    Codice PHP:
    <li>Suggerimenti trovati: 2</li>
    <
    li>andre</li>
    <
    li>alessio</li>
    se invio un altra lettere e se con quella lettera esisti un nome dovrebbe stamparlo come ho spiegato prima....

    il campo input e AutoComplete il posto dove dovrebbe poi andare stampare il testo ricevuto dal file controllo...
    Codice PHP:
    <input type="text" name="modulo" id="modulo" onkeyup="Controlla(this);">
    <
    ul id="AutoComplete"></ul>

    ajax
    Codice PHP:
    function HttpAjax(handler){
    var
    xmlhttp = null;
    try{
    //Firefox, Opera e Safari
    xmlhttp=new XMLHttpRequest();
    }
    catch(
    exc){
    //Internet Explorer
    try{
    xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    catch(
    exc){
    try{
    xmlhttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
    catch(
    exc){
    alert("Il tuo Browser non supporta AJAX.");
    return
    false;
    }}}
    xmlhttp.onreadystatechange = handler;
    return
    xmlhttp;
    }
    function
    Controlla(controlla){
    var
    Ajax = HttpAjax();
    }
    ringrazio chi mi aiuterà....
    Ultima modifica di andreafallico : 22-05-2010 alle ore 19.16.58

Regole di scrittura

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