PDA

View Full Version : مشکل با ذخیره سازی آریه های چند بعدی در mysql



tazeha
پنج شنبه 02 بهمن 1393, 07:51 صبح
سلام

هنگام ذخیره آرایه های چند بعدی دچاری مشکلی شدم.

این خطا رو می ده.


Column count doesn't match value count at row 1

خطاش به خاطر اینه که 5 فیلد هست ولی یک مقدار بیش براش فرستاده نمی شه که اونهم متغیر $newstring

این متغیر $newstring حاوی متغیر $data هست که با json_encode از آرایه به رشته تبدیل شده.

احتمال می دم مشکلی که پیش اومده بخاطر تبدیل آرایه چند بعدی به رشته هست.

به نظر شما چه راه حلی داره؟

اینم کد


$con = @mysql_connect ("localhost","root", ""); mysql_select_db("coin", $con);
if (!$con)
{
die(mysql_error());
}else {
foreach($table_rows as $tr) { // foreach row
$row = $tr->childNodes;
if($row->item(0)->tagName != 'tblhead') { // avoid headers
$data[] = array(
'Name' =>trim($row->item(0)->nodeValue),
'LivePrice' => trim($row->item(2)->nodeValue),
'Change'=> trim($row->item(4)->nodeValue),
'Lowest'=> trim($row->item(6)->nodeValue),
'Topest'=> trim($row->item(8)->nodeValue),
///'Time'=> trim($row->item(10)->nodeValue),
);
}
}

$newstring = json_encode($data);

$date=array();
mysql_select_db ( "coin", $con );
"CREATE TABLE `Dadoo`(id INT NOT NULL AUTO INCREMENT,name VARCHAR(255),liveprice VARCHAR(255),change VARCHAR(255),lowest VARCHAR(255),topest VARCHAR(255),PRIMARY KEY(id)) ENGINE=MyISAM" or die(mysql_error());
$debugquery = mysql_query("INSERT INTO `Dadoo`(name,liveprice,change,lowest,topest) VALUES ('$newstring')");
if (!$debugquery)
{
die(mysql_error());
}
} mysql_close();