Visualizzazione dei risultati da 1 a 7 su 7

Discussione: xdebug lato server

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    18

    xdebug lato server

    Ciao a tutti,
    sto cercando di debuggare il mio webservice lato server, solo che non so bene come fare a configurare il debugger.
    Utilizzo netbeans come ide e xdebug come debugger php, attualmente lavoro in localhost sia lato client che lato server(Apache in locale).

    Per fare il debug del client metto un breakpoint nello script php che invia la richiesta al server ma quando arrivo alla procedura vera e propria che effettua la Request al server ottengo direttamente il result senza avere la possibilità di debuggare le istruzioni che compie esattamente.
    C'è un modo per debuggare lo script lato server quando viene eseguito?
    Grazie.

  2. #2
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    Sei sicuro che xdebug stia funzionando? Sul client utilizzi xampp o cosa?

    Siamo sempre troppo gelosi delle nostre grandi piccole opere! - Grino inedito.
    Lavori e Lavoretti

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    18
    Sul client utilizzo EasyPHP 5.3.1. La mia versione di PHP è la 5.3.3.

    Il debug mi funziona quando imposto dei breakpoint sullo script lato client..è il debug lato server che non riesco a fare..

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    18
    Buongiorno a tutti..
    la questione mi rimane ancora irrisolta..qualche idea?
    Grazie.

  5. #5
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    Se xdebug stesse funzionando, nel moneto in cui avvii il debug appunto con Debug|Debug Project, si apre il browser e l'esecuzuine si ferma immediatamente alla prima riga del primo script (probabilmente index.php), quindi devi tornare nell'ide e fare clic su Debug|Continue

    Il fatto che quando effettui il debug non si fermi mi fa pensare che o non stai utilizzando correttamente lo strumento o non è installato bene, sebbene easyphp dovrebbe avere xdebug già attivo. A meno che non hai tolto la spunta nelle options a Stop at first line.

    Nel browser, nella barra dell'indirizzo, dovrebbe apparire qualcosa del tipo
    http://localhost/index.php?XDEBUG_SE...etbeans-xdebug
    in cui netbeans-xdebug è il valore impostato in Tools|Options scheda PHP, scheda Debugging nel campo Session ID

    Non mi è chiaro cosa intendi con "Il debug mi funziona quando imposto dei breakpoint sullo script lato client..è il debug lato server che non riesco a fare..". L'ide ti permette sempre di impostare un breakpoint a prescindere che xdebug sia utilizzao o no. E' solo se avvii il debug del progetto e xdebug si mette in funzione che quel break point assume un senso.

    Nota: Se hai easyphp 5.3.1 dovresti avere php 5.3.1, comunque

    Siamo sempre troppo gelosi delle nostre grandi piccole opere! - Grino inedito.
    Lavori e Lavoretti

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    18
    Salve Grino...
    Mi sa che mi sono spiegata male..mea culpa. Provo ad essere più precisa.
    Xdebug mi funziona correttamente, infatti quando avvio il debug da netbeans si apre il browser e nella barra degli indirizzi mi compare proprio quel percorso che scrivi tu. Poi l'esecuzione si ferma alla riga dove ho impostato il breakpoint e devo tornare in netbeans e cliccare su Debug/Continue per seguire le istruzioni passo-passo.
    Il problema in realtà mi sorge qui: (premetto che sto facendo delle prove in locale)
    In questo script (request.php), effettuo una chiamata di tipo POST utilizzando la libreria curl per inviare dei dati compressi ad un server che li riceve e li processa:
    Il server è "gestito" dallo script <dispatcher.php>

    <request.php>
    $url=http://localhost/webrest/api/dispatcher.php';
    $request = new RestRequest($url, 'POST',$compress);
    $request->execute(); //dispatcher.php processa la request
    echo '<pre>' . print_r($request, true) . '</pre>'; //stampo la risposta del server

    Se metto il breakpoint sulla terza riga, mi succede che viene eseguito l'execute ed al termine dell'istruzione mi passa alla riga successiva del print_r.
    Quello che io vorrei è che il controllo del debug passasse al dispatcher.php per riuscire a fare il debug anche del server.

    Esiste un modo?
    Grazie,elizetta

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    18
    Salve a tutti..
    qualcuno più esperto di me può dirmi se c'è una soluzione al mio quesito?
    Grazie.

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.