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

    Ajax Request cosa mi ritorna?

    Ciao,
    ho una funzione in php che mi returna un array tipo:
    array (
    [1]=>'primo',
    [2]=>'secondo',
    [3]=>'terzo'
    )

    Vorrei richiamare questo oggetto in una pagina attraverso una Ajax.Request (uso prototype).

    Volevo capire qualche cosa a riguardo:
    1. che tipo di dati devo aspettarmi di ritorno da una ajax.request?
    2. che tipo di dati devo mandare ad una ajax request?
    3. si mi arrivasse (non so come) un array come ci posso "giocare"?

    cioè in poche parole io ho trovato questo:

    index.php
    Codice PHP:
    <script type="text/javascript"
    new 
    Ajax.Request('get.php',
    {
        
    method:'get',
        
    onSuccess: function(transport){
        var 
    response transport.responseText || "no response text";
        
    alert("Success! \n\n" response);
        },
        
        
    onFailure: function(){ alert('Something went wrong...')}
    });
            
    </script> 
    la pagina get.php è cosi:
    Codice PHP:
    [ ... dichiaro funzione ... ]
    getSquadre(); //return an array 
    Ovviamente la index.php non mi mostra nitente (anzi mi pianta un alert ma con no response text) ...
    Ovviamente se nella pagina get.php ci faccio un echo 'ciao'; l'alert mi stampa ciao...

    Come faccio a passare alla index.php questo oggetto che non è un testo stampato sulla pagina get.php?

    Delucidatemi perfavore perche sto sciopando ciao"!!

  2. #2
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Ti rispondo come faccio io, non come sia meglio fare (questo lo lascio agli esperti )

    Ho una pagina A. Dentro, da più punti, posso fare più chiamate ajax ad A stessa. Ad esempio, ho tre pulsanti, e ognuno vuole una informazione diversa dal server.
    Bene, A passa come parametro qualcosa del genere:

    ?comando_ajax=azione1, oppure, ?comando_ajax=azione2, e così di seguito.

    Quando la pagina A è richiamata, legge il parametro ricevuto comando_ajax e, in base a questo mi restituisce quello che deve, sempre in stringa, strutturata diversamente.

    Ad esempio, la chiamata con azione1 so che mi deve restituire una stringa che contenga un vettore javascript del tipo "['x', 'y', 'z']". E così di seguito.

    Come lo so? semplicemente perchè lo faccio io e so quel che faccio

    Se chiami una pagina fatta da un altro, l'altro di deve fornire le specifiche dei dati che restituisce. Se chiami un webService, la sua documentazione di dirà come dovrai richiamarlo e cosa otterrai. Non è che devi scoprirlo tu

    :master: Questo è il mio pensiero. Ciao.
    Pietro

  3. #3
    Ciao!
    grazie della risposta scusa se rispondo solo ora...

    E' tutto chiarissimo solo una domanda quando dici:

    Ad esempio, la chiamata con azione1 so che mi deve restituire una stringa che contenga un vettore javascript del tipo "['x', 'y', 'z']". E così di seguito.
    Cosa intendi per vettore javascript? E' comunque un dato di tipo stringa che printi sulla pagina?

    Ciao Grazie

  4. #4
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da albertogianotti
    Ciao!
    grazie della risposta scusa se rispondo solo ora...

    E' tutto chiarissimo solo una domanda quando dici:


    Cosa intendi per vettore javascript? E' comunque un dato di tipo stringa che printi sulla pagina?

    Ciao Grazie
    Dunque, viene sempre restituita una stringa. Ad esempio, supponiamo di ricevere una serie di valori dal server, formattati in questo modo:

    var t = "x;y;z";
    li converto in vettore così:

    var a = t.split(";");


    però posso passare gli stessi valori formattati come vettore:
    var t = "['x', 'y', 'z']";

    e lo valorizzo con eval

    var a = eval(t);

    sei tu che decidi il formato più conveniente per il tuo caso contingente.
    Pietro

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 © 2026 vBulletin Solutions, Inc. All rights reserved.