เมนูหลัก

[PHP] fwrite to csv

เริ่มโดย ลุงอุ๋ย, 18 ตุลาคม 2010, 18:08:05

หัวข้อก่อนหน้า - หัวข้อถัดไป

0 สมาชิก และ 1 ผู้มาเยือน กำลังดูหัวข้อนี้

ลุงอุ๋ย

คือผมต้องการ เขียน มัน fwrite ข้อมูล ลง ไฟล์ csv ที่ col 1 และ 2 สามารถทำได้ไหมครับ

โค๊ดด้านล่างนี้ผมทำแล้ว มัน ลงแค่ col 1 อย่างเดียว


<?php
$editkeywords 
$_REQUEST["editkeywords"];

$w_editkeywords "$editkeywords";

$filename '../test.csv';

if (
is_writable($filename)) {
    if (!
$handle fopen($filename'w'))
fwrite($handle$w_editkeywords);
fwrite($handle$w_editkeywords);
fclose($handle);
} else {
    echo 
"<font color='red'>The file $filename is not writable</font>";
}
header("Location: finishconfig.php"); 
?>




ใครพอจะทำได้ช่วยหน่่อยครับ งมมาหลายวันแล้ว
[direct=http://aquariumslight.com/]แมงมุมเพื่อนรัก ชอบนักมาชักใย[/direct]

headmaster

อ้างถึงจาก: ลุงอุ๋ย ใน 18 ตุลาคม 2010, 18:08:05
คือผมต้องการ เขียน มัน fwrite ข้อมูล ลง ไฟล์ csv ที่ col 1 และ 2 สามารถทำได้ไหมครับ

โค๊ดด้านล่างนี้ผมทำแล้ว มัน ลงแค่ col 1 อย่างเดียว


<?php
$editkeywords 
$_REQUEST["editkeywords"];

$w_editkeywords "$editkeywords";

$filename '../test.csv';

if (
is_writable($filename)) {
    if (!
$handle fopen($filename'w'))
fwrite($handle$w_editkeywords);
fwrite($handle$w_editkeywords);
fclose($handle);
} else {
    echo 
"<font color='red'>The file $filename is not writable</font>";
}
header("Location: finishconfig.php"); 
?>




ใครพอจะทำได้ช่วยหน่่อยครับ งมมาหลายวันแล้ว

ต้องเขียน , ( comma ) ลงไปเลยครับผม แล้วค่อยโยนข้อมูลเข้าไฟล์ครับ

$w_editkeywords = "data1, data2";
fwrite($handle, $w_editkeywords);
fclose($handle);

ลองดูครับไม่ยาก  :wanwan003:



boymanz

งั้นขอถามอีกนิดสสส นึง ถ้า  คำนั้นมันไม่ได้มีแค่ บรรทัดเดียวละครับ  สมมุติ มี 100 บรรทัด อ่ะครับ  รบกวนหน่อยครับ   :P :P

ลุงอุ๋ย


<?php
$editkeywords 
$_REQUEST["editkeywords"];

$w_editkeywords "$editkeywords$editkeywords";

$filename '../keywords.csv';

if (
is_writable($filename)) {
    if (!
$handle fopen($filename'w'))
fwrite($handle$w_editkeywords );
fwrite($handle$w_editkeywords);
fclose($handle);
} else {
    echo 
"<font color='red'>The file $filename is not writable</font>";
}
header("Location: finishconfig.php"); 
?>



เกือบได้อะครับ มันเขียนลงให้ 2 col ละครับ (ถ้าใส่ บรรทัดเดียว)
แต่ปัญหาคือ ข้อมูลผมมีหลาย บรรทัดอะครับ มันเลยไม่ได้
[direct=http://aquariumslight.com/]แมงมุมเพื่อนรัก ชอบนักมาชักใย[/direct]

ลุงอุ๋ย

คืองี้ครับ $_REQUEST["editkeywords"] เป็นตัวรับค่า ผมใส่ keyword ที่ตรงนี้

รูปแบบการใส่คือ

keyword 1
keyword 2
keyword 3

หลังจากนั้น ก็ให้มันรับค่า แล้วไปเขียนทับที่ test.csv
ต้องการให้มัน บันทึกเป็น
col A              col B

keyword 1      keyword 1
keyword 2      keyword 2
keyword 3      keyword 3

แบบนี้อะครับ
[direct=http://aquariumslight.com/]แมงมุมเพื่อนรัก ชอบนักมาชักใย[/direct]

boymanz


medieval

#6
ก็ดึงข้อมูล จากsql มาเป็นอเรย์ก่อนแล้วค่อย เอาไปวางใน csv สิ หรือไม่ได้ใช้sql ก็ให้มันเก็บลงอเรย์ก่อน แล้วค่อยเอาลงในcsv โดยการใช้ loop เขียนลง
หรือไม่ก็ลองเข้าไปดูที่
http://www.thaicreate.com/php/php-convert-export-csv-files.html
[direct=http://www.thaiboran.co.th]เฟอร์นิเจอร์ไทยโบราณ ฮวงจุ้ย มงคล[/direct] [direct=http://www.thaiboran.co.th/shop]สินค้าตกแต่งบ้าน โรงแรม ร้านนวดสปา[/direct]

boymanz

#7
ขอบคุณมากนะครับ ที่ตอบครับ

QuickSk8er

อ้างถึงจาก: headmaster ใน 18 ตุลาคม 2010, 18:26:47
อ้างถึงจาก: ลุงอุ๋ย ใน 18 ตุลาคม 2010, 18:08:05
คือผมต้องการ เขียน มัน fwrite ข้อมูล ลง ไฟล์ csv ที่ col 1 และ 2 สามารถทำได้ไหมครับ

โค๊ดด้านล่างนี้ผมทำแล้ว มัน ลงแค่ col 1 อย่างเดียว


<?php
$editkeywords 
$_REQUEST["editkeywords"];

$w_editkeywords "$editkeywords";

$filename '../test.csv';

if (
is_writable($filename)) {
    if (!
$handle fopen($filename'w'))
fwrite($handle$w_editkeywords);
fwrite($handle$w_editkeywords);
fclose($handle);
} else {
    echo 
"<font color='red'>The file $filename is not writable</font>";
}
header("Location: finishconfig.php"); 
?>




ใครพอจะทำได้ช่วยหน่่อยครับ งมมาหลายวันแล้ว

ต้องเขียน , ( comma ) ลงไปเลยครับผม แล้วค่อยโยนข้อมูลเข้าไฟล์ครับ

$w_editkeywords = "data1, data2";
fwrite($handle, $w_editkeywords);
fclose($handle);

ลองดูครับไม่ยาก  :wanwan003:




ขอถามต่อเลยครับ

ถ้าผมจะเก็บ B0021LT066 กับ Sony BRAVIA XBR Series KDL-46XBR9 46-Inch 1080p 240Hz LCD HDTV, Black

ลง COL1 กับ COL2 แต่ติดปัญหาตรง Sony BRAVIA XBR Series KDL-46XBR9 46-Inch 1080p 240Hz LCD HDTV, Black  มันมีคอมม่า

จะแก้ปัญหาตรงนี้ยังไงครับ ให้มันเข้าใจว่า , นี้ไม่ได้แบ่ง COL

boymanz

อ้างถึงจาก: QuickSk8er ใน 18 ตุลาคม 2010, 21:38:26
อ้างถึงจาก: headmaster ใน 18 ตุลาคม 2010, 18:26:47
อ้างถึงจาก: ลุงอุ๋ย ใน 18 ตุลาคม 2010, 18:08:05
คือผมต้องการ เขียน มัน fwrite ข้อมูล ลง ไฟล์ csv ที่ col 1 และ 2 สามารถทำได้ไหมครับ

โค๊ดด้านล่างนี้ผมทำแล้ว มัน ลงแค่ col 1 อย่างเดียว


<?php
$editkeywords 
$_REQUEST["editkeywords"];

$w_editkeywords "$editkeywords";

$filename '../test.csv';

if (
is_writable($filename)) {
    if (!
$handle fopen($filename'w'))
fwrite($handle$w_editkeywords);
fwrite($handle$w_editkeywords);
fclose($handle);
} else {
    echo 
"<font color='red'>The file $filename is not writable</font>";
}
header("Location: finishconfig.php"); 
?>




ใครพอจะทำได้ช่วยหน่่อยครับ งมมาหลายวันแล้ว

ต้องเขียน , ( comma ) ลงไปเลยครับผม แล้วค่อยโยนข้อมูลเข้าไฟล์ครับ

$w_editkeywords = "data1, data2";
fwrite($handle, $w_editkeywords);
fclose($handle);

ลองดูครับไม่ยาก  :wanwan003:




ขอถามต่อเลยครับ

ถ้าผมจะเก็บ B0021LT066 กับ Sony BRAVIA XBR Series KDL-46XBR9 46-Inch 1080p 240Hz LCD HDTV, Black

ลง COL1 กับ COL2 แต่ติดปัญหาตรง Sony BRAVIA XBR Series KDL-46XBR9 46-Inch 1080p 240Hz LCD HDTV, Black  มันมีคอมม่า

จะแก้ปัญหาตรงนี้ยังไงครับ ให้มันเข้าใจว่า , นี้ไม่ได้แบ่ง COL
-----------------------------------------------------------------------------------------
งั้นยกตัวอย่างใหม่ได้ไหมครับ
รูปแบบการใส่คือ

keyword 1
keyword 2
keyword 3

หลังจากนั้น ก็ให้มันรับค่า แล้วไปเขียนทับที่ test.csv
ต้องการให้มัน บันทึกเป็น
col A              col B

keyword 1      keyword 1
keyword 2      keyword 2
keyword 3      keyword 3

แบบนี้ครับ คำสั่งจะออกมาเป็นยังไงครับ นึกไม่ออก

QuickSk8er

ดันหน่อย อึ้บๆ  :wanwan012:

boymanz


QuickSk8er

#12
ผมเจอคำตอบของผมแล้ว

"aaaaaaaaaaaa","bbbbbbbbbbbb,xxxxxxxxxxxxx","ccccccccccccccccc"

ข้อความยาวๆลองครอบ " " ครับ

แต่ผมเจอปัญหาใหม่ เน่าเลย  :P

"aaaaaaaaaaaa","Samsung UN46C8000 46" 1080p 3D LED TV, 1080p Resolution, 3D Technol","ccccccccccccccc"

DJJome

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

boymanz

อ้างถึงจาก: QuickSk8er ใน 19 ตุลาคม 2010, 02:05:25
ผมเจอคำตอบของผมแล้ว

"aaaaaaaaaaaa","bbbbbbbbbbbb,xxxxxxxxxxxxx","ccccccccccccccccc"

ข้อความยาวๆลองครอบ " " ครับ

แต่ผมเจอปัญหาใหม่ เน่าเลย  :P

"aaaaaaaaaaaa","Samsung UN46C8000 46" 1080p 3D LED TV, 1080p Resolution, 3D Technol","ccccccccccccccc"
ขอบคุณครับที่ช่วยเหลือ

boymanz

อ้างถึงจาก: DJJome ใน 19 ตุลาคม 2010, 18:14:45
เวลาเขียน CSV
ผมมักจะใช้เครื่องหมาย | แทนเครื่องหมาย , เพื่อเป็นตัวแบ่งฟิลด์นะครับ
ส่วนเวลาอ่าน ก็อย่าลืมบอกฟังก์ชันด้วย ว่าเราใช้เครื่องหมายอะไร เป็นตัวแบ่งฟิลด์
ขอบคุณมากครับ