Visualizzazione risultati 1 fino 7 di 7

Discussione: Far comparire "select"

  1. #1
    Guest

    Predefinito Far comparire "select"

    Salve, ho una textarea con id "message", ora devo far in modo che se un utente digita il simbolo "@" e una lettera dopo (ad esempio @l ) appare una lista (o sotto la textarea o 'attaccata' al cursore) col risultato della query:

    Codice PHP:
    "SELECT * FROM amici WHERE email='$email' AND amico='$email_amico'".
    I problemi sono i seguenti:

    1. Ottenere l' email dell' amico, dovrei selezionare dalla tabella users tutti i nomi la cui iniziale è la prima lettera digitata dopo @ (o le prime 2,3 etc), prendere le loro email (direttamente dalla tabella users) e vedere se quell' email è presente nella tabella amici, accanto al campo "email" che avrà come valore l' email dell' utente. (Per questo credo basti una chiamata ajax ad una pagina php che esegue queste operazioni);

    2. Ottenere i primi caratteri digitati dopo @, inviare quei caratteri tramite una chiamata alla pagina che effettuerà le operazioni elencate nel punto 1.

    Il problema è dunque ottenere o caratteri dopo @, come posso fare?

  2. #2
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,767

    Predefinito

    Credo che il javascript non possa accedere in un database, visto che è un linguaggio lato client e il database risiede sul server, immagino che quella query la usi per eseguirla in un database mysql vero?

    Se si, immagino anche che vuoi fare una specie di auto-completamento, far apparire, come dici te, una lista con tutti i risultati prodotti dalla query, vero?

    Puoi farlo con ajax, se è quello che intendi, mandando una richiesta a una pagina php, che esegue la query e stampa i risultati, a quel punto i risultati passati ad ajax li inserisci in un div, oppure, se si tratta di quello che suppongo io, uno script di auto-completamento, puoi usare jquery, che semplifica le richieste ajax:

    http://www.emawebdesign.com/2010/03/...ramite-jquery/

    P.S.: Se non ricordo bene jQuery ha un metodo, che ora non ricordo, per l'auto-completamento dei moduli, se è quello che a te intendi
    Ultima modifica di sevenjeak : 04-08-2011 alle ore 21.56.16

    Sevenjeak
    Software developer and much more

  3. #3
    Guest

    Predefinito

    No a me serve in javascript/jquery/ajax di trovare i caratteri digitati dopo il simbolo "@" in una textarea, il resto lo faccio con una chiamata ajax ad una pagina php

  4. #4
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,767

    Predefinito

    Forse non mi sono spiegato bene io o non ho capito bene, ma non hai scritto quello che io ho detto?

    Praticamente, puoi farlo semplicemente inserendo un div, magari sotto al campo, che tramite una chiamata ajax alla pagina php inserisci il risultato prodotto all'interno del div, nel link che ti ho postato fa quello, ma tutto questo si chiama auto-completamento.

    Se non è quello che intendi allora spiegati meglio.

    Sevenjeak
    Software developer and much more

  5. #5
    Guest

    Predefinito

    No, il risultato lo ottengo con una chiamata ajax, fin qui ci siamo. Lascia perdere il discorso delle operazioni di trovare email etc.

    L' unica cosa che devo fare è questa: In una textarea devo trovare i caratteri scritti dopo il simbolo "@". Stop.

  6. #6
    L'avatar di sevenjeak
    sevenjeak non è connesso AlterGuru
    Data registrazione
    25-10-2007
    Residenza
    Roma
    Messaggi
    1,767

    Predefinito

    Ah, scusa, non l'avevo capito questo:

    Cmq, a mi mi vengono due soluzioni in mente:

    1. Ho fai un'altra chiamata ajax con stessa query, il valore della query a questo punto lo estrai e lo fai passare il explode() separandolo dalla @, per poi stampare come risultato il valore del secondo elemento prodotto dalla funzione explode(), se ovviamente la stringa contiene una chiocciola solo, dato che si tratta di un email suppongo di si.

    2. Tramite javascript, se ad esempio la tua richiesta ajax produce i risultati, ad esempio in questo modo ( separati da <br />, per esempio ):

    Codice:
    prima_email<br />seconda_email
    Puoi usare la funzione split, del javascript, che abbia come separatore il <br />, per poi rieseguire la funzione sprit su ogni elemento dell'arrey prodotta, questa volta con separatore @.

    Scusa ma vado di fretta, ora purtroppo non posso farti un codice di esempio, ma era questo che volevi vero? se no, non saprei che dirti.
    Ultima modifica di sevenjeak : 05-08-2011 alle ore 08.31.39

    Sevenjeak
    Software developer and much more

  7. #7
    Guest

    Predefinito

    Sì esatto, volevo ricreare una sorta di "tag" stile facebook o twitter, ma vedo che le cose si complicano, meglio lasciar stare

Regole di scrittura

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