ข่าว IT ล่าสุด
ถูกใจอย่าลืม Like Fanpage
ดึงหน้าเว็บมาแสดงง่ายๆด้วย การใช้ file_get_contents
แสดงแล้ว 20489 ครั้ง /
ตุลาคม 02, 2010, 07:40:26

Moshi

ออฟไลน์
กระทู้ : 16,996
คะแนนขอบคุณ : 45
it4x สังคมแห่งการเรียนรู้
ดึงหน้าเว็บมาแสดงง่ายๆด้วย การใช้ file_get_contents

      php นั้นมีคำสั่งที่น่าสนใจอีกอย่างนึงก็คือ การดูดหน้าเว็บนั่นเอง เป็นการดูดหน้าเว็บผ่านทาง url ครับ ประโยชน์ของมันนั้นมีมาก หากแต่ถ้าใช้ผิดวิธีเช่นไปดูดหน้าเว็บคนอื่นมาแสดงเป็นของตัวเอง หรือ ดูดหน้าบทความเค้าแล้วเอามาเป็นของตัวเอง นี่ก็ไม่สมควรทำนะครับ เลือกใช้ที่มันเป็นด้าน + ละกัน ก็ขอยกตัวอย่างดูดหน้าเว็บ it4x แล้วกันนะครับ

ตัวอย่าง

โค๊ด: [Select]
 
$data=file_get_contents("http://it4x.com");
 
if ($data === false)
 
{
   // ใส่คำสั่งที่นี่กรณีดึงไม่ได้
  echo 'ดึงหน้าเว็บ it4x ไม่ได้';
}
 else
{
   // ใส่คำสั่งที่นี่ กรณีดึงได้
   echo 'ดึงหน้าเว็บ it4x ได้';
}
?>

แต่ถ้าอยากให้มัน แสดง ก็ echo $data; ดูครับ

ลองประยุกต์ไปใช้งานดูครับ



ขอบคุณข้อมูลบางส่วนจาก : http://smokietorphp.d-ja.com/archives/74

« แก้ไขครั้งสุดท้าย: ตุลาคม 02, 2010, 07:56:18 โดย Moshi »

metal4x

ออฟไลน์
กระทู้ : 12
คะแนนขอบคุณ : 0
ตุลาคม 23, 2010, 22:38:44
หวัดดีครับคุณ Moshi ....(ผมอ่านด้านบนหมดแล้วนะครับ)

คือผมต้องการไปดึงข่าว+เว็บบอร์ดจากหน่วยงานราชการต้นสังกัด (คิดว่าคงไม่ผิดกติกา) มาแสดงบนหน้าเว็บหน่วยงานที่ผมทำครับ...ตามนี้ครับ

รายละเอียดคือ ผมต้องการดึงข่าว จาก2เว็บนี้ (ตามรูป1+2)

1.http://www.thailocaladmin.go.th/servlet/ElectronicBookServlet?EType=2&fpage=y



2.http://www.surat-local.go.th/index.php




ดึงข่าวจากเว็บด้านบนไปลงเว็บหน่วยงานที่ผมทำให้  เอาไปลงในส่วนตามรูปด้านล่างนี้ครับ


ต้องทำยังไงครับ เพราะถ้าดึงของตัวเองก็พอไหวอยู่....แต่ไปดึงเว็บอื่นหนิ ใช้ file_get_contents ยังไงครับ

**(ไปดึงมา คงไม่ผิดกติกา เพราะพวกกรม/ราชการ ต้องการกระจายข่าวอยู่แล้ว)**
**(หน่วยงานแบบผมก็ดึงข่าวแบบนี้กันเยอะแยะ...แต่ดึงได้ง่ายเพราะ...บริษัทที่รับจ้างทำเป็นบริษัทเดียวกัน เลยดึงง่ายหน่อย)**

เว็บนี้คือหน่วยงานหลักที่อยากจะดึง....===>> http://www.surat-local.go.th/
ตย.เว็บที่ไปดึงเช่น ===>> http://www.takhamcity.go.th/index.php   ....http://www.khuntalae.go.th/index.php

ใช้ file_get_contents ต้องทำไงมั่งครับ..ช่วยผมหน่อย..ผมอยากรู้..ขอบคุณครับ

Moshi

ออฟไลน์
กระทู้ : 16,996
คะแนนขอบคุณ : 45
it4x สังคมแห่งการเรียนรู้
ตุลาคม 24, 2010, 14:31:31
ถ้าถามว่าทำได้ไหมครับ ทำได้ แต่จะเขียนคร่าวๆ ให้ดูนะ ดัดแปลงเอา

เดียวมาเขียนนะ โพสข่าวเสร็จก่อน

Moshi

ออฟไลน์
กระทู้ : 16,996
คะแนนขอบคุณ : 45
it4x สังคมแห่งการเรียนรู้
ตุลาคม 24, 2010, 15:22:15
อันนี้เขียนมาลวกๆ จริงๆมันมี function ที่เอาไว้ใช้เฉพาะอยู่ อิอิ

แต่ให้ไม่ได้เพราะจะหมดทางหากินเอิกๆ

เขียนให้ดูเป็นตัวอย่างดัดแปลงแก้ไขต่อเอานะครับ

โค๊ด: [Select]


$data = file_get_contents("http://www.thailocaladmin.go.th/servlet/ElectronicBookServlet?EType=2&fpage=y");
$data = iconv('windows-874','UTF-8',$data);

$data = strstr($data,'');
$data = strstr($data,'');
$data = strstr($data,'');


while($i <= 20) {
$data = str_replace('','',$data);

  ++$i;
}
$data = str_replace('href="/upload/document/','href="http://www.thailocaladmin.go.th/upload/document/',$data);
$content = explode('
', $data);

echo ' ';
echo $content[0];

?>

metal4x

ออฟไลน์
กระทู้ : 12
คะแนนขอบคุณ : 0
ตุลาคม 25, 2010, 12:59:24
ขอบคุณสำหรับคำตอบ และความช่วยเหลือครับผม  ::)
« แก้ไขครั้งสุดท้าย: ตุลาคม 29, 2010, 00:49:17 โดย metal4x »

 

ด้วยฟังค์ชั่น ตอบด่วน คุณสามารถใช้โค๊ดและ เครื่องหมายแสดงอารมณ์ได้ เหมือนการตั้งกระทู้ธรรมดา แต่สามารถทำได้สะดวกกว่า

ระวัง: หัวข้อนี้ไม่มีการอัพเดทมานานถึง 120 วัน

แจ้งเตือน: โพสของคุณจะไม่แสดงจนกว่าผู้ดูแลจะอนุมัติ.
ชื่อ: อีเมล์: