2012-09-04 85 views
0

我有一個用值填充的textarea。MySQL保存textarea的值

echo "<center><textarea name='resulta' id='result' style='height:200px; width:350px' readonly=readonly></textarea></center>"; 
echo "<form><center><input type=submit name=subs value='Submit'></center></form>"; 
$val=$_POST['resulta']; 

    if (isset($_POST['subs'])) 
    { 

     $lines = explode("\n", $val); 

    foreach ($lines as $line) 
    { 
     mysql_query("insert into postflight (sample_lang) values ('$line')") or die(mysql_error()); 

    } 

如果我已經輸入的文本域以下:

Tokyo - London -> 10:00:00 
London - Tokyo -> 11:00:00 

的飛行後的表將在提交按鈕,我使用這個代碼保存textarea的價值在不同行的表分別有這些數據,

sfno || bltime || sample_lang 
00001 || 00:00:00 || Tokyo - London -> 10:00:00 
00002 || 00:00:00 || London - Tokyo -> 11:00:00 

但是,我想要做的是,添加到sample_lang列「東京 - 倫敦」,然後添加到bltime列'10:00:00' 。在飛行後的數據應該是這樣的:

sfno || bltime || sample_lang 
00001 || 10:00:00 || Tokyo - London 
00002 || 11:00:00 || London - Tokyo 

我試圖像爆炸幾個MySQL的字符串函數,定位,修剪,但不能讓它正常工作。我不太熟悉MySQL字符串函數,所以我很難讓這個工作。任何想法如何做到這一點將不勝感激。非常感謝!

編輯: 我並沒有限制只有MySQL字符串函數的可能解決方案。當然,我也對PHP解決方案開放。我剛纔說了我迄今爲止所做的工作。謝謝。

+1

**你的代碼容易受到SQL注入**你真的*應該使用[prepared statements](http://stackoverflow.com/a/60496/623041),將你的變量作爲參數傳遞給它不會針對SQL進行評估。如果你不知道我在說什麼,或者如何解決它,請閱讀[Bobby Tables]的故事(http://stackoverflow.com/questions/332365/xkcd-sql-injection-please-explain) 。 – eggyal

+0

另外,正如[介紹](http://www.php.net/manual/en/intro.mysql.php)中給出的mysql_ *'函數的PHP手冊章節所述:*不推薦使用此擴展名用於編寫新的代碼。相反,無論是[mysqli](http://www.php.net/manual/en/book.mysqli.php)還是[PDO_MySQL](http://www.php.net/manual/en/ref.pdo應該使用-mysql.php)擴展名。另請參閱[MySQL API概述](http://www.php.net/manual/en/mysqlinfo.api.choosing.php)以獲取進一步幫助,以便選擇MySQL API。* – eggyal

+0

爲什麼輸入'