我需要一些幫助來弄清楚如何在一個包含多行的textarea的mysql db中添加多個字段。我想將每行分成6個值(我的db的每個字段都有一個值)。如何從文本區域字段插入到多個文件夾中
例如,我有以下行:
info1|info2|info3|info4|info5|info6
info1|infob|infoc|infod|infoe|infof
info1|info8|info9|info0|info1|info2
info1|info4|info4|info5|info6|info7
每個字段與 「|」 分隔(因爲我在網上找到的例子中的多數民衆贊成,將張貼在這裏的幾個:)
然後我有以下文件:insert_form.php
<form action="insert_engine.php" method="post">
<p>
<textarea name="pctext" id="pctext" cols="100" rows="10"></textarea>
</p>
<p>
<input type="submit" />
</p>
</form>
和我有insert_engine.php:
<?php
$con = mysql_connect("localhost","USER","PASS");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("DBNAME", $con);
// assuming the text area value is in $_GET["pctext"]
$lines = explode("\n", $_GET["pctext"]);
foreach($lines as $line) {
list($FIELD1, $FIELD2, $FIELD3, $FIELD4, $FIELD5, $FIELD6) = explode(" | ", $line);
$sql="INSERT INTO TABLENAME (FIELD1, FIELD2, FIELD3, FIELD4, FIELD5, FIELD6)
VALUES
('$_POST[FIELD1]', '$_POST[FIELD2]', '$_POST[FIELD3]','$_POST[FIELD4]', '$_POST[FIELD5]', '$_POST[FIELD6]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "record added";
}
mysql_close($con)
?>
<meta http-equiv="refresh" content="2;URL=confirmation.php" />
說實話,我幾乎不瞭解php,我正在學習,通過強制,在線查看示例,然後在我的Linux上進行測試等等。我從另一個線程得到了這個:Inserting text from textarea into MySQL database without losing formatting,我正在嘗試讓它工作。
據我所知,我連接到MySQL,選擇數據庫,從pctext(textarea)獲取內容,爆炸每一行,並打破「|」 (管道),然後使用循環(foreach)插入表中。
當我點擊表單上的提交按鈕,我進入引擎頁面,2秒後到達確認頁面,沒有在我的數據庫中插入任何內容,但我有一個空的註冊表,所以有些事情正在進行。
任何人都可以用這個腳本來幫助我嗎?
預先感謝您
PC
如果您幾乎不知道PHP,這不是一個很好的例子,您應該從簡單的mysql交互開始作爲字符串和數組的函數和操作。 –
謝謝你糾正我的文字:) –
我會同意你,如果不是因爲我需要的事實。我已經設法添加單個項目,列表,按字段組織等等,下一個是一個。 :) –