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

    2 chiamate alla funzione ahah dallo stesso link

    Ciao,
    sto provando questo ahah, e funziona egregiamente per il sito che sto sviluppando.
    La mia necessità è questa:
    vorrei caricare 2 files in due div contemporaneamente (uno è il div che contiene il link, che viene aggiornato, l'altro è un div che contiene query e php in base al parametro che gli passo).

    Quindi dovrei chiamare 2 volte ahah() cliccando su un link.

    Chiamando href="javascript:ahah(parametri vari);" tutto ok.

    Ho provato con href="javascript:ahah(parametri);ahah(parametri);" ma nulla.

    Vi è già capitato? Soluzioni?
    Grazie in anticipo

  2. #2
    Spero di ricevere aiuto, comunque in parte ho risolto la doppia chiamata uguale in questo modo:
    anzichè richiamare dirattamente la funzione ahah() dal link, richiamo questa funzione intermedia:

    function carica(url1, target1, url2, target2, parameters) {
    ahah(url1, target1, 5, 'POST', parameters);
    setTimeout("ahah('"+url2+"','"+target2+"',5000,'PO ST','"+parameters+"')", 2000);
    }


    purtroppo la prima chiamata ahah (file php semplice) viene eseguita perfettamente, la seconda (file php + query) no.
    Ma la cosa strana è che rimane vuota solo la parte finale in cui utilizzo query, mentre la parte php appare correttamente.

    Allora mi è venuto un dubbio... ho visto che il file che viene richiamato in innerHTML non riconosce variabili di sessione o altre variabili già presenti nella pagina in cui viene inserito... quindi in ogni pagina che richiamo devo includere nuovamente tutti i files per connettersi al database, giusto?

  3. #3
    Mi rispondo da solo, spero che a qualcuno possa comunque essere utile.

    Allora, quando si richiama un file ahah, questi presenta due problemi:
    - non riconosce variabili e sessioni già presenti nella pagina
    - non riconosce files già inclusi nella pagina (es. il file che contiene la connessione al db)

    Soluzione che ho trovato:

    - impostare il metodo post nel richiamare ahah, e passargli la variabile di sessione e tutte le variabili che possono servire
    - includere nuovamente tutti gli include che contengono variabili, inclusione al database e altro che serve (att: se il file che richiamate non è nella stessa cartella del file che lo richiama, i percorsi degli include saranno diversi!)


    Non è una soluzione molto elegante... includere tutto ad ogni chiamata ahah, ricordarsi di tutte le variabili, reimposter ogni volta la connessione al db... però altre non ne ho trovate

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Le chiamate ajax sono fatte da un oggetto che non e' il browser dell'utente, quindi risulteranno al server fatte da un nuovo utente e conseguentemente da una nuova sessione... con tutti i problemi che hai gia' riscontrato.

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    io domando : perchè fare DUE richieste al server e non UNA SOLA con due risposte? :master: :master:
    Pietro

  6. #6
    può essere un'idea... però siccome con un click devo cambiare 2 div diversi con 2 url diversi, come si fa?
    Dovrei usare 2 req.open?
    es.
    req = new XMLHttpRequest();
    req.open()

    req2 = new XMLHttpRequest();
    req2.open()

    si può fare?

  7. #7
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Originariamente inviato da Why?
    può essere un'idea... però siccome con un click devo cambiare 2 div diversi con 2 url diversi, come si fa?
    Dovrei usare 2 req.open?
    es.
    req = new XMLHttpRequest();
    req.open()

    req2 = new XMLHttpRequest();
    req2.open()

    si può fare?
    è molto semplice: io faccio la richiesta ad una sola pagina che mi restituisce una stringa delimitata per esempio col carattere | oppure ;, la separo in due e le immetto nei due div

    ps. più facile a farsi che a dirsi
    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 © 2025 vBulletin Solutions, Inc. All rights reserved.