2012-03-08 115 views
0

我寫了一些代碼作爲用戶名和密碼註冊頁面的開始,但我不能得到第一個工作。頁面頂部的變量對應的表單工作正常,但是當重定向到這個頁面時,它只是給出一個空白頁面。PHP無法顯示錯誤消息

我每次編寫一些不只是基本的回聲或類似的代碼時,我似乎得到這個錯誤...有人可以告訴我什麼是錯誤的代碼,是否有任何良好的PHP編輯器,你可以看到錯誤消息或類似的東西?

這不是我第一次得到相同的空白頁錯誤,我很想知道我做錯了什麼。

<?php 
$user = $_POST["username"]; 
$pass = $_POST["password"]; 
$conf_pass = $_POST["conf_password"]; 

$con = mysql_connect("localhost", "webuser1", "12345"); 
if (!$con) { 
    die('Could not connect: ' . mysql_error()); 
} 

if($pass != $conf_pass) { 
    echo ("passwords don't match, <a href="./reg_form.php">return</a>"); 
} 



mysql_close($con); 

?> 
+1

['error_reporting'](http://www.php.net/manual/en/errorfunc.configuration.php#ini.error-reporting)可以成爲你的朋友。 – ghbarratt 2012-03-08 08:23:40

+0

@ghbarratt給出一個鏈接到手冊是很好的,當你建議一個功能。 http://www.php.net/manual/en/function.error-reporting.php – Bazzz 2012-03-08 08:24:53

+0

「* Php白頁*」。不是一個合適的問題標題! – Lion 2012-03-08 08:26:05

回答

2

空白頁通常表示500 Internet服務器錯誤,這通常意味着您的代碼中有語法或其他錯誤。

在你的情況下,錯誤是在引號,嘗試更改爲:

echo ("passwords don't match, <a href='./reg_form.php'>return</a>"); 

我建議在你的代碼開啓錯誤報告,也可以檢查你的錯誤日誌,這會告訴你什麼問題是和行號。

error_reporting(E_ALL); 
ini_set('display_errors', '1'); 

此外,如果使用Firebug,則可以在Net選項卡上看到500內部服務器錯誤。

+0

它似乎錯誤是在報價中,我現在覺得有點愚蠢。不管怎樣,謝謝你 – Sergei 2012-03-08 10:39:21

1

您可以設置錯誤使用,以顯示:

ini_set("display_errors", 1); 
0
echo ("passwords don't match, <a href="./reg_form.php">return</a>"); 

創建下列錯誤:

解析錯誤:語法錯誤,意想不到的 '/' 在...

嘗試將該行更改爲:

echo 'passwords don\'t match, <a href="/reg_form.php">return</a>'; 

error_reporting可能已經向您顯示了這一點(正如我在第一條評論中所建議的那樣)。

0

您的代碼發生錯誤。查看正在生成的錯誤。在頁面頂部使用此命令。

error_reporting(E_ALL); 
0

獲取帶有語法高亮顯示的編輯器以及類似的錯誤將非常出色。有些人喜歡Zend Studio也檢查語法錯誤。