2017-08-31 169 views
-1

我得到了這段代碼,它給了我一個錯誤500. 我很可能在這裏出錯了,但我真的需要一些幫助。使用變量插入SQL數據庫時出現錯誤500

這裏是我的代碼

<?php include('index.php'); ?> 
<?php include('config.php'); ?> 
<?php 
$fornavn = $_POST['fornavn']; 
$efternavn = $_POST['efternavn']; 
$postnummer = $_POST['postnummer']; 
$alder = $_POST['alder']; 

$sql = INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder) 
VALUES ('$fornavn', '$efternavn', '$postnummer', '$alder'); 

if ($conn->query($sql) === TRUE) { 
    echo "New record created successfully"; 
} else { 
    echo "Error: " . $sql . "<br>" . $conn->error; 
} 

$conn->close(); 
?> 

的POST標籤是的index.php等相同。 請幫忙。 在此先感謝!

+0

嘗試'使用error_reporting(E_ALL);'和'的ini_set( 'display_errors設置',1)',你會得到你的錯誤 –

+0

請添加更多信息。 –

+0

「500內部服務器錯誤」(或空白頁面)意味着您的腳本正在拋出錯誤,但PHP配置爲將其隱藏起來。你需要儘快修復它,因爲沒有錯誤消息的幫助編碼很難。作爲快速入門,您可以在計算機的系統範圍的'php.ini'文件([details here](http://stackoverflow.com/a/5680885/13508))中設置'error_reporting'和'display_errors'指令。錯誤的拇指規則:在開發中顯示,登錄生產。 –

回答

4

你需要把你的查詢字符串""第一

<?php include('index.php'); ?> 
<?php include('config.php'); ?> 
<?php 
$fornavn = $_POST['fornavn']; 
$efternavn = $_POST['efternavn']; 
$postnummer = $_POST['postnummer']; 
$alder = $_POST['alder']; 

$sql = "INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder) 
VALUES ('$fornavn', '$efternavn', '$postnummer', '$alder');"; 

if ($conn->query($sql) === TRUE) { 
    echo "New record created successfully"; 
} else { 
    echo "Error: " . $sql . "<br>" . $conn->error; 
} 

$conn->close(); 
?> 

還可以使用準備好的語句從sql注入,以防止

開啓PHP錯誤上,這樣你可以得到錯誤。添加下面一行在你的PHP文件

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

先看到任何更可能出現的錯誤,因爲它可以幫助找到問題類型這個開頭:

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

個人,因爲我總是用「」周圍的SQL查詢,我看你不這樣做,也許你應該添加它們也因此使它:

$sql = "INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder)VALUES 
('$fornavn', '$efternavn', '$postnummer', '$alder')"; 

而且我認爲$康恩在您的config.php中定義的?

1

正如評論中所述,首先確保您啓用了錯誤報告error_reporting(E_ALL);ini_set('display_errors',1)

也看看這個SQL查詢字符串沒有用引號括起來。

$sql = INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder) 
VALUES ('$fornavn', '$efternavn', '$postnummer', '$alder'); 

應該

$sql = "INSERT INTO medlemmer (fornavn, efternavn, postnummer, alder) 
VALUES ('$fornavn', '$efternavn', '$postnummer', '$alder')"; 
相關問題