ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

  แสดงกระทู้
หน้า: [1]
1  พัฒนาเว็บไซต์ / Programming / Re: [[ แจก ]] Classified 7daysell V2.5 ตามคำเรียกร้องครับ เมื่อ: 30 ธันวาคม 2011, 13:25:24
ขอบคุณมากครับ สำหรับ script ดีๆมาแบ่งปัน
2  พัฒนาเว็บไซต์ / Programming / Re: ถามดึงข้อมูล HTML ในฐานข้อมูล MYSQL ด้วย PHPต้องทำอย่างไรครับ เมื่อ: 27 ธันวาคม 2011, 17:17:24
หมายถึง อยากจะได้โคดตัวอย่าง การเขียนโปรแกรม บันทึกลงฐานข้อมูล แล้วเอามาโชร์รึเปล่าครับ
หรือว่าไม่รู้ว่าถ้าต้องการเก็บข้อมูล varchar แบบเยอะๆ ที่เป็นเนื้อหา html จะใช้ data type ชนิดไหน แบบนี้หรือเปล่าครับ

ถ้าเป็นตัวโคด หาดาวน์โหลด ได้ทั่้วไปครับ เช่น ระบบ simple webboard แบบง่ายๆ ให้รู้ concept เฉยๆ http://phpthaionline.blogspot....10/simple-webboard-upload.html

แต่ถ้าจะเป็น data type ก็ลองใช้ mediumtext ดูก็ได้ีครับ
3  พัฒนาเว็บไซต์ / Programming / Re: ขอคำแนะนำการเขียน webboard เองหน่อยค่ะ เมื่อ: 27 ธันวาคม 2011, 17:11:55
ลองอ่านบทความ ระบบ Simple Webboard upload รูปภาพได้

แล้วดาวน์โหลด ตัวอย่างโคด อันนี้ดูก็ได้นะครับ
http://phpthaionline.blogspot....10/simple-webboard-upload.html
4  พัฒนาเว็บไซต์ / Programming / Re: help me ช่วยแก้โค้ดVb2005+Mysql (โปรแกรมlogin) เมื่อ: 27 ธันวาคม 2011, 17:06:44
ตรงคำสั่ง Select น่ะครับ
Dim sqlquary = "SELECT * FROM user whare uername '" & UsernameTextBox.Text & "' AND Password = '" & PasswordTextBox.Text & "';"

ตรง where นะครับ ไม่ใช่ whare แล้วก็ username ต้องมี = ด้วยนะครับ

ยังไงลองเช็ค select statement ดูนะครับ
5  ความรู้ทั่วไป / SEO Guideline / Re: SEO คืออะไร มาทำความรู้จักมันให้มากขึ้นกันดีกว่า โดย mr.chk เมื่อ: 27 ธันวาคม 2011, 17:00:55
ขอบคุณมากครับ จะติดตามต่อไปนะครับ
6  พัฒนาเว็บไซต์ / Programming / Re: เเบบฟอร์มส่งเมล์ ใส่ภาษาไทยแลัว ยึกยืกเซฟไม่ได้ ...PHP เมื่อ: 07 ตุลาคม 2009, 18:17:42
งงคำถามเหมือนกันครับ น่าจะเป็น ?? ตอนที่ submit ไปแล้วใช่มั้ยครับ

เพราะงั้น ลองใช้ function utf8_to_tis620 พวกนี้แปลง ข้อมูลที่ได้จาก textbox ซึ่ง encode UTF-8 อยู่ให้เป็น tis-620 ดูนะครับ
// สำหรับแปลง UTF-8 เป็น tis-620
function utf8_to_tis620($string)
{
    $str = $string;
    $res = "";
    for ($i = 0; $i < strlen($str); $i++) {
      if (ord($str[$i]) == 224) {
        $unicode = ord($str[$i+2]) & 0x3F;
        $unicode |= (ord($str[$i+1]) & 0x3F) << 6;
        $unicode |= (ord($str[$i]) & 0x0F) << 12;
        $res .= chr($unicode-0x0E00+0xA0);
        $i += 2;
      } else {
        $res .= $str[$i];
      }
    }
    return $res;
}

// สำหรับแปลง tis-620 เป็น utf-8
function tis620_to_utf8($text) {
  $utf8 = "";
  for ($i = 0; $i < strlen($text); $i++) {
    $a = substr($text, $i, 1);
    $val = ord($a);

    if ($val < 0x80) {
      $utf8 .= $a;
    } elseif ((0xA1 <= $val && $val < 0xDA) || (0xDF <= $val && $val <= 0xFB)) {
      $unicode = 0x0E00+$val-0xA0;       $utf8 .= chr(0xE0 | ($unicode >> 12));
      $utf8 .= chr(0x80 | (($unicode >> 6) & 0x3F));
      $utf8 .= chr(0x80 | ($unicode & 0x3F));
    }
  }
  return $utf8;
}
ได้ผลยังไง บอกด้วยเด้อ
7  พัฒนาเว็บไซต์ / Programming / Re: ถามหน่อยครับ ติดตรงนี้มากๆ ช่วยทีครับ Code เมื่อ: 05 ตุลาคม 2009, 13:30:15
เห็นด้วยกับคุณ ohmohm ครับ ไป fixed ค่าให้กับ class ผ่านไปซัก 1ปี จะแก้ไข เปลี่ยนจาก 40 เป็น 50 เนี่ยต้องไปนั่งรื้อโคดกันวุ่น
วิธีนี้ถูกต้องที่สุดครับ

class page_spilt
{
    var $pagename = '';
    var $resperonetime = 40;
}
สร้างเป็น property ไว้ให้กับ class เวลาจะแก้ไขก็ทำได้ง่ายโดย new class page_spilt แล้วกำหนด property resperonetime ใหม่
$myPg= new page_spilt;
$myPg->pagename='ค่า pagename ใหม่';
$myPg->resperonetime=50;  <-- ค่าใหม่
8  พัฒนาเว็บไซต์ / Programming / Re: ขอความช่วยเหลือเรื่อง PHP ติดต่อ ASP.net Web Service ครับ เมื่อ: 05 ตุลาคม 2009, 12:33:40
ผมแนะนำ ว่าให้ลองใช้ตัว nusoap จะดีกว่านะครับ ปัจจุบันเป็นเวอร์ชั่น nusoap_0.7.2 ซึ่งหาโหลดได้จาก http://sourceforge.net/projects/nusoap/
 
เมื่อโหลด nusoap ได้มาแล้ว ทีนี้ก็ดูตาม sample โคดนี้นะครับ
// สมมุติ ผมได้สร้าง web method ขึ้นมาตัวนึงดังนี้
  [WebMethod]
  public string HelloWorld(string str1)
  {
   return "Hello World "+str1;
  }
//=====================================
จาก web method ที่ได้สร้างขึ้นมา จะมี method HelloWorld ซึ่งรับค่า parameter ชื่อ str1
และจากนั้นจะ return ค่ามาเป็นคำว่า Hello World  + ค่าของ parameter ซึ่งเมื่อมีการเรียกใช้งาน web method ที่สร้าง ขึ้นมานี้จะคืนค่ากลับมาเป็น xml ดังนี้
// =========================================

  <?xml version="1.0" encoding="utf-8" ?>
  <string xmlns="http://tempuri.org/ ">Hello World nuijang</string>
// =========================================

คราวนี้มาดูว่าเราจะใช้ php เรียกใช้งาน web method ที่สร้างขึ้นมาจาก .Net ได้อย่างไรนะครับ
ให้เรา ดาวน์โหลด nusoap มาจาก link ด้านบน แล้วนำมาแตกไฟล์ จะได้โฟลเดอร์ lib ภายในจะมี Class ต่างๆมากมาย ให้ copy โฟรเดอร์ lib ทั้งหมด มาวางไว้ที่ root directory ใหม่
 
จากนั้น เขียนโคดดังนี้
<?php
    require_once('nusoap_0.7.2/lib/nusoap.php');  // include ไฟล์ nusoap.php เข้ามาไว้ใน project
// สร้าง ตัวแปร object soapclient โดยจะต้องส่ง parameter 2 ตัว คือ 1. URL web service (จะต้องต่อท้ายด้วย ?WSDL ด้วยนะครับ) 2. ค่า true
    $eventclient = new soapclient('http://localhost/testwebservice/index.asmx?WSDL',true );
// จากนั้นดูว่า web method ที่เราสร้างขึ้นมีการส่ง parameter มาหรือเปล่า ถ้ามี จะต้อง สร้าง parameter ด้วย และ เนื่องจาก การใช้งาน nusoap ค่าที่ส่งเป็น parameter จะเป็น array เพราะฉะนั้น เราจึงต้องสร้าง parameter เป็น array ดังนี้
$params = array('str1'=>'nuijang');
// จากนั้นขั้นตอนสุดท้ายของการส่ง ค่าไปยัง web service คือการเรียกใช้ method call ของ class soapclient จาก nusoap นะครับ
 
//ทำการเรียกใช้งาน webservice โดย ส่ง parameter ของ method call(string $operation, [ array $params, string $namespace, string $soapAction, boolean $headers ])
// เนื่องจากค่าที่คืนมา จะเป็น Array เราจึงต้องเอาตัวแปร $data มารับค่า จาก method call
 
$data = $eventclient->call('HelloWorld',array('parameters' =>$params), '', '', false, true);
 
// และสุดท้าย ก้อคือ การนำข้อมูลมาแสดงผลนั่นเอง
   foreach ($data as $value) {
    echo $value ."<br>";
   }
// หรือ print_r($data);  // เราจะพบว่าค่า result ที่ได้กลับมาจะเป็นในรูป array ซึ่ง จะเป็นชื่อ method ที่เรียกต่อท้ายด้วย result เป็น keyword ที่จะเข้าถึงข้อมูลในตัวแปร array ดังนี้
Array ( [HelloWorldResult] => Hello World nuijang )
ทำให้เราสามารถใช้งาน บรรทัดด้านล่างนี้ เพื่อเข้าถึงข้อมูลได้เหมือนกัน
echo $data['HelloWorldResult']; 
 และ ผลลัพธ์ จะได้ออกมาเป็น

Hellow world nuijang

// =====================================================
จบแล้วครับ ถ้า ดาวน์โหลด nusoap มาจะมี sample ตัวอย่างการติดต่อ แบบต่างๆมาให้มากมาย ลองเล่นดูนะครับ
9  ความรู้ทั่วไป / E-commerce / Re: ตัดสินใจไม่ถูกระหว่าง Tarad quickweb กับ Weloveshopping เมื่อ: 22 กันยายน 2009, 16:09:11
welove พัฒนาบน php framework ทำให้กินทรัพยากร เครื่องสูงกว่า ปกติมันเลยล่มปากอ่าวบ่อย
10  พัฒนาเว็บไซต์ / Programming / Re: ใช้ SMTP ส่งเมลแล้ว เข้า Junk เมล แก้ยังไงดีครับ เมื่อ: 21 กันยายน 2009, 19:55:00
ติดปัญหานี้เหมือนกันครับ ส่วนใหญ่มันก็เข้า junk
11  พัฒนาเว็บไซต์ / Programming / Re: [แจก] Best SEO script collection nulled เมื่อ: 19 กันยายน 2009, 18:54:33
ขอบคุณมากครับผม
12  พัฒนาเว็บไซต์ / Programming / Re: [Web Services ] ขอถามเกี่ยวกับการสร้าง web services ด้วย Asp หน่อยครับ เมื่อ: 19 พฤษภาคม 2008, 10:20:36
คุณใช้ด้วย asp classic หรือ asp.net น่ะครับ

ก่อนอื่น ผมจะแบ่งเป็น 2 กลุ่ม นะครับ
กลุ่มแรก คือ กลุ่ม ผู้ให้บริการ หรือ web ที่ให้บริการเว็บ service นั่นเอง
กลุ่มที่สอง คือ กลุ่ม ผู้ขอใช้บริการ นะครับ

ผมจะขออธิบาย เรื่อง web service แบบ ง่ายๆ นะครับ
เรื่อง web service นั้น ปกติ เวลาที่เรา ทำเว็บหรือเขียนโปรแกรม เราจะมีการ สร้าง function เพื่อ ให้ทำงานอย่างใดอย่างหนึ่ง แล้วได้ผลลัพธ์ กลับมา ยกตัวอย่างเช่น
โค๊ด:
function calculator(byval val1 as double ,byval val2 as double,byval op as string) as double
 ....
end function
อันนั้นจะเป็นการสร้างฟังชั่น ขึ้นมาในProject เพื่อรอการเรียกใช้นะครับ ซึ่งก็คือเรื่องเดียวกับการสร้าง web service ที่ผมจะกล่าวนั่นแหละ
web service ก็คือการแยก ฟังชั่นที่จำเป็นพวกนั้นออกมา โดยแยกไว้ คนละที่ไปเลย แล้วเรียกใช้งานผ่าน URL แทน นั่นเอง ซึ่ง โดยหลักการสร้าง web service นั้น ก็จะประกอบไปด้วย method หรือ ฟังชั่น หลายๆ ฟังชั่น ที่ทำงาน ในกลุ่มเดียวกับ แยกไว้ต่างหากนะครับ โดยที่การสร้าง web service เพื่อให้สามารถใช้งานได้ ทุก platform จึงได้มีโครงสร้าง เป็น รูปแบบ xml และผ่าน protocal soap นะครับ
ที่ผมพูดไปนั้น เป็นการสร้าง web service ในกลุ่มของ ผู้ให้บริการนะครับ ถ้าใช้ asp.net ตรงนี้จะทำได้ง่ายมาก เนื่องจาก .net รองรับ web service มี solution เพื่อรองรับการสร้างอยู่แล้ว

แต่หาก ใช้ asp classic ก็หนังชีวิตเลยและ คับ จะศึกษาโครงสร้าง soap ของ เอกสาร WSDL นั้นไม่ใช่สิ่งที่จะทำได้ภายในเวลา สั้นๆ คงต้องหา พวก toolkit ของ asp classic เอาเองนะครับ

https://webservices.municipaldataworks.ca/SDK/WalkThroughClassicASP.htm

ซึ่ง จากโปรเจคของคุณ ส่วนที่เป็นผู้ให้บริการคือ

http://student.nu.ac.th/ice/thaicar เป็น Services ตัวที่ 1
http://student.nu.ac.th/ice/siamcar เป็น Services ตัวที่ 2
ทั้งสอง URL นี้จะต้องสร้าง หน้า service ผู้ให้บริการ หรือ สร้าง method สำหรับให้บริการ ซึ่งจะต้องออกมาในรูปแบบ xml ของเอกสาร WSDL ด้วย นะครับไม่ใช่สร้าง page ธรรมดา
อาจจะ โจทย์ อาจจะเป็น ให้เรียกใช้ service 2 ตัว
ตัวที่หนึ่ง อาจจะเป็น service ที่ใช้ใน insert ,update ,delete กับ ฐานข้อมูล ใช้ในการ เพิ่มข้อมูล หรือ แก้ไขข้อมูล หรือลบข้อมูล
ตัวที่สอง อาจจะเป็น service ที่ใช้ในการ select หรือ search ฐานข้อมูล ใช้ในการแสดงผลข้อมูลทั่วไป

ข้างบนนี้ถ้าสร้างด้วย asp classic ผม ไม่รู้จะช่วยบอกได้ไง เพราะถ้าดูจากเว็บของคุณ คุณสร้างด้วย asp classic น่ะครับ ต้อง พึ่ง google หา Web Services Classic ASP แล้วแหละครับ

ทีนี้ถ้าสร้าง กลุ่มผู้ให้บริการได้เรียบร้อย อันดับต่อมา ก็เพียงแค่ เรียกใช้ เท่านั้น
วิธีการเรียกใช้นั้น ก็ เรียกใช้ ได้ง่าย ตามตัวอย่าง ที่ผม copy มาจากเว็บอื่นนะครับ แต่อาจจะต้องทำความเข้าใจ เรื่อง xml ซักหน่อย
http://www.velocityreviews.com...-service-from-classic-asp.html

โค๊ด:
<%Option Explicit
Dim objRequest, objXMLDoc, objXmlNode
Dim strRet, strError, strNome

strName = "Julian"
Set objRequest = Server.createobject("MSXML2.XMLHTTP")

With objRequest
.open "GET", "http://localhost/TextData/TextData.asmx/GetName?sName=" &
strName, False
.setRequestHeader "Content-Type", "text/xml"
.setRequestHeader "SOAPAction", "HTTP://localhost/TextData/GetName"
.send
End With

Set objXMLDoc = Server.createobject("MSXML2.DOMDocument")
objXmlDoc.async = false

Response.Write(objRequest.ResponseXml)

'If objXmlDoc.LoadXml(objRequest.ResponseXml.Xml) Then
' Set objXmlNode = objXmlDoc.SelectSingleNode("GetNameResponse")
' If Not objXmlNode Is Nothing Then
' strRet = objXmlNode.NodeTypedvalue
' Response.Write(strRet)
' End If
'Else
' strError = objXmlDoc.parseError.reason
' Response.write(strError)
'End If
%>

โปรเจคของคุณนั้น ค่อนข้างลำบากที่สร้างพอดู เพราะ asp classic มันไม่ได้รองรับการสร้าง web service ลองถามอาจารย์ดูให้แน่ใจนะครับว่า ใช้ asp classic หรือ asp.net
ถ้าเป็น .net นั้นจะง่ายจนคุณ ตกใจเลยแหละครับ
13  พัฒนาเว็บไซต์ / Programming / Re: อยากได้โค้ตทำนำหน้าเวบอีกหน้ามาแสดงที่เว็บเรา เมื่อ: 17 พฤษภาคม 2008, 11:18:17
อันนี้ถ้าจะทำให้ดี นะครับ ก็คงต้องทำในลักษณะของ ติดต่อไปยังหน้า เว็บที่ต้องการ แล้วใช้วิธี ตัดต่อ text ที่แสดงผล ในหน้านั้น เอาเฉพาะที่เราต้องการ นะครับ

ผมใช้ curl ของ php ในการ ดึงหน้าเว็บ และ ใช้ฟังชั่น strpos ของ php ในการ ตัดต่อนะครับ
ซึ่งวิธีการนี้ เราจะต้อง เปิด โคดในหน้า page ที่เราต้องการขึ้นมา แล้ว หาตำแหน่ง ของ dom ที่เป็นจุดแรก ของส่วนหน้าเว็บที่เราต้องการ แล้วตัด เอา ภายในออกมา นะครับ ผมได้เขียนวิธีการและตัวอย่างใน link ด้านล่างนี้ลองไปดูนะครับ
http://phpthaionline.blogspot.com/2008/04/curl-extension.html
14  พัฒนาเว็บไซต์ / Programming / Re: ได้ โค้ดดึง rss มาแสดงบน php ครับ แต่อยากให้แสดงเพียงแค่ 5 หรือ 3 (ขอให้ช่วย) เมื่อ: 17 พฤษภาคม 2008, 11:05:23
เอาแบบง่ายๆ นะครับ ก็ไปดู function ชื่อ parse_results นะครับ
จากนั้นดูตรง บรรทัดที่เขียนว่า
// ของเดิม ==============
โค๊ด:
while ($data = fread($fp, 4096))	{

// parse the data
xml_parse( $xml_parser, $data, feof($fp) ) or die( sprintf( "XML error: %s at line %d", xml_error_string( xml_get_error_code($xml_parser) ), xml_get_current_line_number( $xml_parser ) ) );

} // endwhile

// แก้เป็น ===============
โค๊ด:
		$count=0;
                     $maxRss =5;
while ($data = fread($fp, 4096)) {
if ($count<=$maxRss){ // $maxRss คือจำนวนตัวเลขที่ต้องการโชร์
// parse the data
xml_parse( $xml_parser, $data, feof($fp) ) or die( sprintf( "XML error: %s at line %d", xml_error_string( xml_get_error_code($xml_parser) ), xml_get_current_line_number( $xml_parser ) ) );
}
$count++;
} // endwhile
15  พัฒนาเว็บไซต์ / Programming / Re: [PHP Room] แชร์ PHP กันวันละนิด เมื่อ: 10 ตุลาคม 2007, 10:16:51
ขอแชร์ บ้างซักนิดนะครับ เรื่องการรับส่งค่า ระหว่าง window หลัก และ popup และการเรียกใช้ parent ระหว่าง iframe กับ main iframe

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


1. มีไฟล์ window หลัก เป็นฟอร์ม ที่มี textbox 2 ตัวคือ 1 ชื่อ , 2 นามสกุล จากนั้นจะมีปุ่ม link สำหรับ เปิดหน้าต่าง popup เพื่อแสดง รายชื่อที่เป็นรายการใน List สำหรับ ค้นหา รายชื่อทั้งหมด จากฐานข้อมูล
2. มีไฟล์ window รอง เป้น popup สำหรับ แสดงรายชื่อทั้งหมดที่มีอยู่ และ มีช่อง iframe เพื่อเรียกไฟล์ list member ขึ้นมา
3. มีไฟล์ listmember ซึ่งอาจจะวน loopจากฐานข้อมูลขึ้นมาก็ได้

โคด หน้า window หลัก
โค๊ด:
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script language="javascript">
<!--
// ฟังชั่นสำหรับ เปิดหน้าต่าง popup
function winopen(theURL,winName,width,height,scollbar) { //v2.0
var setfocus;
  setfocus = window.open(theURL,winName,'resizable=yes,scrollbars='+ scollbar +',width='+ width +',height='+ height +',top=0,left=0');
  setfocus.focus();
}
//-->
</script>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620"></HEAD>

<BODY>
<form name="form1">
<table width="500" border="0" bgcolor="#cccccc" cellpadding="2" cellspacing="1">
<tr>
<td bgcolor="#eeeeee">ชื่อ</td>
<td bgcolor="#eeeeee"><input type="textbox" name="txtname"> <a href="javascript:winopen('popup01.html','open1',500,200,0)">find..</a></td>
</tr>
<tr>
<td bgcolor="#eeeeee">นามสกุล</td>
<td bgcolor="#eeeeee"><input type="textbox" name="txtsurname"></td>
</tr>
</table>
</form>
</BODY>
</HTML>

โคดหน้าต่าง popup
โค๊ด:

<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620"></HEAD>

<BODY>
<table width="500" border="0" bgcolor="#cccccc" cellpadding="2" cellspacing="1">
<tr>
<td bgcolor="#eeeeee" valign="top"><h3>Link รายการกลับ</h3><br>
<a href="javascript:fram.returnTextBox(' ');">-- Clear TextBox --</a><br></td>
<td bgcolor="#eeeeee"><iframe  name="fram" src="popup01_link.html" frameborder="0"
scrolling="no"  height="100%" width="350" marginwidth="0" marginheight="0" ></iframe></td>
</tr>
</table>
</BODY>
</HTML>


โคดหน้า Iframe แสดงรายชื่อสมาชิก
โค๊ด:

<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<script language="javascript">
<!--
function returnTextBox(val){
var result = val.split(" "); // ตัดคำ ชื่อ และนามสกุลออก
var txt1 = parent.window.opener.form1.txtname; // textbox ของ opener ตัวที่ 1 จ้า
var txt2 = parent.window.opener.form1.txtsurname; // textbox ของ opener ตัวที่ 2 จ้า
txt1.value=result[0]; // กำหนด ค่า value ลงไป ใน textbox 1
txt2.value=result[1]; // กำหนด ค่า value ลงไป ใน textbox 2
parent.window.close();
}
//-->
</script>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620"></HEAD>

<BODY>
<!--  ส่วนนี้ สามารถ วน Loop จากดาต้าเบส ได้ครับ -->
<a href="javascript:returnTextBox('สราวุธ จงเจริญมั่นคง');">สราวุธ จงเจริญมั่นคง</a><br>
<a href="javascript:returnTextBox('หิรัญ ศรีสุพรรณ');">หิรัญ ศรีสุพรรณ</a><br>
<a href="javascript:returnTextBox('สุรเดช ศรีเจริญ');">สุรเดช ศรีเจริญ</a>
<!--  ============================== -->
</BODY>
</HTML>
16  พัฒนาเว็บไซต์ / Programming / Re: แจก Code PHP ง่ายๆ Random Articles จาก Ezine Article มากกว่า หกแสน Articles* เมื่อ: 05 ตุลาคม 2007, 18:56:35
 Smiley
ผมเห็นด้วยนะครับ กับ การที่ เราควรจะใช้ curl ในการ ตัดต่อ หน้าแสดงผลจากเว็บอื่น เพื่อ มาแสดงผลในเว็บของเรา หรือ อาจจะใช้ เป็น RSS  แทนการ ดูดข้อมูลจากเว็บอื่น มาตรงๆ (มันไม่เหมาะสม และอาจโดนฟ้องได้ครับ)

ซึ่ง การดึง บางส่วนของหน้า เว็บไซต์ บทความอื่นๆ มาแสดง ผล นั้น เราอาจจะต้องมีการ ตัดต่อ ข้อมูล ของหน้าเว็บ ด้วย อันนี้จำเป็นจะต้อง มีความรู้และความเข้าใจในเรื่องของ โครงสร้าง Document Object Model ของเอกสาร HTML ด้วยนะครับ เราถึงจะตัดต่อหน้าเว็บได้อย่าง มีประสิทธิภาพ

ใน ส่วนนี้ผมจะขอสาธิต ตัวอย่างการ ตัดต่อ หน้าเว็บ ของ เว็บไซต์ http://www.4guysfromrolla.com/webtech/index_asp.shtml
เพื่อ นำมาแสดง ข้อมูล ในเว็บไซต์ของเรา และ มีการ ตัดต่อ Dom เพื่อ เลือกหัวข้อได้ เป็น การทำแบบง่ายๆ โดยการใช้ extension cure ของ PHP เป็นตัวช่วยนะครับ
// การใช้ curl ของ php จำเป็นจะต้อง เปิดไฟล์ php.ini ซึ่งเป็นตัว configuration ของ php จะอยู่ใน C:\windows  ครับ
// เมื่อเปิดไฟล์ php.ini แล้วให้หา บรรทัดที่เขียนว่า 
;extension=php_curl.dll   
จากนั้นทำการ เอาเครื่องหมาย ; หน้าextionsion ออก ให้เหลือ extension=php_curl.dll เท่านั้น

เมื่อเตรียมการพร้อมแล้ว นำโคด นี้ไปใส่ได้เลยครับ

โค๊ด:
<?php
$url
="http://www.4guysfromrolla.com/webtech/";
if (
$viewcat<>""
$url.=$viewcat;
else
$url.="index_asp.shtml";


function 
replaceLink($data){
$data ereg_replace('<a href="/webtech/','<a href="aspnet_article.php?viewcat=',$data);
return $data;
}

function 
callArticle(){
global $url;
   
$user_agent "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";
//    $params     = "";   
// $url .="?".$params;
$ch curl_init();
   
curl_setopt($chCURLOPT_SSL_VERIFYPEERFALSE);
   
curl_setopt($chCURLOPT_HEADER0);
   
curl_setopt($chCURLOPT_POST,0);
   
//curl_setopt($ch, CURLOPT_POSTFIELDS,$params);
   
curl_setopt($chCURLOPT_URL,$url);
   
curl_setopt($chCURLOPT_RETURNTRANSFER,1);
   
curl_setopt($chCURLOPT_USERAGENT$user_agent);
   
   
$result curl_exec($ch);
   
$start_result strpos($result,"<!--content_start-->");

$end_result strpos($result,"<P><CENTER>",$start_result+11);
$substring .= substr($result,$start_result,$end_result-$start_result);
   
curl_close ($ch);
   return 
replaceLink($substring);
}
?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=tis-620">
</HEAD>

<BODY>
<h2>การตัดต่อ Article http://www.4guysfromrolla.com/webtech/index_asp.shtml <br>ผลลัพธ์ที่ได้คือ </h2><hr>
<?php
echo callArticle();
?>

</BODY>
</HTML>


ขอให้สนุกกับการศึกษาเพิ่มเติมนะครับ
หน้า: [1]