私は動的配列に取り組んでいます。これらの配列をデータベースに挿入する必要があります。すべての行を挿入するのではなく、動的配列をデータベースに挿入すると、データベースに1行だけ挿入されます。
以下は結果を含む配列です
$asma[]=GA::select($ga->population,'total',3);
以下は、データベーステーブルに複数の配列を挿入するためのコードですga
<?php
//code not tested check it
//Logic is changed instead of for looping many times
$data = array();
$j = 0;
foreach($asma as $key => $value)
{
$i = 0;
foreach ( $value as $ind => $hObject )
{
if($i==0)
{
$data[$j]['fe'] = mysql_escape_string($hObject->Voltage);
}else{
$data[$j]['fe'.$i] = mysql_escape_string($hObject->Voltage);
}
$i++;
$data[$j]['fe'.$i] = mysql_escape_string($hObject->Duration);
$i++;
$data[$j]['fe'.$i] = mysql_escape_string($hObject->Number);
$i++;
}
$j++;
}// endforeach
//multiple array
foreach($data as $array)
{
//unique array
//$array3 = array_merge($Voltage,$Duration,$Number);
$fields = implode(',',array_keys($array));
//if you want append any new field append it
$fields .= ','.'timestamp,username';
$vals = "'".implode("','",array_values($array))."'";
//if you want append any new values append it
$vals .= ",'".time()."','".$login_session."'";
$q = "INSERT INTO ga (".$fields.") VALUES(".$vals.")";
$result = mysql_query($q);
if ( ! $result ) {
die( 'Insert failed ' . mysql_errno() . ' ' . mysql_error() );
}
}
ユーザーが 3 を入力するたびに、計算結果が配列に格納されasma
た後、格納結果がテーブルに格納されますga
。これは 3 行である必要がありますが、ユーザーがテキスト ボックスに値を入力した場合に、3 行ではなく 1 行のみがテーブルに挿入されて表示されます。