Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11

Discussione: XMLHttpRequest aiuto

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    42

    XMLHttpRequest aiuto

    Ciao ragazzi, sto muovendo i primi passi con ajax, seguendo esempi su internet e varie guide, ma non sono ancora riuscito a capire se è possibile ritornare una variabile o un vettore mediante la richiesta XMLHttpRequest.


    codice:
     	
    	
    	<script type="text/javascript">
    //<![CDATA[
    	var myRequest = null;
    
    function CreateXmlHttpReq(handler) {
      var xmlhttp = null;
      try {
        xmlhttp = new XMLHttpRequest();
      } catch(e) {
        try {
            xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch(e) {
            xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }
      }
      xmlhttp.onreadystatechange = handler;
      return xmlhttp;
    }
    
    function myHandler2() {
        if (myRequest.readyState == 4 && myRequest.status == 200) {
            e = document.getElementById("ex4result");
        	e.innerHTML = myRequest.responseText;
    	
    	
        }
    }
    
    function esempio4() {
    var nome = document.f1.id.value;
    var database ="<?php echo $vettoreConnection['db']; ?>";
     document.f1.database.value;
    var host = "<?php echo $vettoreConnection['host']; ?>";
    var user = "<?php echo $vettoreConnection['user']; ?>";
    var password = "<?php echo $vettoreConnection['password']; ?>";
    var prefix = "<?php echo $vettoreConnection['prefix']; ?>";
        myRequest = CreateXmlHttpReq(myHandler2);
        myRequest.open("GET","components/com_map/myfile.php?id=" + nome + "&database=" + database + "&host=" + host + "&user=" + user + "&password=" + password + "&prefix=" + prefix);
        myRequest.send(null);
    }
    
     //]]>
       </script>
     <form name="f1">
    Nome: <input type="input" name="id">
    
    <input type="button" onClick="esempio4()" value="Visualizza cognome" />
    
    
    Risultato: <div id="ex4result"></div>
    </form>


    questo è myfile.php

    codice:
     
    
    		$conn= mysql_connect($_GET[host], $_GET[user], $_GET[password]) or die("Connessione non riuscita: ".mysql_error());
    	$sql = "SELECT via, nome FROM ".$_GET[prefix]."map where id=".$_GET['id'];
    $result = mysql_db_query($_GET[database],$sql,$conn) or die ("errore " . mysql_error());
    $array = mysql_fetch_array($result);
    
    print "VIA: ".$array['via']."
    ";
    
    	
    	 ?>
    in questo caso mi viene modificato il div ex4result con la stampa a video di $array['via'] e fin qui tutto bene. Il problema è che a me non serve visualizzarlo ma passarlo ad un'altra funzione.
    Come posso fare?
    Grazie.

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    42
    Nessuno sa aiutarmi?????
    E' urgente. Grazie.

  3. #3

    Re: XMLHttpRequest aiuto

    Originariamente inviato da kolbac
    Ciao ragazzi, sto muovendo i primi passi con ajax
    e fermati prima di non aver letto qualcosa su php e la sicurezza con php ... il tuo script mostra a tutti i parmaetri di configurazione per connettersi al tuo db (ma anche usare, distruggere, creare, modificare il tuo mysql), semplicemente inaudito!
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    42
    avevo notato questo problema nn da poco.
    Cosa potrei fare per renderlo più sicuro ed ottenere cio' che voglio?

    Grazie

  5. #5
    Originariamente inviato da kolbac
    Cosa potrei fare per renderlo più sicuro ed ottenere cio' che voglio?
    1. studiare ed approfondire il PHP e le problematiche sulla sicurezza server e per le interazioni client/server
    2. affidarti ad uno sviluppatore esperto, prevedendo eventualmente la spiegazione dell'operato

    non mi vengono in mente altre alternative
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    42
    Ma se non avete tempo da perdere dando soluzioni o consigli utili e non banali, perchè lo fate perdere agli altri facendo leggere delle risposte stupide?
    Un forum dovrebbe servire proprio per discutere e confrontare le proprie idee, sicuramente le mie sono sbagliate altrimenti non starei a perdere tempo scrivendo del codice errato, ma questo non vuol dire che tu me ne debba far perdere altro con risposte veramete in "intelligenti e di grande aiuto".
    Cmq grazie per aver perso del tempo per me.

  7. #7
    il punto 1 non mi sembra affatto stupido (come non lo è il punto 2) e siccome questo è il forum JavaScript non mi sembra sia possibile parlare di PHP, degli errori PHP mostrati nel tuo codice, dei problemi inerenti la sicurezza col PHP ne delle problematiche generiche inerenti il PHP.

    Sul forum si chiedono consigli, in questo caso bisognerebbe perderne molto di tempo perchè scrivere sul layout i dati di connessione al database significa non avere nozioni basilari sul linguaggio server ne sulle potenzialità di interazione con il client.

    Ma tutto questo, come ho già detto, fa parte del PHP, apri eventualmente un 3D sul forum apposito e chiedi maggiori delucidazioni
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    42
    Allora potresti rispondere alla mia prima domanda visto che riguarda js.
    Non mi sembra di aver esordito con il problema della sicurezza in php, sei stato tu a tirarlo fuori e ti ho chiesto un consiglio. Ora se non ti sembra il giusto ambito per darmi questo consiglio puoi benissimo non darmelo anche perchè ho risolto, ma rispondi allo mia prima richiesta se ne sei in grado altrimenti rispondi ad altri 3D.
    Ciao e Grazie

  9. #9
    ma è abbastanza semplice il problema nello specifico perchè è qui che scrivi a video il risultato
    codice:
    e = document.getElementById("ex4result");
    e.innerHTML = myRequest.responseText;
    ti basta inviare ad un'altra funzione il responseText dell'XHR ma secondo me non è questo il tuo problema ... e a tal proposito consiglio di approfondire questi argomenti
    Guida Ajax
    Errori comuni con Ajax (il primo punto in particolare)
    Guida alla sicurezza sul PHP

    ... e per completare, o forse prima ancora delle altre ...
    Guida JavaScript di base

    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    42
    file php

    Codice PHP:
    <?php
        
    require_once( '../../configuration.php' );


    $connmysql_connect($mosConfig_host$mosConfig_user,"") or die("Connessione non riuscita: ".mysql_error());
    $sql "SELECT via, nome FROM ".$mosConfig_dbprefix."map where id=".$_POST['id'];
    $result mysql_db_query($mosConfig_db,$sql,$conn) or die ("errore " mysql_error());
    $array mysql_fetch_array($result);

    ?>

        <input type="hidden" id="via" value="<?php echo $array[0]; ?>">
        <input type="hidden" id="nome" value="<?php echo $array[1]; ?>">
        <input type="hidden" id="lng" value="<?php echo $_POST[lng]; ?>">
        <input type="hidden" id="lat" value="<?php echo $_POST[lat]; ?>">
    file js

    var myRequest = null;

    function CreateXmlHttpReq(handler) {
    var xmlhttp = null;
    try {
    xmlhttp = new XMLHttpRequest();
    } catch(e) {
    try {
    xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch(e) {
    xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    }
    }
    xmlhttp.onreadystatechange = handler;
    return xmlhttp;
    }

    function myHandler2() {
    if (myRequest.readyState == 4 && myRequest.status == 200) {
    e = document.getElementById("contenitoredinamico");
    e.innerHTML = myRequest.responseText;
    vettore=new Array;
    vettore[0]= document.getElementById("via").value;
    vettore[1]= document.getElementById("nome").value;
    var lng= document.getElementById("lng").value;
    var lat= document.getElementById("lat").value;
    // alert ("questa è la via " + vettore[0] + " questo è il nome " + vettore[1]);

    mytabs(vettore,lng,lat);

    }
    }

    così come va? credi possa andare?
    Grazie dei link

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.