blob: 0158279acb35bec0100574cdbbafa298af66e14d [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="generator" content="Adobe RoboHelp 8">
<title>Debugging a PHP Web Page</title>
<link rel="StyleSheet" href="default.css" type="text/css">
<style type="text/css">
<!--
body { border-left-style:None;
border-right-style:None;
border-bottom-style:None;
background-color:Transparent;
border-top-style:None; }
-->
</style>
<style type="text/css">
<!--
body { border-left-style:None;
border-right-style:None;
border-bottom-style:None;
background-color:Transparent;
border-top-style:None; }
-->
</style>
<script type="text/javascript" language="JavaScript">
//<![CDATA[
function reDo() {
if (innerWidth != origWidth || innerHeight != origHeight)
location.reload();
}
if ((parseInt(navigator.appVersion) == 4) && (navigator.appName == "Netscape")) {
origWidth = innerWidth;
origHeight = innerHeight;
onresize = reDo;
}
onerror = null;
//]]>
</script>
<style type="text/css">
<!--
div.WebHelpPopupMenu { position:absolute;
left:0px;
top:0px;
z-index:4;
visibility:hidden; }
p.WebHelpNavBar { text-align:right; }
-->
</style>
<script type="text/javascript" language="javascript1.2" src="whmsg.js"></script>
<script type="text/javascript" language="javascript" src="whver.js"></script>
<script type="text/javascript" language="javascript1.2" src="whproxy.js"></script>
<script type="text/javascript" language="javascript1.2" src="whutils.js"></script>
<script type="text/javascript" language="javascript1.2" src="whlang.js"></script>
<script type="text/javascript" language="javascript1.2" src="whtopic.js"></script>
<script type="text/javascript" language="javascript1.2">//<![CDATA[
<!--
if (window.gbWhTopic)
{
var strUrl = document.location.href;
var bc = 0;
var n = strUrl.toLowerCase().indexOf("bc-");
if(n != -1)
{
document.location.href = strUrl.substring(0, n);
bc = strUrl.substring(n+3);
}
if (window.setRelStartPage)
{
addTocInfo("Tasks\nDebugging Files and Applications\nDebugging a PHP Web Page");
addAvenueInfo("Tasks","locally_debugging_a_php_script.htm","analyzing_debugger_results.htm");
}
document.write("<p style=\"text-align:left\"> ");
AddMasterBreadcrumbs("ide_help.htm", "", "&gt;", "Home", "pdt_table_of_contents.htm");
document.write("<a href=\"tasks.htm\">Tasks<\/a> &gt; <a href=\"debugging.htm\">Debugging Files and Applications<\/a> &gt; Debugging a PHP Web Page<\/p>");
if (window.setRelStartPage)
{
setRelStartPage("ide_help.htm");
autoSync(0);
sendSyncInfo();
sendAveInfoOut();
}
}
else
if (window.gbIE4)
document.location.reload();
//-->
//]]></script>
</head>
<body leftmargin="5" topmargin="5" rightmargin="5" bottommargin="5"><script type="text/javascript" language="javascript1.2">//<![CDATA[
<!--
if (window.writeIntopicBar)
writeIntopicBar(4);
//-->
//]]></script>
<div style="width: 100%; position: relative;" id="header">
<p align="right"><a
title="Documentation Survey" href="http://spreadsheets.google.com/viewform?formkey=dC1scEswTjFia2tDQ3Y5TVJBbkNQcWc6MQ">Documentation
Survey</a>
| <a href="javascript:crlf=&quot;&quot;;h=location.href;t=document.title;e = &quot;&quot; + (window.getSelection ? window.getSelection() : document.getSelection ? document.getSelection() : document.selection.createRange().text); if (e!=null) location=&quot;mailto:documentation@zend.com&quot; + &quot;?Subject= Feedback on PDT for page &quot; + escape(t) + &quot;&amp;Body=&quot; + escape(e).replace(/ /g, &quot;+&quot;) + crlf + &quot; &quot;; void 0"><span
style="background-color: #ffffff;">Submit Documentation</span><span
style="background-color: #ffffff;"> Feedback</span></a><span
style="background-color: #ffffff;"></span><span style="background-color: #ffffff;">
</span><span style="background-color: #ffffff;">|
</span><span
style="background-color: #ffffff;"><a title="View Latest Version and Get PDF Online"
href="http://www.zend.com/en/resources/zend-documentation/"
target="_blank">View Latest
Version and Get PDF Online</a></span></p>
</div>
<h1>Debugging a PHP Web Page
</h1>
<p>This procedure describes how to debug whole applications, projects,
files or collections of files that are already on the server.</p>
<div>
<p class="Note">Note:</p>
<p class="NoteText">Your server must be running the XDebug in order for remote debugging capabilities to function.<br>
</p>
</div>
<table cellspacing="0" width="100%">
<col style="width: 7.093%;">
<col style="width: 92.907%;">
<tr style="vertical-align: top; height: 22px;">
<td style="width: 7.093%; padding-right: 10px; padding-left: 10px;"><p
style="font-size: 6pt;">&#160;</p></td>
<td style="width: 92.907%; padding-right: 10px; padding-left: 10px;"><p
style="font-weight: bold;">&#160;</p></td>
</tr>
<tr style="vertical-align: top; height: 35px;">
<td style="width: 7.093%; padding-right: 10px; padding-left: 10px;"><p
style="font-size: 6pt;"><img src="ref_icon.png" alt="Instructions on how to complete a procedure" title="Instructions on how to complete a procedure" style="border: none;" width="28" height="33" border="0"></p></td>
<td style="width: 92.907%; padding-right: 10px; padding-left: 10px;"><p
class="NUMBERS" style="font-weight: bold;"><span style="font-weight: bold;"><b>To
debug a PHP Web Page:</b></span></p>
<ol type="1">
<li class="p" style="margin-left: -20px;"><p>Click the arrow
next to the debug button <img src="debug_icon.png" alt="debug_icon.png" style="border: none;" width="39" height="25" border="0">
on the toolbar and select Open Debug Dialog -or- select Run
| Open Debug Dialog.<br>
A Debug dialog will open.</p></li>
<li class="p" style="margin-left: -20px;"><p>Double-click the
PHP Web Page option to create a new debug configuration.</p></li>
</ol>
<p class="picture">&#160;<img src="debug_configuration_webpage.png" alt="debug_configuration_webpage.png" style="border: none;" width="429" height="336" border="0"></p>
<ol start="3" type="1">
<li class="p" style="margin-left: -20px;"><p>Enter a name for
the new configuration.</p></li>
<li class="p" style="margin-left: -20px;"><p>Select the Server
Debugger to be used . PDT supports
both the Zend Debugger and XDebug. </p></li>
<li class="p" style="margin-left: -20px;"><p>Select your server
from the PHP Server list.<br>
If you have not yet configured your server, click New.<br>
The PHP Server Creation Wizard will open.<br>
Configure your server by following the instructions on '<a href="php_servers.htm#Adding_servers">adding a new server</a>'
under the <a href="php_servers.htm">PHP Servers Preferences</a>
page.
</p></li>
<li class="p" style="margin-left: -20px;"><p>To check whether
your server connection is correctly configured, and that PDT can communicate
with your server debugger, click the 'Check Debug Server Connection'
button.</p></li>
<li class="p" style="margin-left: -20px;"><p>Under PHP File,
click Browse and select your 'debug target' file (the file
from which the debugging process will start.)</p></li>
<li class="p" style="margin-left: -20px;"><p>Select whether
the Debugger should stop at the first line of code by marking/unmarking
the 'Break at First Line' checkbox.</p></li>
<li class="p" style="margin-left: -20px;"><p>The URL to be
debugged will have been automatically created based on the
file name and your server address. If the URL does not point
to your debug target's location, unmark the Auto Generate
checkbox and modify the URL.</p></li>
<li class="p" style="margin-left: -20px;"><p>For further Debug
options, select the Advanced tab, which has the following
options:</p></li>
</ol>
<p class="picture"><img src="debug_new_phpwebpage_advanced_config_pdt.png" alt="debug_new_phpwebpage_advanced_config_pdt.png" style="border: none;" width="424" height="216" border="0"></p>
<ul type="square">
<li><p>Open in Browser - Mark if you would like the application
to be displayed in PDT
's internal browser while it is debugged.</p></li>
<li><p>Choose whether to:</p></li>
<li type="disc"><p style="margin-left: 36px;">Debug All Pages
- The specified page and all the pages linked to it are debugged.
The browser waits for the debug of each page before displaying
it.</p></li>
<li type="disc"><p style="margin-left: 36px;">Debug First Page
Only - Only the first page is debugged.</p></li>
<li type="disc"><p style="margin-left: 36px;">Start Debug from
- Select the URL from which you would like the Debugging process
to start.</p></li>
<li type="disc"><p style="margin-left: 36px;">Continue Debug
from this Page - Selecting this option will result in all
the pages linked to the URL being debugged.</p></li>
</ul>
<ol start="11" type="1">
<li><p>Click Apply and then Debug.</p></li>
<li><p>Click Yes if asked whether to open the PHP Debug Perspective.</p></li>
</ol></td>
</tr>
<tr style="vertical-align: top; height: 19px;">
<td colspan="2" style="width: 100%; padding-right: 10px; padding-left: 10px;"><p>See
the &quot;<a href="analyzing_debugger_results.htm">Running and
Analyzing Debugger results</a>&quot; topic for more information
on the outcome of a debugging process.</p></td>
</tr>
</table>
<div>
<p class="Note">Note:</p>
<p class="NoteText">If the file contains 'include' or 'require' calls to
files which are not contained within the project, you must <a href="adding_elements_to_a_project_s_include_path.htm">add
them to the project's Include Path</a> in order to simulate your production
environment.<br>
In addition, if a file defined with an absolute path to a server location
(See '<a href="include_paths.htm">Include Paths</a>' for more on absolute
file locations) is called, a Path Mapping dialog will appear. See <a href="path_mapping.htm">Path
Mapping</a> for more information.</p>
</div>
<table cellspacing="0" width="100%">
<col style="width: 7.093%;">
<col style="width: 92.907%;">
<tr style="vertical-align: top;">
<td style="width: 7.093%; padding-right: 10px; padding-left: 10px;"><p
style="font-size: 6pt;">&#160;</p></td>
<td style="width: 92.907%; padding-right: 10px; padding-left: 10px;"><p>&#160;</p></td>
</tr>
<tr style="vertical-align: top;">
<td style="width: 7.093%; padding-right: 10px; padding-left: 10px;"><p
style="font-size: 6pt;"><img src="link_icon.png" alt="link_icon.png" style="border: none;" width="32" height="40" border="0"></p></td>
<td style="width: 92.907%; padding-right: 10px; padding-left: 10px;"><p
style="font-weight: bold;">Related Links:</p>
<p style="font-weight: normal;"><a href="troubleshooting_remote_debugging.htm">Setting
Up Remote Debugging</a></p>
<p><a href="working_with_the_debugger.htm">Working
with the Debugger</a></p>
<p><a href="debugging.htm">Debugging</a></p>
<p><a href="debug.htm">Debug
Preferences</a></p>
<p><a href="locally_debugging_a_php_script.htm">Locally
Debugging a PHP Script</a></p>
<p><a href="analyzing_debugger_results.htm">Running
and Analyzing Debugger Results</a></p></td>
</tr>
<tr style="vertical-align: top;">
<td style="width: 7.093%; padding-right: 10px; padding-left: 10px;"><p
style="font-size: 6pt;">&#160;</p></td>
<td style="width: 92.907%; padding-right: 10px; padding-left: 10px;"><p>&#160;</p></td>
</tr>
</table>
<div style="width: 100%; position: relative;" id="footer">
<p style="text-decoration: underline; "
align="center">PHP Development
Tools</p>
</div>
<script type="text/javascript" language="javascript1.2">//<![CDATA[
<!--
if (window.writeIntopicBar)
writeIntopicBar(0);
highlightSearch();
//-->
//]]></script>
</body>
</html>