我正在處理一個表單,在這個表單中用戶進行了一些選擇,然後每個選定的項目的名稱都需要進入db中的表格。用戶的姓名可以與每個項目一起作爲用戶選擇的標識符。選擇的數量和選擇的名稱將改變,但數據庫中的兩個字段保持不變。我的問題是,在插入時,我收到一個錯誤消息,指出在我發送的VALUE中指定的名稱沒有列。它把我絆倒了......不知道爲什麼。非常感謝您的幫助或建議。如何將簡單數組插入數據庫(php/MySQL)?
全碼:
<?php
$db = mysql_connect('localhost', 'root', 'root') or die(mysql_error());
mysql_select_db('reflex') or die(mysql_error());
$name_array = array('harp1','harp2','harp3');
if (isset($_POST['interests'])) {
$interests_str = implode(" ", $_POST['interests']);// converts $_POST interests into a string
$interests_array = explode(" ", $interests_str);// converts the string to an array which you can easily manipulate
foreach ($name_array as $row=>$name)
{
$username = mysql_real_escape_string($name);
$photo = mysql_real_escape_string($_POST['interests'][$row]);
mysql_query('INSERT INTO photos (username, photo) VALUES ("' . $username . '", ' . $photo . ')') or die(mysql_error());
}
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>array test</title>
</head>
<body>
<form action="array.php" method="post">
<input type="checkbox" name="interests[]" value="Politics" />Politics<br />
<input type="checkbox" name="interests[]" value="Entertainment" /><br />
<input type="checkbox" name="interests[]" value="Tech" /><br />
<input type="checkbox" name="interests[]" value="Health" /><br />
<input type="checkbox" name="interests[]" value="Living" /><br />
<input type="checkbox" name="interests[]" value="Travel" /><br />
<input type="checkbox" name="interests[]" value="World" /><br />
<input type="submit" value="Submit">
</form>
</body>
</html>
'reflex'db的結構是什麼,這個用戶表單中有哪些字段? – ayush 2011-02-06 08:00:35