PDA

View Full Version : مشکل در فراخوانی فایل csv



olampiad
شنبه 01 شهریور 1393, 12:04 عصر
سلام و خسته نباشید ب اساتید عزیز
ب این کد من ی نگا بندازید




define('CSV_PATH','C:/xampp/htdocs/csv/');
$csv_file = CSV_PATH . "f.csv"; // Name of your CSV file
$csvfile = fopen($csv_file, 'r');
$theData = fgets($csvfile);
$i = 0;
while (!feof($csvfile)) {
$csv_data[] = fgets($csvfile, 1024);
$csv_array = explode(",", $csv_data[$i]);
$insert_csv = array();
$insert_csv['id'] = $csv_array[0];
$insert_csv['name'] = $csv_array[1];
$insert_csv['email'] = $csv_array[2];

$query = "INSERT INTO csvdata(ID,name,email)
VALUES('','".$insert_csv['name']."','".$insert_csv['email']."')";
$n=mysql_query($query);
$i++;
}
fclose($csvfile);





من میخوان این فایل csv رو درون دیتابیسم بریزم.
کد هارو نوشتم ولی ارور میده.
ب نظرتون مشکل اصلیش کجاست
من فایل csv و این چند کد رو تو این پوشه قرار دادم
میشه ی نگا بندازید
http://s5.picofile.com/file/8136603276/csv.zip.html
ممنون بابت راهنمایی ها

این ارور هارو میداد


Notice: Undefined offset: 4 in C:\xampp\htdocs\csv\index.php on line 19

Notice: Undefined offset: 2 in C:\xampp\htdocs\csv\index.php on line 20

olampiad
شنبه 01 شهریور 1393, 21:28 عصر
دوستان کسی مشکل هارو پیدا نکرد
من خیلی تلاش کردم ولی نشد

saeedvir
شنبه 01 شهریور 1393, 21:45 عصر
سلام,من یک مثال برای شما میزنم :


<?php
$handle=fopen($strfp, "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$num = count($data);
//echo "<p> $num fields in line $row: <br /></p>\n";

for ($c=0; $c < $num; $c++) {
switch ($c){
case 0:
$tmp_pc=$data[$c];
break;
case 1:
$tmp_nc=$data[$c];$tmp_nc=intval($tmp_nc);
break;
case 2:
$tmp_vcode=$myarr[2];
break;
case 3:
//echo ("R3 = ".$data[$c]."<br>");
break;
case 4:
//echo ("R4 = ".$data[$c]."<br>");
break;


}#end switch ($c)

}#end for : for ($c=0; $c < $num; $c++)

$class=new dbpdo;
$class->query("INSERT INTO `tbluserinfo` (`usern`,`passw`,`nesbat`)
VALUES (?,?,?)");
$class->bind(1,!is_null($tmp_pc) ? $tmp_pc :'');
$class->bind(2,!is_null($tmp_sh) ? $tmp_sh :'');
$class->bind(3,!is_null($tmp_nc) ? $tmp_nc :'');



$class->execute();


}#end if : fgetcsv($handle, 1000, ",")
}#end if : fopen($strfp, "r")

$class=null;
?>

اتصال به دیتابیس فراموش نشه,