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,028

HOME > PHP > PHP Forum > การดึงรูป Thumb Thumbnail ของ Clip video ใน Youtube ของดีเอามาแชร์ให้ครับ



 

การดึงรูป Thumb Thumbnail ของ Clip video ใน Youtube ของดีเอามาแชร์ให้ครับ

 



Topic : 068284



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



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




หลายๆเว็บที่ได้มีการนำคลิปวิดีโอ youtube มาใส่ในเว็บนั้น สิ่งที่ขาดไม่ได้คือรูปขนาดเล็กที่แสดงภาพสื่อเนื้อหาใน clip video หรือที่เรียกว่า thumb การทำจะนำภาพ thumb จาก clip video youtube นั้นมีอยู่ด้วยกัน 2 วิธีนะครับเท่าที่ผมรู้ในตอนนี้คือ 1 เอามาจาก url ของรูปภาพประจำ clip วิธีที่ 2 คือใช้ api ดึงข้อมูลของภาพ thumb มาให้แต่ทั้ง 2 วิธีนั้นมันก็ต้องอาศัยค่าที่เรียกว่า video_id นั้นเอง แล้วเราจะเอา video id จากที่ไหนกันละง่ายที่สุดก็คือ url ของคลิปวิดีโอแต่ละคลิปนั้นแหละครับ เช่น http://www.youtube.com/watch?v=FPEND5w6fUw เราก็จะได้ video id คือ FPEND5w6fUw ซึ่งเราสามารถเอา video id จาก หลัง v= นั้นเอง แต่ถ้า url ยาวกว่านี้เช่น http://www.youtube.com/watch?v=BD4h9sCPymo&feature=related ให้เราเอาหลังจาก v= จนถึงเครื่องหมาย & นะครับ จากตัวอย่าง url อันที่ 2 ก็จะได้ video id คือ BD4h9sCPymo นั้นเอง หลังจากที่เรารูป video id แล้วเราก็จะมาดูรูป thumb กัน

การเอารูป thumb ของ video youtube นั้นจะให้ไปเอารูปจาก url นี้ครับ http://img.youtube.com/vi/VIDEO_ID/#.jpg ซึ่ง VIDEO_ID คือ video id ที่เราหาเมื่อกี้นั้นเอง ส่วนเครื่องหมาย # นี้ก็จะเป็นเลข 0 ถึง 3 โดยรูปหมายเลข 0 นั้นจะมีขนาด 480×360 ส่วนหมายเลข 1-3 จะเป็นขนาด 120 x 90 นะครับ

cradit : http://www.thaicoding.net/%E0%B8%81%E0%B8%B2%E0%B8%A3%E0%B8%94%E0%B8%B6%E0%B8%87%E0%B8%A3%E0%B8%B9%E0%B8%9B-thumb-%E0%B8%82%E0%B8%AD%E0%B8%87-clip-video-%E0%B9%83%E0%B8%99-youtube/#more-1017

ส่วนโค้ดมาดูข้างล่างกัน

Code (PHP)
<?
$text=$_REQUEST['text']; // รับค่าตัวแปลจาก text

if(!empty($_REQUEST['Ok'])){ // เช็คปุ่ม submit

// ค้นหาตำแหน่งของ v= สาเหตุที่ค้นหาสองตัวก็เพราะว่าบางที่ Link มีตัว v หรือ = สอนตัวใน Link เดียวนั้นเอง เช่น http://www.youtube.com/watch?NR=1&v=pxE4XDq24H4
$strat=strpos ( $text, "v=" ); 

// ค้นหาตำแหน่งของ  &
$length=strpos ( $text, "&" );

// เช็คตำแหน่งของ & อยู่ในตำแหน่งที่น้อยกว่าตำแน่ง v= หรือไม่ เพราะถ้าน้อยกว่าก็ไม่สามารถตัด string หาค่า id ได้สมบูรณ์ ได้ ถ้างงดูบรรทัดต่อมา
if(($length<$strat) or ($length ='')){

// ฟังชั่นนี้คือฟังชั่นดึงตัวข้อมความออกมาใช้ คำสั่งก็คือ substr ( "ข้อมความ string", ตำแน่งที่เริ่มตัด);
$_REQUEST['pic_id']= substr ( "$text", $strat+2);
// จะเห็นว่าทำไมผมถึงมี +2 ต่อท้าย เพราะว่า เราได้ทำการค้นหาสองตังไงครับคือ v กับ = ถ้าค้นหา 1 ตัวก็ใส่ +1 สาเหตุต้อง ใส่ +2 ต่อท้ายก็เพราะ มันจะเริ่มตัวนับตำแหน่งตัวที่เราค้นหามาด้วยครับ
//เช่น ถ้าเราไม่ใส่ +2 ผมที่ออกมาก็จะเป็น "v=pxE4XDq24H4" ซึ่งเราไม่ต้องการตัว v=
}else{
//อันนี้ถ้าไม่ใช่เงื่อนไขแรก ฟังชั่นนีก็จะทำการ substr ( "ข้อมความ string", ตำแน่งที่เริ่มตัด ,จำนวนตัวอักษร);
$_REQUEST['pic_id']=substr ( "$text", $strat+2, $length-$strat-2 );
//จะเห็นได้ว่ามี +2 -2 มาอีกแว้ว  +2 คงจะเค้าใจแว้ว มาดู -2 กัน  จำนวนที่เราต้องการง่ายๆ เราก็เอาตำแหน่งที่มีค่ามากสุดตั้ง - ด้วยตำแหน่งที่มีค่าน้อย นั่นเอง แล้ว -2 มากจากไหน?
//มันก็คล้ายๆกับ +2 นั่นแหละครับ อย่าลืมว่ามันจะเริ่มตัวนับตำแหน่งตัวที่เราค้นหามาด้วยใช่ไหมครับ มันก็จะตัดเอาตัวที่เราไม่ต้องการมาด้วยเช่น
// http://www.youtube.com/watch?v=T6eWkqM7D-E&feature=related ถ้าไม่มี -2 ผลที่ออกมาก็จะได้ T6eWkqM7D-E&f ซึ่งไม่ใช่ id วีดีโอแน่นนอน
}


}
?>
<img src="http://img.youtube.com/vi/<?=$_REQUEST['pic_id'];?>/3.jpg"/> <!--นี้จะเป็นการเรียกรูปภาพมาใช้งานครับ ส่วนชื่อไฟล์รูป ก็จะมี 0-3 ครับ ถ้า 0 นิก็รูใหญ่ครับ -->
<form action="" method="get"  enctype="multipart/form-data" name="form1">
<input name="text" type="text" size="80">
<input name="Ok" type="submit" value="Ok"><input name="pic_id" type="hidden" value="<?=$_REQUEST['pic_id'];?>">
</form>
<!--เออลืมบอกไป วิดีโอก็สามารถ ใช้ id ตัวเดียวกันนี้ได้นะครับ-->
<iframe width="420" height="315" src="http://www.youtube.com/embed/<?=$_REQUEST['pic_id'];?>" frameborder="0" allowfullscreen></iframe>
<!--ผมอาจจะอธิบาย งง ไปหน่อย ยังไงก็ลองเล่นดูครับ 21 ตุลา 2011 2:16-->


ผิดถูกยังไงก็ขออภัยด้วยนะครับ



Tag : PHP







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2011-10-21 02:25:57 By : WawdoG View : 4258 Reply : 4
 

 

No. 1



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



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


Code (PHP)
<?
$text=$_REQUEST['text'];

if(!empty($_REQUEST['Ok'])){

$strat=strpos ( $text, "v=" ); 

$length=strpos ( $text, "&" );

if(($length<$strat) or ($length ='')){


$_REQUEST['pic_id']= substr ( "$text", $strat+2);

}else{

$_REQUEST['pic_id']=substr ( "$text", $strat+2, $length-$strat-2 );

}


}
?>
<img src="http://img.youtube.com/vi/<?=$_REQUEST['pic_id'];?>/3.jpg"/> 
<form action="" method="get"  enctype="multipart/form-data" name="form1">
<input name="text" type="text" size="80">
<input name="Ok" type="submit" value="Ok"><input name="pic_id" type="hidden" value="<?=$_REQUEST['pic_id'];?>">
</form>

<iframe width="420" height="315" src="http://www.youtube.com/embed/<?=$_REQUEST['pic_id'];?>" frameborder="0" allowfullscreen></iframe>



อันนี้ไม่มีคำอธิบายครับ กลัวเพื่อนๆ งง






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-10-21 02:29:20 By : WawdoG
 


 

No. 2



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

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

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

เยี่ยมครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2011-10-21 06:39:59 By : webmaster
 

 

No. 3



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



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


เพิ่มเติมค่ะ

Code (PHP)
$strat=strpos ( $clip_url, "v=" ); 		
$length=strpos ( $clip_url, "&" );
if(($length<$strat) or ($length =='')){
	$id_youtube= substr ( "$clip_url", $strat+2);
	$length2=strpos ( $id_youtube, "&" );
	if($length2 != ''){
		$id_youtube=substr ( "$id_youtube", 0, $length2 );   
                               //ในกรณีที่มี & อยู่ก่อนและหลัง  id youtube เช่น   http://www.youtube.com/watch?NR=1&v=94-i2Hwt_Go&feature=endscreen
	}	
}else{
	$id_youtube=substr ( "$clip_url", $strat+2, $length-$strat-1 );
	$length2=strpos ( $id_youtube, "&" );
	if($length2 != ''){
		$id_youtube=substr ( "$id_youtube", 0, $length2 );         
                                // ในกรณีที่มี & อยู่หลัง id youtube 
	}	
}


ไม่แน่ใจว่าถูกต้องมั้ย ช่วยชี้แนะเพิ่มเติมด้วยค่ะ ^^


ประวัติการแก้ไข
2013-02-28 11:35:57
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-28 11:33:35 By : JuNiorWP
 


 

No. 4



โพสกระทู้ ( 4,169 )
บทความ ( 7 )

Hall of Fame 2012

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


สอบถามนิดนึง จากรูป
erg
ตัวอย่าง mv นี่คือรูป tmp ใช่มั้ยครับ
เอ....แต่จะอัพโหลดยังไงให้มัน capture clip vdo อัตโนมัติ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-02-28 12:24:57 By : Ex-[S]i[L]e[N]t
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : การดึงรูป Thumb Thumbnail ของ Clip video ใน Youtube ของดีเอามาแชร์ให้ครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 00
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 อัตราราคา คลิกที่นี่