Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Problema ajax?

  1. #1

    Problema ajax?

    ho creato una chiamata ajax per il login ho anche scritto la pagina login.php tutto funziona bene però la pagina php mi ritorna "OK" se il login a avuto sucesso oppure un errore che io vorrei inserire in un alert pero quando faccio il controllo
    if(data == "OK")
    location.reload();
    else alert(data);
    non funziona cioè scatta sempre l'else che mostra OK cioè la pagina php ritorna bene il risultato come posso fare

  2. #2
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Dipende da come e' fatto il programma PHP... spesso introduce una ritorno a capo al termine della stringa, fai il controllo cosi:

    if (data.indexOf"OK")>=0)
    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

  3. #3
    ho fatto cosi
    if (data.indexOf("OK") >=0)
    location.reload(true);
    else alert(data);

    e adesso scatta sempre l'if

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da CristianMascia
    ho fatto cosi
    if (data.indexOf("OK") >=0)
    location.reload(true);
    else alert(data);

    e adesso scatta sempre l'if
    Probabilmente è un errore php, ti ricordo che usare ajax solo perché lo fanno tutti è sbagliato, nel tuo contesto ad esempio usare ajax e a risposta positiva ricaricare la pagina e ridondante, ajax a lo scopo principale di non ricaricare la pagina ma di aggiornare solo parte di essa, col vantaggio che meno dati muovo più veloce e pratico sarà il sito.
    La gestione autenticazione con ajax e più complessa dato che dovrà gestire sia la parte server con sessioni o cookie che la parte client con dei response testuali/stringhe.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Accertati di cosa realmente ti restituisce il PHP, per esempio con:
    codice:
    for (var i=0;i<data.length;i++) {
      alert(data.charCodeAt(i))
    }
    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

  6. #6
    Utente di HTML.it L'avatar di carlomarx
    Registrato dal
    Oct 2009
    Messaggi
    1,669
    Originariamente inviato da CristianMascia
    non funziona cioè scatta sempre l'else che mostra OK cioè la pagina php ritorna bene il risultato come posso fare
    Magari assicurandoti che non ci siano spazi vuoti prima e dopo il response...

    codice:
    if (data.trim() === "OK") { location.reload(); }
    else { alert(data); }
    oppure, se vuoi il supporto per i browser vecchissimi...:

    codice:
    if (data.replace(/^\s+|\s+$/g, "") === "OK") { location.reload(); }
    else { alert(data); }
    Tutto ciò che fai con jQuery puoi farlo meglio e con la metà del codice in puro JavaScript.

  7. #7
    grazie a tutti ho risolto con il trim

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.