سلام.
من برای تکمیل اطلاعات دیتا بیسم به 9800 رکورد احتیاج دارم که در قالب اکسل هست و لازمه که به دیتا بیس MySQL ریخته بشن. (فقط یکبار البته)
اما مشکل اینه که وقتی فایل CSV رو از پی اچ پی مای ادمین ایمپورت میکنم کاراکتر های فارسی به شکل علامت سوال ذخیره میشن و وقتی هم از کدهای فرومهای دیگه استفاده میکمنم اصلا کار نمیکنن...
من از روشی که در فایلهای پیوستی هست برای یونیکد کردن فایل CSV استفاده کردم اما باز هم مشکلم حل نشد.
در فرومهای دیگه هم که سرچ کردم از کلاس PHPExcel.php استفاده کرده بودند اما برای من جواب نداد و هیچ دیتای توی جدولم ریخته نشد. این نکته رو هم بگم که جدول من الان رکورد داره و این 9800تا باید به اونهایی که الان ذخیره شدن اضافه بشه درحالیکه کدهایی که دوستان در فرومها گذاشتند یه جدول مجزا برای اون کار تشکیل میده ....
من از این کد استفاده کردم:
[PHPS]
//include PHPExcel file
include('PHPExcel.php');
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$objReader->setReadDataOnly(true);
//loading excel file
$objPHPExcel = $objReader->load('ar2.csv');
$objWorksheet = $objPHPExcel->getActiveSheet();
$highestRow = $objWorksheet->getHighestRow(); // e.g. 10
for ($row = 1; $row <= $highestRow; ++$row) {
$rows[$row]['test_id'] = $model->id;
$rows[$row]['test_name'] = $objWorksheet->getCellByColumnAndRow(1, $row)->getValue();
$rows[$row]['test_famili'] = $objWorksheet->getCellByColumnAndRow(2, $row)->getValue();
$rows[$row]['test_phone'] = $objWorksheet->getCellByColumnAndRow(3, $row)->getValue();
$rows[$row]['test_address'] = $objWorksheet->getCellByColumnAndRow(4, $row)->getValue();
$rows[$row]['test_code'] = $objWorksheet->getCellByColumnAndRow(5, $row)->getValue();
$rows[$row]['test_title'] = $objWorksheet->getCellByColumnAndRow(6, $row)->getValue();
}
[/PHPS]
من برای تکمیل اطلاعات دیتا بیسم به 9800 رکورد احتیاج دارم که در قالب اکسل هست و لازمه که به دیتا بیس MySQL ریخته بشن. (فقط یکبار البته)
اما مشکل اینه که وقتی فایل CSV رو از پی اچ پی مای ادمین ایمپورت میکنم کاراکتر های فارسی به شکل علامت سوال ذخیره میشن و وقتی هم از کدهای فرومهای دیگه استفاده میکمنم اصلا کار نمیکنن...
من از روشی که در فایلهای پیوستی هست برای یونیکد کردن فایل CSV استفاده کردم اما باز هم مشکلم حل نشد.
در فرومهای دیگه هم که سرچ کردم از کلاس PHPExcel.php استفاده کرده بودند اما برای من جواب نداد و هیچ دیتای توی جدولم ریخته نشد. این نکته رو هم بگم که جدول من الان رکورد داره و این 9800تا باید به اونهایی که الان ذخیره شدن اضافه بشه درحالیکه کدهایی که دوستان در فرومها گذاشتند یه جدول مجزا برای اون کار تشکیل میده ....
من از این کد استفاده کردم:
[PHPS]
//include PHPExcel file
include('PHPExcel.php');
$objReader = PHPExcel_IOFactory::createReader('Excel2007');
$objReader->setReadDataOnly(true);
//loading excel file
$objPHPExcel = $objReader->load('ar2.csv');
$objWorksheet = $objPHPExcel->getActiveSheet();
$highestRow = $objWorksheet->getHighestRow(); // e.g. 10
for ($row = 1; $row <= $highestRow; ++$row) {
$rows[$row]['test_id'] = $model->id;
$rows[$row]['test_name'] = $objWorksheet->getCellByColumnAndRow(1, $row)->getValue();
$rows[$row]['test_famili'] = $objWorksheet->getCellByColumnAndRow(2, $row)->getValue();
$rows[$row]['test_phone'] = $objWorksheet->getCellByColumnAndRow(3, $row)->getValue();
$rows[$row]['test_address'] = $objWorksheet->getCellByColumnAndRow(4, $row)->getValue();
$rows[$row]['test_code'] = $objWorksheet->getCellByColumnAndRow(5, $row)->getValue();
$rows[$row]['test_title'] = $objWorksheet->getCellByColumnAndRow(6, $row)->getValue();
}
[/PHPS]
پیوست ها
آخرین ویرایش: