Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1

    [Ajax] Gestione errori lato server ........

    Ciao.
    Mi piacerebbe conoscere un Vs. parere riguardo
    la gestione degli errori lato server con le chiamate
    XHR.
    Ad esempio se invio dei dati al Db tramite XHR
    e la query non va a buon fine come lo gestite
    l'errore ?
    Per adesso se non devo recuperare dati faccio
    restituire da php 0 o 1 per poi gestirlo lato js.

    Se invece devo recuperare anche dei dati
    in caso di errore faccio restituire da php una stringa
    vuota.
    Ultimamente usando JSON controllo il tipo di dato.


    Pareri e suggerimenti


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  2. #2
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Non è che c'entri molto con php, comunque io uso un header http personalizzato

  3. #3
    Non è che c'entri molto con php
    Non ho chiesto la gestione d'errore lato client
    ma lato server nel senso se tramite ajax passo
    ad esempio un messaggio di tal utente via post/get
    voglio controllare se il msg è stato o meno inserito nel Db
    in caso sia andato tutto liscio visualizzerò al clt un msg
    con Ok in caso contrario un bel Sorry server too busy
    quindi è php che deve in qc modo gestire l'errore nel senso
    me lo dovrà segnalare al js no ?

    comunque io uso un header http personalizzato
    Potresti fare un esempio


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  4. #4
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da whisher
    Non ho chiesto la gestione d'errore lato client
    ma lato server nel senso se tramite ajax passo
    ad esempio un messaggio di tal utente via post/get
    voglio controllare se il msg è stato o meno inserito nel Db
    in caso sia andato tutto liscio visualizzerò al clt un msg
    con Ok in caso contrario un bel Sorry server too busy
    quindi è php che deve in qc modo gestire l'errore nel senso
    me lo dovrà segnalare al js no ?
    No. Ti stai chiedendo come visualizzare sul client l'esito di ciò che è accaduto sul server. Un problema php sarebbe "Come faccio ad inserire i dati sul db?"


    Originariamente inviato da whisher
    Potresti fare un esempio
    http://jano.myphp.it/

    Studiati il login

  5. #5
    Interesting grazie del link .

    Non per essere pedante ma
    estendere Object non è diciamo
    così 'decrecato'

    var link = new Object();





    Ps.
    A sto punto mi sa che tocca chiedere al mod il trasferimento

    No. Ti stai chiedendo come visualizzare sul client l'esito di ciò che è accaduto sul server. Un problema php sarebbe "Come faccio ad inserire i dati sul db?"
    Va bè lasciamo perdere se la query per il login fallisce
    a causa del troppo carico sul server del dire al clt che
    qc non va chi se ne frega con maxWait non mi sembra che gestisci una cosa del genere almeno appunto lato clt.
    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  6. #6
    vedi se trovi qualcosa di interessante
    http://javascript.html.it/guide/lezi...-ajax-con-php/

    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #7
    Ci do un occhio e ti faccio sapere grazie del link.

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  8. #8
    Per chiarire il concetto posto un po di codice
    lato php
    Codice PHP:
    if(isset($_POST['nickname'])){ 
    header('Content-type: text/html; charset=utf-8'); 
        try { 
            
    $db= new DB($options); 
            
    $user= new User($db); 
            
    $user->insert($_POST['nickname']); 
             
            
    /*return a multidimensional array encoding with json_encode*/ 
            
    echo $user->getData(); 
        } 
        catch (
    InvalidArgException $e) { 
            
    /* return a json string */ 
                      
            
    echo json_encode('Sorry, the server is too busy'); 
            
    error_log($e->getMessage()."\n"3$root."/log/error.log"); 
            exit(); 
        } 
        catch (
    DbException $e) { 
            
    /* return a json string */ 
                     
            
    echo json_encode('Sorry, the server is too busy'); 
            
    error_log($e->getMessage()."\n"3$root."/log/error.log"); 
            exit(); 
        } 

    js
    Codice PHP:
    var user = eval("(" xhr.responseText ")"); 
    if(
    typeof user=='string'

    //something was wrong :( 

    else 

    //it works ;) 

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  9. #9
    @andr3a

    Cool !


    L'uovo di colombo !
    Quando utilizzo ajax sono sempre nel dubbio
    di cosa possa succede nel file della request.
    Utilizzando error_log visualizzo solo gli errori.
    Con la tua classe è possibile vedere cosa accade
    sotto le quinte

    Scusa se approfitto ma in caso di imprevisti
    a sto client mandi a dire qc o no ?
    Va o no gestita questa tipologia chiamiamoli
    di imprevisti mi sta venendo il dubbio


    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

  10. #10
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da whisher
    estendere Object non è diciamo
    così 'decrecato'

    ...........

    Va bè lasciamo perdere se la query per il login fallisce
    a causa del troppo carico sul server del dire al clt che
    qc non va chi se ne frega con maxWait non mi sembra che gestisci una cosa del genere almeno appunto lato clt.
    Ti dispiace spiegarti meglio? :master:

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.