2011-12-07 9 views
0

私は多次元連想配列を使ってデータ構造を構築しています。そのデータ構造をmysqlテーブルフィールドに更新してから、もう一度読むことができますか?ここでPHPを使った配列データ構造の作成と読み込み

は私がしようとしているものの例である:

$result = mysql_query("select * FROM color") or die(mysql_error()); 
$colors = ""; 
while($colorrec = mysql_fetch_array($result)){ 
$colors[$colorrec['ID']][0] = $colorrec['Description']; 
$colors[$colorrec['ID']][1] = $colorrec['HexCode']; 
} 

私が今やる場合:

mysql_query("UPDATE tempfile SET ColorInfo = '".$colors."' WHERE ID = '".tempID."'"); 

私はそれから行うことができます:

$result = mysql_query("select * from tempfile WHERE ID = '".tempID."'"); 
$temprec = mysql_fetch_array($result); 
$colors = $temprec['ColorInfo']; 
+0

何が問題ですか?上記のコードではどのようなエラーが発生していますか? – mugetsu

答えて

0

あなたは可能性がありserializeデータ型を保持する場合は、unserializeを返します。

$result = mysql_query("select * FROM color") or die(mysql_error()); 
$colors = array(); 
while($colorrec = mysql_fetch_array($result)){ 
    $colors[$colorrec['ID']] = array($colorrec['Description'], $colorrec['HexCode']); 
} 

mysql_query("UPDATE tempfile SET ColorInfo = '".serialize($colors)."' WHERE ID = '".$tempID."'"); 

$result = mysql_query("select * from tempfile WHERE ID = '".$tempID."'"); 
$temprec = mysql_fetch_array($result); 
$colors = unserialize($temprec['ColorInfo']); 
+0

Cool。私は何をしようとしているかはうまくいくとは思っていませんでしたが、それを行う方法があると確信していました。私はそれを試してみましょう。 – user999684

関連する問題