2009-11-23 94 views
1

我怎麼會去把所有的信息通過POST多數民衆贊成提交到一個頁面,並將其儲存在一個數據庫作爲一個可讀的陣列存放在MySQL崗位信息陣列

現在,我有這樣的功能:

$mysql = mysql_query("INSERT INTO `table` (`sid`, `contents`) VALUES ('$sid', '$contents')") or die(mysql_error()); 
    if($mysql){ 
    return TRUE; 
    }else{ 
    return FALSE; 
    } 

當我通過$ _POST $內容時,所有我在數據庫中得到的是Array 我需要一些閱讀後值的方式,將它們轉換爲可讀的內容,存儲它們,然後能夠讓它們退出並再次循環信息

+0

速成班PHP/MySQL的:http://www.oreillynet.com/pub/a/php/2003/12/23/php_foundations.html – nash 2009-11-23 09:17:02

回答

1

使用serialize

生成的 的值這是用於存儲或傳遞 PHP的值有用的可存儲表示無 失去它們的類型和結構周圍。

例子:

// turn $_POST into a string that can be reconstructed to its original array form 
$postStr = serialize($_POST); 

使用unserialize恢復字符串數組:

// give me back my array 
$postArr = unserialize($postStr); 

確保使用mysql_real_escape_string在數據庫中插入之前正確逃脫你的字符串。

2

後反序列化它雖然可以序列化數組並將其存儲在MySQL領域,我不會推薦繞了這種方式。你不會公開你想要達到的問題,但我認爲你剛開始使用MySQL。

,我建議你的方法就是設計一個合適的表要存儲的值後命名的列,然後創建合適的查詢分開,存儲值沒有大的序列化陣列。

這裏是一個速成班:http://www.oreillynet.com/pub/a/php/2003/12/23/php_foundations.html

1

+1納什。 你想實現什麼是違反數據庫規範化。你可能認爲現在是個好主意,但你很快就會感到懊悔。 如果您對數據庫級別不滿意,可以嘗試使用ORM。