Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > เนื้อหา txt file รูปแบบนี้จะ import เข้าฐานข้อมูลไม่ได้หรือค่ะ (import จากทางหน้าเว็บ)



 

เนื้อหา txt file รูปแบบนี้จะ import เข้าฐานข้อมูลไม่ได้หรือค่ะ (import จากทางหน้าเว็บ)

 



Topic : 061593



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook



พอดีว่าได้ศึกษาเรื่องการ import txt file จากหน้าเว็บ เข้าฐานข้อมูลจากเว็บนี้อยุ่ค่ะ ได้โค้ดออกมาเป็นแบบนี้

หน้าอัพโหลด
Code (PHP)
              
<form action="phpCSVMySQLUploadAcc.php" method="post" enctype="multipart/form-data" name="form1">
อัพเดทสำหรับหลายๆ เรคคอร์ด <input name="fileCSV" type="file" id="fileCSV">
<input name="btnSubmit" type="submit" id="btnSubmit" value="Update">
</form>


หน้า code php
Code (PHP)
<?
move_uploaded_file($_FILES["fileCSV"]["tmp_name"],$_FILES["fileCSV"]["name"]); // Copy/Upload CSV
$objCSV = fopen($_FILES["fileCSV"]["name"], "r");
while (($objArr = fgetcsv($objCSV, 1000, ",")) !== FALSE) {

	$strSQL = "INSERT INTO co_account";
	$strSQL .="(UNIQUE(acc_id),acc_name,acc_type,balance,member_id,emp_name) ";
	$strSQL .="VALUES ";
	$strSQL .="('".$objArr[0]."','".$objArr[1]."','".$objArr[2]."' ";
	$strSQL .=",'".$objArr[3]."','".$objArr[4]."','".$objArr[5]."') ";
	$objQuery = mysql_query($strSQL);
}
fclose($objCSV);

echo "Upload & Import Done.";
?>


แล้วทีนี้พอเข้าไปลองเทสดู มันก็ขึ้นคำว่า Upload & Import Done
แต่ปรากฎว่าไม่มีอะไรเปลี่ยนแปลงในฐานข้อมูลค่ะ ก็เลยคิดว่ารูปแบบ txt file ของเราอาจจะผิดพลาด ช่วยเช็คให้หน่อยนะคะ
เนื้อหาข้างใน txt file เป็นประมาณนี้ค่ะ

1412320010;บัวชมพู เขียวขจี;ออมทรัพย์;2000.00;m0010;วาสนา รุ่งโรจน์
1412320011;ลิลนี ศรีอัปสร;ฝากประจำ;12000.00;m0011;วาสนา รุ่งโรจน์
1412320012;สุชาติ เกิดดี;ออมทรัพย์;500.00;m0012;วาสนา รุ่งโรจน์



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-06-13 12:51:39 By : Zonza View : 2791 Reply : 29
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (PHP)
$objQuery = mysql_query($strSQL) or die(mysql_error());


เอา error มาดูครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 13:34:46 By : webmaster
 


 

No. 2



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Go to : (import text file to mysql table) php insert/import ข้อมูลจาก text file ลง Mysql ยังไงคะ
Go to : ต้องการ import text file เก็บใน MysQL ตอนนี้ผมมีไฟล์ข้อมูลแบบ text และต้องการ code php
Go to : Text File to MySQL ขอตัวอย่างการ import ข้อมูลจาก text file เข้าสู่ ฐานข้อมูล MySQL ด้วยครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 13:36:01 By : webmaster
 

 

No. 3



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

มันไม่ขึ้น error อะไรเลยค่ะ นอกจาก "Upload & Import Done"
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 14:24:12 By : Zonza
 


 

No. 4



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

เนื้อหาข้างใน txt file เป็นประมาณนี้ค่ะ

1412320010;บัวชมพู เขียวขจี;ออมทรัพย์;2000.00;m0010;วาสนา รุ่งโรจน์
1412320011;ลิลนี ศรีอัปสร;ฝากประจำ;12000.00;m0011;วาสนา รุ่งโรจน์
1412320012;สุชาติ เกิดดี;ออมทรัพย์;500.00;m0012;วาสนา รุ่งโรจน์

อยากทราบว่าไม่สามารถใช้ ; ขั้นข้อความในแต่ละฟิลด์ได้หรือค่ะ เพราะถ้าเอา ; ออก
ก็จะเป็น

1412320010 บัวชมพู เขียวขจี ออมทรัพย์ 2000.00 m0010 วาสนา รุ่งโรจน์
1412320011 ลิลนี ศรีอัปสร ฝากประจำ 12000.00 m0011 วาสนา รุ่งโรจน์
1412320012 สุชาติ เกิดดี ออมทรัพย์ 500.00 m0012 วาสนา รุ่งโรจน์

แล้วแบบนี้ ชื่อกับนามสกุลที่จะให้อยู่ในฟิลด์เดียวกันมันจะได้หรือคะ?
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 14:27:49 By : Zonza
 


 

No. 5



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

มันขึ้นว่า Query was empty ค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 14:31:15 By : Zonza
 


 

No. 6



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code (PHP)
$objQuery = mysql_query($strSQL) or die(mysql_error());
echo $strSQL."<br><br>";


ลองดูที่ SQL ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 14:40:30 By : webmaster
 


 

No. 7



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

พอจะเข้าใจแล้วค่ะ ขอลองแก้ดูอีกรอบนะคะ(น่าจะมีปัญหาเรื่องการตัดคำ)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 14:51:19 By : Zonza
 


 

No. 8



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

แย่จังค่ะ ยังไงมันก็ขึ้น Query was empty

โค้ดตามนี้ค่ะ

Code (PHP)
<?
move_uploaded_file($_FILES["fileCSV"]["tmp_name"],$_FILES["fileCSV"]["name"]); // Copy/Upload CSV

$date=date("Y-m-d H:i:s");
$objQuery = mysql_query($strSQL) or die(mysql_error());
$objCSV = fopen($_FILES["fileCSV"]["name"], "r");
while (($objArr = fgetcsv($objCSV, 1000, ",")) !== FALSE) {
	$data = fgets($file, 4096); 
    $objArr = explode("|", $data);
	$objArr[6] = $date;
	$strSQL = "INSERT INTO co_account";
	$strSQL .="(UNIQUE(acc_id),acc_name,acc_type,balance,member_id,emp_name)"; 
	$strSQL .="VALUES ";
	$strSQL .="('".""."' ";
	$strSQL .=",'".$objArr[0]."','".$objArr[1]."','".$objArr[2]."' ";
	$strSQL .=",'".$objArr[3]."','".$objArr[4]."','".$objArr[5]."' ";
	$strSQL .=",'".$objArr[6]."') ";

	$objQuery = mysql_query($strSQL);
}
fclose($objCSV);

echo "Upload & Import Done.";
?>


ซึ่งดัดแปลงมาจากโค้ด insert ปกติ แบบนี้ค่ะ

$sql="insert into co_account
values('','$accid','$mmname','$acctype','$money','$memid','$name','$date')";

ในตารางจะมี 8 ฟิลด์ โดยฟิลด์แรกเป็นหมายเลขเรียงแบบอัตโนมัติค่ะ และฟิลด์ที่ 8 เป็นฟิลด์วันที่ ณ ตอนที่อัพเดทค่ะ
ส่วนใน txt file จะมีข้อมูลเฉพาะฟิลด์ที่ 2 ถึง 7 ค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 15:15:51 By : Zonza
 


 

No. 9



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 4 เขียนโดย : Zonza เมื่อวันที่ 2011-06-13 14:27:49
รายละเอียดของการตอบ ::
Code (PHP)
/*
1412320010;บัวชมพู เขียวขจี;ออมทรัพย์;2000.00;m0010;วาสนา รุ่งโรจน์
1412320011;ลิลนี ศรีอัปสร;ฝากประจำ;12000.00;m0011;วาสนา รุ่งโรจน์
1412320012;สุชาติ เกิดดี;ออมทรัพย์;500.00;m0012;วาสนา รุ่งโรจน์
*/
$file="something.csv";
$handle=fopen($file,"r");
if($handle){
      while(!feof($handle)){
              $line = fgets($handle);
              list($id,$fullname,$depositeType,$amount,$code,$officer) = explode(";",$line);
              $sql = "insert into  ...............  values( ..$id,$fullname,$depositeType,$amount,$code,$officer....)";
      }
      fclose($handle);
}


ประมาณนี้น่ะครับ คงจะพอทำความเข้าใจได้น่ะครับ



ประวัติการแก้ไข
2011-06-13 17:27:19
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 17:25:34 By : Unidentifier
 


 

No. 10



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Quote:
$objCSV = fopen($_FILES["fileCSV"]["name"], "r");


ตรวจสอบดูครับว่าเรียก Path ถูกหรือเปล่าครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 21:18:40 By : webmaster
 


 

No. 11



โพสกระทู้ ( 11,835 )
บทความ ( 10 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


Code
<?
move_uploaded_file($_FILES["fileCSV"]["tmp_name"],$_FILES["fileCSV"]["name"]); // Copy/Upload CSV

$date=date("Y-m-d H:i:s");
$objQuery = mysql_query($strSQL) or die(mysql_error()); // มันจะไม่ empty ได้เยี่ยงไรละครับ ในเมื่ออยู่ดีๆ ก็อยากคิวรี่ซะงั้น
$objCSV = fopen($_FILES["fileCSV"]["name"], "r");
while (($objArr = fgetcsv($objCSV, 1000, ",")) !== FALSE) {
$data = fgets($file, 4096);
$objArr = explode("|", $data);
$objArr[6] = $date;
$strSQL = "INSERT INTO co_account";
$strSQL .="(UNIQUE(acc_id),acc_name,acc_type,balance,member_id,emp_name)";
$strSQL .="VALUES ";
$strSQL .="('".""."' ";
$strSQL .=",'".$objArr[0]."','".$objArr[1]."','".$objArr[2]."' ";
$strSQL .=",'".$objArr[3]."','".$objArr[4]."','".$objArr[5]."' ";
$strSQL .=",'".$objArr[6]."') ";

$objQuery = mysql_query($strSQL);
}
fclose($objCSV);

echo "Upload & Import Done.";
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-13 23:50:26 By : PlaKriM
 


 

No. 12



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


1412320010;บัวชมพู เขียวขจี;ออมทรัพย์;2000.00;m0010;วาสนา รุ่งโรจน์
1412320011;ลิลนี ศรีอัปสร;ฝากประจำ;12000.00;m0011;วาสนา รุ่งโรจน์
1412320012;สุชาติ เกิดดี;ออมทรัพย์;500.00;m0012;วาสนา รุ่งโรจน์
Code (PHP)
<?
move_uploaded_file($_FILES["fileCSV"]["tmp_name"],$_FILES["fileCSV"]["name"]); // Copy/Upload CSV

$date=date("Y-m-d H:i:s");

$objCSV = fopen($_FILES["fileCSV"]["name"], "r");
while (($objArr = fgetcsv($objCSV, 1000, ",")) !== FALSE) {
         $data = fgets($file, 4096);
         list($id,$fullname,$depositeType,$amount,$code,$officer) = explode(";", $data);
/*
UNIQUE(acc_id) => โดยฟิลด์แรกเป็นหมายเลขเรียงแบบอัตโนมัติค่ะ  => ไม่ต้องนำมาใส่ในฟิลด์ลิสต์ครับ
*/
          $strSQL  = "INSERT INTO co_account";
          $strSQL .="(acc_name,acc_type,balance,member_id,emp_name,balancedate) ";
          $strSQL .="VALUES";
          $strSQL .="('$fullname','$depositeType','$amount','$id','$officer','$date') ";
          $objQuery = mysql_query($strSQL) or die(mysql_error());

}
fclose($objCSV);

echo "Upload & Import Done.";

?>



ประวัติการแก้ไข
2011-06-14 11:48:14
2011-06-14 11:49:34
2011-06-14 11:55:13
2011-06-14 11:55:59
2011-06-14 11:56:42
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-14 11:46:29 By : Unidentifier
 


 

No. 13



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

จะลองแก้ดูก่อนนะคะ ที่ทำเป็นแบบว่ามีปุ่มให้กด browser ค่ะ เสร็จแล้วก็กดปุ่มอัพเดท
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-14 18:53:33 By : Zonza
 


 

No. 14



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ขอบคุณทุกๆ ท่านที่เข้ามาช่วยเหลือนะคะ ตัวเราก็ได้นำความรู้และคำแนะนำที่ทุกท่านให้มาศึกษาให้เข้าใจมากที่สุดค่ะ สรุปว่า path ไม่ตรงจริงๆ ด้วยค่ะ(ใส่ชื่อตัวแปรที่รับค่ามาผิดค่ะ) แต่มันเหมือนจะอ่านไฟล์ได้แล้วค่ะ แต่มันขึ้นซินแท็คเออเรอร์ค่ะ แล้วก็หาไม่เจอค่ะว่าพลาดตรงไหน ตาลายหมดแล้ว ขอความกรุณาช่วยดูให้อีกหน่อยนะคะ
ข้อความเออเรอร์ค่ะ

Code
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'UNIQUE(acc_id),acc_name,acc_type,balance,member_id,emp_name)VALUES ('1412320011'' at line 1



Code (PHP)
<?
move_uploaded_file($_FILES["fileCSV"]["tmp_name"],$_FILES["fileCSV"]["name"]); // Copy/Upload CSV

$date=date("Y-m-d H:i:s");
//$objQuery = mysql_query($strSQL) or die(mysql_error());
$objCSV = fopen($_FILES["fileCSV"]["name"], "r");
while (($objArr = fgetcsv($objCSV, 1000, ",")) !== FALSE) {
	$data = fgets($objCSV, 4096); 
	
	list($objArr[0],$objArr[1],$objArr[2],$objArr[3],$objArr[4],$objArr[5]) = explode(";", $data); 

    //$objArr = explode("|", $data);
	$objArr[6] = $date;
	$strSQL = "INSERT INTO co_account";
	$strSQL .="(UNIQUE(acc_id),acc_name,acc_type,balance,member_id,emp_name)"; 
	$strSQL .="VALUES ";
	$strSQL .="('".$objArr[0]."','".$objArr[1]."','".$objArr[2]."' ";
	$strSQL .=",'".$objArr[3]."','".$objArr[4]."','".$objArr[5]."' ";
	$strSQL .=",'".$objArr[6]."') ";

	$objQuery = mysql_query($strSQL) or die(mysql_error());
}
fclose($objCSV);

echo "Upload & Import Done.";
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-14 19:20:42 By : Zonza
 


 

No. 15



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Quote:
UNIQUE(acc_id)


ต้องการทำอะไรครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-14 20:50:22 By : webmaster
 


 

No. 16



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบคุณ mr.win

UNIQUE(acc_id) ----> อันนี้ลบ UNIQUE ทิ้งไปแล้วค่ะ ตอนแรกกะจะให้มันบันทึกเลขบัญชีโดยไม่ให้ซ้ำกันน่ะค่ะ แต่คิดได้ว่าคงคิดตื้นไปหน่อย ส่วนการอัพเดต ได้แล้วนะคะ ข้อมูลเพิ่มเข้าไปในฐานข้อมูลได้แล้วค่ะ แต่มีปัญหาค่ะ คือว่าข้อมูลเข้าไปไม่ครบ บางเรคคอร์ดไม่มี และบางฟิลด์ข้อมูลไม่มี สังเกตได้ว่าฟิลด์ที่มันกลายเป็นว่างเปล่าจะเป็นข้อมูลภาษาไทยค่ะ เช่นเรคคอร์ดที่ 1 หายไป เพิ่มมาอีกทีเป็นเรคคอร์ดที่สองเลย แล้วในเรคคอร์ดนี้ ข้อมูลในฟิลด์ ชื่อ ประเภทบัญชี และเจ้าหน้าที่ มันว่างเปล่าค่ะ ไม่มีข้อมูล
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-14 21:24:50 By : Zonza
 


 

No. 17



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ลืมโค้ดค่ะ

Code (PHP)
<?
move_uploaded_file($_FILES["fileCSV"]["tmp_name"],$_FILES["fileCSV"]["name"]); // Copy/Upload CSV

$date=date("Y-m-d H:i:s");
//$objQuery = mysql_query($strSQL) or die(mysql_error());
$objCSV = fopen($_FILES["fileCSV"]["name"], "r");
while (($objArr = fgetcsv($objCSV, 1000, ",")) !== FALSE) {
	$data = fgets($objCSV, 4096); 
	
	list($objArr[0],$objArr[1],$objArr[2],$objArr[3],$objArr[4],$objArr[5]) = explode(";", $data); 

    //$objArr = explode("|", $data);
	$objArr[6] = $date;
	$strSQL = "INSERT INTO co_account";
	$strSQL .="(acc_id,acc_name,acc_type,balance,member_id,emp_name,date)"; 
	$strSQL .="VALUES ";
	//$strSQL .="('".$objArr[0]."','".$objArr[1]."','".$objArr[2]."' ";
	//$strSQL .=",'".$objArr[3]."','".$objArr[4]."','".$objArr[5]."' ";
	//$strSQL .=",'".$objArr[6]."') ";
	$strSQL .="('$objArr[0]','$objArr[1]','$objArr[2]','$objArr[3]','$objArr[4]','$objArr[5]','$objArr[6]')"; 


	$objQuery = mysql_query($strSQL) or die(mysql_error());
}
fclose($objCSV);

echo "Upload & Import Done.";
?>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-14 21:25:38 By : Zonza
 


 

No. 18



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ลืมบอกไปอีกอย่างค่ะ ตรงฟิลด์ id ที่เป็นแบบ auto_increment มันก็ไม่เรียงให้ด้วยค่ะ เวลาอิมพอร์ตเข้าไปใหม่ ปกติเพิ่มข้อมูลทีละคนผ่านหน้าเว็บมันก็จะเรียงให้ เป็น 1,2,3 ประมาณนี่ค่ะ มันเกี่ยวกับที่มีการลบข้อมูลในฐานข้อมูลบ่อยหรือเปล่าคะ การเรียงข้อมูลเลยเพี้ยนไป แล้วจะแก้ไขอย่างไรดีคะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-14 21:34:09 By : Zonza
 


 

No. 19



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


1.) เวลาลบข้อมูลทั้งตารางให้ใช้คำสั่งนี้ครับ
TRUNCATE [TABLE] tbl_name เช่น truncate table co_account;
ทีนี้เวลาเพิ่มข้อมูลเข้าไปใหม่ฟิลด์ที่เพิ่มค่าอัตโนมัติก็จะถูกรีเซ็ตกลับไปเริ่มต้นที่ 1 อีกครั้งครับ

2.) ทำไมใช้ตัวแปรประเภทอาร์เรย์กับ ฟังก์ชั่น list() ล่ะครับ
list($objArr[0],$objArr[1],$objArr[2],$objArr[3],$objArr[4],$objArr[5]) = explode(";", $data); [/color]=>ผิดครับแต่ไม่ error-none sense

[color=blue]$objArr = explode(";" , $data)
=>อันนี้ถูกวิธีครับ ประหยัดโค้ด

Code (PHP)
$strSQL = "INSERT INTO co_account";
$strSQL .="(acc_id,acc_name,acc_type,balance,member_id,emp_name,date)";
$strSQL .="VALUES ";
$strSQL .="('$objArr[0]','$objArr[1]','$objArr[2]','$objArr[3]','$objArr[4]','$objArr[5]','$objArr[6]')"; 

จากโค้ดข้างบนผมอยากให้ echo $strSQL; ออกมาดูหน่อย หรืออาจจะลองตามผมอีกแบบน่ะครับ เพิ่ม {} ครอบตัวแปรไว้
Code (PHP)
$strSQL = "INSERT INTO co_account";
$strSQL .="(acc_id,acc_name,acc_type,balance,member_id,emp_name,date)";
$strSQL .="VALUES ";
$strSQL .="('{$objArr[0]}','{$objArr[1]}','{$objArr[2]}','{$objArr[3]}','{$objArr[4]}','{$objArr[5]}','{$objArr[6]}')"; 


ปล. ถามนิดนึงน่ะครับ ทำไมถึงพยายามใช้ตัวแปรประเภทอาร์เรย์กลับงานง่ายๆ ซึ่งกลับทำให้เป็นงานยาก
Code (PHP)
list($id,$fullname,$depositeType,$amount,$code,$officer) = explode(";", $data);
....
.....
$strSQL  = "INSERT INTO co_account";
$strSQL .="(acc_name,acc_type,balance,member_id,emp_name,balancedate) ";
$strSQL .="VALUES";
$strSQL .="('$fullname','$depositeType','$amount','$id','$officer','$date') ";

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-14 22:34:49 By : Unidentifier
 


 

No. 20



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ขอตอบคุณ Unidentifer ค่ะ คือว่าความจริงก็ไม่ค่อยจะเข้าใจมากค่ะ เพียงแต่อาศัยหาดูกระทู้เก่าๆ แล้วก็เอาคำแนะนำของแต่ละท่านมาปรับใช้น่ะค่ะ โค้ดเลยจะแม่งๆ หน่อยค่ะ แหะๆๆ แล้วอีกอย่างก็เห็นว่า txt file ที่จะใช้อัพโหลดมีข้อมูลเยอะหลายเรคคอร์ด เลยนึกถึงแต่อาเรย์อย่างเดียวค่ะ ไม่รู้ว่าจะใช้อะไรอย่างไหนได้บ้าง ยังไงก็ขอคำแนะนำด้วยนะคะ


ประวัติการแก้ไข
2011-06-15 00:37:03
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 00:33:08 By : Zonza
 


 

No. 21



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ลองทำตามที่คุณ Unidentifer บอกแล้วได้แบบนี้ค่ะ

ค่าที่ echo ออกมาค่ะ
Upload & Import Done.
INSERT INTO co_account(acc_id,acc_name,acc_type,balance,member_id,emp_name,date)VALUES (' ','','','','','','2011-06-15 01:42:37')

ส่วนในฐานข้อมูลก็เหมือนเดิมค่ะ ทั้งหมดมีข้อมูล 15 เรคคอร์ด แต่บันทึกลงฐานข้อมูลแค่ 8 เรคคอร์ดค่ะ และข้อมูลที่เป็นภาษาไทยไม่บันทึกให้เลยค่ะ

โค้ดค่ะ

Code (PHP)
<?
move_uploaded_file($_FILES["fileCSV"]["tmp_name"],$_FILES["fileCSV"]["name"]); // Copy/Upload CSV

$date=date("Y-m-d H:i:s");
//$objQuery = mysql_query($strSQL) or die(mysql_error());
$objCSV = fopen($_FILES["fileCSV"]["name"], "r");
while (($objArr = fgetcsv($objCSV, 1000, ",")) !== FALSE) {
	$data = fgets($objCSV, 4096); 
	
	$objArr = explode(";" , $data);

    //$objArr = explode("|", $data);
	$objArr[6] = $date;
	$strSQL = "INSERT INTO co_account";
	$strSQL .="(acc_id,acc_name,acc_type,balance,member_id,emp_name,date)"; 
	$strSQL .="VALUES ";
	//$strSQL .="('".$objArr[0]."','".$objArr[1]."','".$objArr[2]."' ";
	//$strSQL .=",'".$objArr[3]."','".$objArr[4]."','".$objArr[5]."' ";
	//$strSQL .=",'".$objArr[6]."') ";
	$strSQL .="('{$objArr[0]}','{$objArr[1]}','{$objArr[2]}','{$objArr[3]}','{$objArr[4]}','{$objArr[5]}','{$objArr[6]}')"; 


	$objQuery = mysql_query($strSQL) or die(mysql_error());
}
fclose($objCSV);

echo "Upload & Import Done.";
echo $strSQL;
?>


ปล. ขอบคุณทุกๆ คนมากเลยนะคะ สำหรับคำแนะนำและความช่วยเหลือ ตอนนี้ขออนุญาตไปนอนก่อนนะคะ พรุ่งนี้มีเรียนแต่เช้าค่ะ แก้ได้ไม่ได้อย่างไร จะแวะเข้ามาใหม่นะคะ^^


ประวัติการแก้ไข
2011-06-15 00:49:10
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 00:48:17 By : Zonza
 


 

No. 22



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ช่วยเอาข้อความที่อยู่ในไฟล์ CSV มาให้ดูหน่อยครับ สักสิบหรือยี่สิบบรรทัดน่ะครับ
และเอาโค้ดที่เป็นหน้าฟอร์มอัพโหลดมาดูก็จะดีมากครับ คงจะช่วยหาที่ผิดได้มากกว่านี้ครับ


ปล. ลองเอา echo $strSQL; ไปใส่ในลูป while ดูน่ะครับ จะได้เห็นทุกเสตทเมนท์ที่ถูกเรียกให้ทำงาน



ประวัติการแก้ไข
2011-06-15 09:55:00
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 09:51:41 By : Unidentifier
 


 

No. 23



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


โค้ดที่เสร็จสมบูรณ์ครับ เอาไปใช้ได้เลย ทุกอย่างอยู่ในไฟล์เดียวครับ

Code (PHP)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Conforming HTML 4.01 Transitional Template</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> </head> <body> <form method="post" enctype="multipart/form-data"> <label for="file">Filename:</label> <input type="file" name="fileCSV" id="file" /> <br /> <input type="submit" name="UpLoading" value="อัพโหลดไฟล์ค่ะ" /> </form> <? if(isset($_POST["UpLoading"]) && !empty($_FILES["fileCSV"]["tmp_name"])){ //move_uploaded_file($_FILES["fileCSV"]["tmp_name"],$_FILES["fileCSV"]["name"]); // Copy/Upload CSV if ($_FILES["fileCSV"]["error"] > 0) { echo "Error: " . $_FILES["file"]["error"] . "<br />"; } else { echo "Upload: " . $_FILES["fileCSV"]["name"] . "<br />"; echo "Type: " . $_FILES["fileCSV"]["type"] . "<br />"; echo "Size: " . ($_FILES["fileCSV"]["size"] / 1024) . " Kb<br />"; echo "Stored in: " . $_FILES["fileCSV"]["tmp_name"],"<hr />\n"; } $date=date("Y-m-d H:i:s"); $objCSV = fopen($_FILES["fileCSV"]["tmp_name"], "r"); while (!feof($objCSV)) { $data = fgets($objCSV); if(!empty($data)){ $objArr = explode(";", $data); $strSQL = "INSERT INTO co_account"; $strSQL .="(acc_id,acc_name,acc_type,balance,member_id,emp_name,date)"; $strSQL .="VALUES "; $strSQL .="('$objArr[0]','$objArr[1]','$objArr[2]','$objArr[3]','$objArr[4]','$objArr[5]','$date')"; //$objQuery = mysql_query($strSQL) or die(mysql_error()); echo $strSQL,"<br />\n"; } } fclose($objCSV); echo "<h3 style=\"color:red;\">Upload & Import Done.</h3>"; } ?> </body> </html>

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 10:32:24 By : Unidentifier
 


 

No. 24



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


<div align="justify"> => ตัดแท็ค div ออกน่ะครับ อยู่บรรทัดแรก และบรรทัดสุดท้าย
</html></div>

ส่วนนี่ก็ผลลัพธ์ครับ ปล.ถ้าต้องการให้บันทึกลงฐานข้อมูลก็เอา คอมเมนท์หน้า mysql_query() ออกน่ะครับ

Upload: test2.csv
Type: text/csv
Size: 0.4072265625 Kb
Stored in: /tmp/phpAdxtep INSERT INTO co_account(acc_id,acc_name,acc_type,balance,member_id,emp_name,date)VALUES ('1412320010','บัวชมพู เขียวขจี','ออมทรัพย์','2000.00','m0010','วาสนา รุ่งโรจน์ ','2011-06-15 10:29:57')
INSERT INTO co_account(acc_id,acc_name,acc_type,balance,member_id,emp_name,date)VALUES ('1412320011','ลิลนี ศรีอัปสร','ฝากประจำ','12000.00','m0011','วาสนา รุ่งโรจน์ ','2011-06-15 10:29:57')
INSERT INTO co_account(acc_id,acc_name,acc_type,balance,member_id,emp_name,date)VALUES ('1412320012','สุชาติ เกิดดี','ออมทรัพย์','500.00','m0012','วาสนา รุ่งโรจน์ ','2011-06-15 10:29:57')
Upload & Import Done.



ประวัติการแก้ไข
2011-06-15 10:36:22
2011-06-15 10:39:07
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 10:34:32 By : Unidentifier
 


 

No. 25



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


อ๋อ ไม่อะครับที่ผมทำเป็น โค้ดที่ ดึง Files จาก Folder โดยตรง ไม่ต้องนำ ไฟล์ ไปเก็บใน ฐานข้อมูล ครับ

มันปรมาณว่าเป็นเงื่อนไขในการเขียนโค้นอะครับ

โดยมีโจทย์ว่า
1 เพิ่ม ไฟล์ ลงใน Folder ได้
2 ต้องแสดง นามสกุลไฟล์
3 ละต้องลบไฟล์ใน Folder ได้ ในที่นี้ ผมให้มันประกาศชื่อไฟล์ที่จะลบก่อนถึง ลบไฟล์ นั้นอะครับ
ประมานนี้อะครับ



ปล. ครับพึ่งนึกมาได้อีกครับ

ถ้าผมไม่อยากให้รูป/ไฟล์ที่อัพ มันซ้ำกัน ผมต้องเพิ่ม Code ส่วนไหน ได้บ้างครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 11:01:52 By : ลูnLต่า
 


 

No. 26



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ตอบความคิดเห็นที่ : 25 เขียนโดย : ลูnLต่า เมื่อวันที่ 2011-06-15 11:01:52
รายละเอียดของการตอบ ::
ผมว่าตั้งกระทู้ใหม่ดีกว่าครับเดี๋ยวพาลจะไม่มีใครเข้ามาตอบครับเพราะ ตอบ,ถามกันมายาวแล้วและที่สำคัญ คือโจทก์ไม่เหมือนกันครับ เจ้าของกระทู้เดิมต้องการอิมพอร์ทไฟล์เข้าฐานข้อมูลครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 11:14:16 By : Unidentifier
 


 

No. 27



โพสกระทู้ ( 14 )
บทความ ( 0 )



สถานะออฟไลน์


ขอโทดด้วยครับผม
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 11:17:44 By : ลูnLต่า
 


 

No. 28



โพสกระทู้ ( 44 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ขอบคุณ คุณ Unidentifer มากๆ เลยค่ะ ตอนแรกเป็นเหมือนเดิมค่ะ คืออัพเดทได้แล้ว แต่ค่าที่เป็นภาษาไทยมันไม่ขึ้นให้ แต่นึกขึ้นได้ค่ะ ว่า save text file เป็น ANSI ไว้ ก็เลยลองเปลี่ยนเป็น UTF-8 ดู สรุปว่า ผ่านแล้วค่ะ บันทึกได้ทุกค่าแล้ว ดีใจมากเลย ขอคุณนะคะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 16:54:50 By : Zonza
 


 

No. 29



โพสกระทู้ ( 3,156 )
บทความ ( 0 )

สมาชิกที่ใส่เสื้อไทยครีเอท Hall of Fame 2012

สถานะออฟไลน์


ไม่เป็นไรครับ ขอให้สนุกกับการเรียนน่ะครับ อย่าท้อน่ะครับ ยังมีพี่ๆน้องๆที่คอยช่วยเหลืออีกมากมายครับ
จบแล้วก็ทำงานเป็นโปรแกรมเมอร์ด้วยล่ะ จะได้ใช้ความรู้ที่เรียนมาให้เป็นประโยชน์
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-06-15 22:27:18 By : ๊Unidentifier
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : เนื้อหา txt file รูปแบบนี้จะ import เข้าฐานข้อมูลไม่ได้หรือค่ะ (import จากทางหน้าเว็บ)
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 01
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่