2012-11-15 202 views
3

我剛安裝了xampp,但我有問題插入數據到MySQL表中。 我插入的數據不會出現在phpmyadmin中。我不確定是什麼問題。插入數據到MySQL表

任何幫助將衷心感謝,這裏是我的代碼:

<html> 
<head> 
<title>Test</title> 
<body> 
<form action="test.php" method="post"> 
Firstname: <input type="text" name="firstname" /> 
Lastname: <input type="text" name="lastname" /> 
Age: <input type="text" name="age" /> 
<input type="submit"name="submit" value="submit"/> 
</form> 

<?php 
$host ="localhost"; 
$username = "***"; 
$password = "***"; 
$database = "***"; 
$table ="persons"; 
$con = mysql_connect("localhost","***","***"); 
if (!$con) 
{ 
die('Could not connect: ' . mysql_error()); 
} 
mysql_select_db("bucksbug_mesovot", $con); 

$sql="INSERT INTO persons (firstname, lastname, age) 
VALUES('$_POST[firstname]','$_POST[lastname]','$_POST[age]')"; 

    if (!mysql_query($sql,$con)) 
    { 
    die('Error: ' . mysql_error()); 
    } 
    echo "Data inserted"; 

    mysql_close($con); 

    ?> 
    </body> 
    </html> 
+1

你得到任何錯誤? - 還記得檢查表單是否在嘗試添加類似之前發佈:if($ _ SERVER ['REQUEST_METHOD'] ==「POST」){} – Jacta

+1

爲什麼當它已被棄用時仍然使用'mysql_ *'? –

+4

停止使用此代碼,直到您瞭解並學習如何避免[SQL注入攻擊](http://bobby-tables.com)。否則你的服務器將會火上澆油。而且你可能會想要更改你的數據庫密碼,因爲你現在已經把所有的密碼都粘貼到了每個人都可以看到的地方。 –

回答

2

雖然你真的應該切換到PDO與綁定參數/庫MySQLi和預準備的語句,以避免SQL注入和破壞的SQL語句,如果你的變量包含引號,你可能會碰到PDO/mysqli的問題:你的密碼(改變它!)包含$

參見codepad下面的例子:

<?php 

function test($var) 
{ 
    echo $var; 
} 

$test_var = "test$string"; 

test($test_var); 

輸出:

test 

您將無法成功連接到數據庫,你的密碼將永遠是正確的。

變化:

"=c(p$zTTH2Jm" 

到:

'=c(p$zTTH2Jm'