PHP 程式的除錯 Debug 方法
發表於 : 2004-05-02 18:18:36
資料來源
http://timteam.org/?TIM=FORUM&FORUM=1&P ... 2#TIM11442
<?php
$__DEBUG_MY_CODE__ = true;
//*****************************************
// Debug 先決條件:打開系統 Debug
//*****************************************
if($__DEBUG_MY_CODE__) {
error_reporting(255);
}
//*****************************************
// Debug 第一條:永遠要檢查 POST 上來的資料
//*****************************************
if($__DEBUG_MY_CODE__) {
echo "<H2>Post Data:</H2><PRE>";
print_r($_POST);
echo "</PRE>";
}
//******************************************
// Debug 第二條:不要以為你的SQL永遠在工作中
//******************************************
$proj5a=mysql_connect("localhost","proj5a","密碼");
if (!$proj5a) {
die('<HR><P>Could not connect to database:<BR><B>'.
mysql_error().'</B>');
}
//*********************************************
// Debug 第三條:不要以為 Database 名不會打錯字
//*********************************************
if(!mysql_select_db("proj5a")) {
die('<HR><P>Could not select database "proj5a":<BR><B>'.
mysql_error().'</B>');
}
//********************************************
// Debug 第四條:不要以為 SQL 陳述式一定是對的
//********************************************
$str="SELECT * FROM proj5a where student like '%id%'";
if($__DEBUG_MY_CODE__) {
echo('<HR><P>Executing SQL Command: <BR>'.
'<TABLE BORDER=0 BGCOLOR=#FFCC99><TR><TD>'.
$str.'</TD></TR></TABLE>');
}
//*****************************************************
// Debug 第五條:電腦不是人腦,你看是對的,電腦看是錯的
//*****************************************************
$result=mysql_query($str,$proj5a);
if($result===false) {
die('<HR><P>SQL Command Error: '.mysql_error());
}
//*****************************************************
// Debug 第六條:不要認為你的查詢結果只有一筆
//*****************************************************
echo "<HR>Result:<P><TABLE BORDER=1>";
while ($record = mysql_fetch_array($result, MYSQL_NUM)) {
echo "<TR><TD>".join($record,"</TD><TD>")."</TD></TR>";
}
echo "</TABLE>";
mysql_close($proj5a);
?>
<?php
echo "學號: ";echo .$_POST['id'];
echo "<br>";
echo "姓名: ";echo .$_POST['name'];
echo "<br>";
echo "電話: ";echo .$_POST['phone'];
echo "<br>";
echo "地址: ";echo .$_POST['address'];
echo "<br>";
echo "學費: ";echo .$_POST['price'];
?>
http://timteam.org/?TIM=FORUM&FORUM=1&P ... 2#TIM11442
<?php
$__DEBUG_MY_CODE__ = true;
//*****************************************
// Debug 先決條件:打開系統 Debug
//*****************************************
if($__DEBUG_MY_CODE__) {
error_reporting(255);
}
//*****************************************
// Debug 第一條:永遠要檢查 POST 上來的資料
//*****************************************
if($__DEBUG_MY_CODE__) {
echo "<H2>Post Data:</H2><PRE>";
print_r($_POST);
echo "</PRE>";
}
//******************************************
// Debug 第二條:不要以為你的SQL永遠在工作中
//******************************************
$proj5a=mysql_connect("localhost","proj5a","密碼");
if (!$proj5a) {
die('<HR><P>Could not connect to database:<BR><B>'.
mysql_error().'</B>');
}
//*********************************************
// Debug 第三條:不要以為 Database 名不會打錯字
//*********************************************
if(!mysql_select_db("proj5a")) {
die('<HR><P>Could not select database "proj5a":<BR><B>'.
mysql_error().'</B>');
}
//********************************************
// Debug 第四條:不要以為 SQL 陳述式一定是對的
//********************************************
$str="SELECT * FROM proj5a where student like '%id%'";
if($__DEBUG_MY_CODE__) {
echo('<HR><P>Executing SQL Command: <BR>'.
'<TABLE BORDER=0 BGCOLOR=#FFCC99><TR><TD>'.
$str.'</TD></TR></TABLE>');
}
//*****************************************************
// Debug 第五條:電腦不是人腦,你看是對的,電腦看是錯的
//*****************************************************
$result=mysql_query($str,$proj5a);
if($result===false) {
die('<HR><P>SQL Command Error: '.mysql_error());
}
//*****************************************************
// Debug 第六條:不要認為你的查詢結果只有一筆
//*****************************************************
echo "<HR>Result:<P><TABLE BORDER=1>";
while ($record = mysql_fetch_array($result, MYSQL_NUM)) {
echo "<TR><TD>".join($record,"</TD><TD>")."</TD></TR>";
}
echo "</TABLE>";
mysql_close($proj5a);
?>
<?php
echo "學號: ";echo .$_POST['id'];
echo "<br>";
echo "姓名: ";echo .$_POST['name'];
echo "<br>";
echo "電話: ";echo .$_POST['phone'];
echo "<br>";
echo "地址: ";echo .$_POST['address'];
echo "<br>";
echo "學費: ";echo .$_POST['price'];
?>