2016-09-23 51 views
-2

它幾個小時後就工作得很好,但現在它在瀏覽器中顯示代碼而不是執行它。複查三次代碼,文件擴展名爲檢查,甚至重新輸入整個代碼到一個新的PHP,這個錯誤是困擾我。php代碼在屏幕上打印出來而不是執行?

我的代碼是這樣的:

<?php include('usersign.php'); ?> 

<?php 

$servername = "localhost"; 
$dbusername = "root"; 
$dbpassword = "******"; 
$dbname = "userdatabase"; 

$username = $_POST['username']; 
$email = $_POST['email']; 
$category1 = $_POST['category1']; 
$category2 = $_POST['category2']; 
$category3 = $_POST['category3']; 
$password = $_POST['password']; 
$date = date_default_timezone_set('Asia/Kolkata'); 
$date = date('M-d,Y H:i:s'); 


$conn = new mysqli ($servername, $dbusername, $dbpassword, $dbname); 
if ($conn->connect_error) { 
    die("Connection failed: " . $conn->connect_error); 
} 


$sql = "INSERT INTO user (username, email, category1, category2, category3, password, date) 
VALUES ('$username', '$email', '$category1', '$category2', '$category3', '$password', '$date')"; 
if ($conn->query($sql) === TRUE) { 
echo '<script language="javascript">'; 
echo 'alert("You have succesfully registerd with userdatabase Please login..")'; 
echo '</script>'; 
echo '<a href="usersign.php"></a>'; 
} 
else { 
    echo "ERROR" . $sql . "<br>" . $conn->error; 
} 

$conn->close(); 
?> 

任何建議表示讚賞。 ..

+0

您可以[SQL注入](http://php.net/manual/en/security.database.sql-injection.php)開放,並且確實應該使用[Prepared Statements](http:// php。 net/manual/en/mysqli.quickstart.prepared-statements.php)而不是串聯你的查詢。特別是因爲你甚至沒有逃避用戶輸入...從來沒有永遠不會使用用戶輸入沒有正確逃脫它第一... –

+0

它的工作...我剛剛重新啓動服務器。謝謝你..你爲什麼不把它作爲答案發布...... @ MagnusEriksson – harishk

+0

添加它作爲答案....作爲一條經驗法則,如果某件事情剛剛起作用,而且您沒有改變任何事情,那麼始終要重新開始它。事情有時會無聲地崩潰... –

回答

0

嘗試重新啓動您的網絡服務器,因爲您說它只是工作... 如果它仍然無法正常工作,請檢查您的Web服務器日誌中的錯誤,並且最有可能獲得更多信息什麼是實際上還在繼續。

+0

哇。沒有解釋的downvote。有趣的,因爲這實際上解決了他的問題! –

+0

我沒有做那個兄弟..我不能upvote自低信用.. – harishk

+1

不用擔心,我不認爲這是你。這裏有很多下流者駕駛。他們有意見,但不夠確定,無法公開表達。如果人們沒有解釋答案的錯誤(特別是它實際上起作用),那麼對於社區的其他人來說,這並沒有什麼幫助。 –

相關問題