小弟最近想做一個電影網(wǎng)站玩玩,所以研究了一下影視開源程序,在網(wǎng)上找了幾個比較好的開源程序:馬克斯影視系統(tǒng)MAXCMS、飛飛影視系統(tǒng)PPVOD、光線影視管理系統(tǒng)GXCMS、天空網(wǎng)絡(luò)電影系統(tǒng)SKYUC等,這幾個也是站長下載頻道推薦的幾款。這幾個我都先后進(jìn)行了測試,不過我喜歡php+mysql,所以就沒有選擇asp的MAXCMS,又因?yàn)槟0鍐栴}最后選擇了使用光線。
通過各項(xiàng)測試,光線cms基本上沒有什么大的問題,不過等到我準(zhǔn)備大干一場的時候卻發(fā)現(xiàn)光線cms只支持百度影音的資源,對于快播資源,土豆等資源不支持,讓我很郁悶,因?yàn)樾〉茉谄綍r看電影的時候喜歡用快播,而且百度最近搞了個百度影音瀏覽器和播放器綁定,用著實(shí)在很不爽啊!該怎么辦呢?去官網(wǎng),沒找到答案,官方不愿意支持其他播放器那也實(shí)在沒辦法;去網(wǎng)上搜索,才發(fā)現(xiàn)很多使用光線cms的同志們都遇到了這個問題,可是沒有真正的解決辦法,最后發(fā)現(xiàn)張曉軍這個牛人的博客有解決方法!哈哈,心花怒放啊!
按照步驟修改代碼、上傳、測試,卻又發(fā)現(xiàn)了一個大問題:涉及到快播資源地址格式問題!!!
如果單獨(dú)添加的播放地址qvod前面沒有其他參數(shù)的格式,比如:qvod://423858029GOKKSHOPGH,這種地址快播可以正常播放,查看播放頁面的播放地址為qvod://423858029;
但是如果添加的地址前面有XXX$參數(shù)的格式,比如:BD高清版$qvod://423858KKSHOP154531212313029,這種地址在快播就放不了,查看播放頁面的獲取的地址為$qvod://423858KKSHOP154531212313029,這種格式快播無法識別;
該怎解決呢?然后我對代碼進(jìn)行了修改,將獲取到的地址前面的$過濾掉,OK解決了!
找到 core /Lib/Action/CmsAction.class.php原代碼,替換為新的代碼,105行到119 行(我的是1.5版本的)。
#FormatImgID_0#
原來的代碼:
if($playarr){
$videoid = $playarr[0];
$videoji = $playarr[1]-1;
$player =' < script language="javascript" type="text/javascript" src="'.C('web_path').'temp/Js/player.js" > < /script>'."n";
if (C('user_pay') && in_array($array['cid'],C('user_paycid'))){
$player .='< div id="GxInstall" > < /div > < div id="GxPlayer" class="Userpay" > < /div >';
}else{
$player .=' < div id="GxInstall" > < /div > < div id="GxPlayer" class="Loading" > < /div > ';
$player .=' < script language="javascript" type="text/javascript" > '."n";
$player .='var $playlist="'.str_replace(array("rn", "n", "r"),'+++',$array['playurl']).'"'."n";
$player .=' < /script>'."n";
$player .=' < script language="javascript" src="'.C('web_path').'views/js/player.js" charset="utf-8" > < /script > ';
}
修改后的代碼:
if($playarr){
$videoid = $playarr[0];
$videoji = $playarr[1]-1;
$player=explode('+++',str_replace(array("rn", "n", "r"),'+++',$array['playurl']));
$player=substr($player[$videoji],stripos($player[$videoji],'$'));// 獲得當(dāng)前頁 視頻地址
$player=str_replace("$","",$player);//過濾快播前面的$
if(C('user_pay') && in_array($array['cid'],C('user_paycid'))){
$player =' < script language="javascript" type="text/javascript" src="'.C('web_path').'temp/Js/player.js" > < /script>'."n";
$player .=' < div id="GxInstall" > < /div > < div id="GxPlayer" class="Userpay" > < /div > ';
}else{
if(stripos($player, 'bdhd://')!==false){ // 如果是百度影音
$player =' < script language="javascript" type="text/javascript" src="'. C('web_path').'temp/Js/player.js" > < /script> '."n";
$player .=' < div id="GxInstall" >
< div id="GxPlayer" class="Loading" > < /div > ';
$player .=' < script language="javascript" type="text/javascript" > '."n";
$player .='var $playlist="'.str_replace(array("rn", "n", "r"),'+++',$array['playurl']).'"'."n";
$player .=' < /script > '."n";
$player .=' < script language="javascript" src="'.C('web_path').'views/js/player.js" charset="utf-8" > < /script > ';
}elseif(stripos($player, 'qvod://')!==false){ //如果是qvod
$player = " < object classid='clsid:F3D0D36F-23F8-4682-A195-74C92B03D4AF' width='610' height='458'
id='QvodPlayer' name='QvodPlayer'
onError=if(window.confirm('請您先安裝QvodPlayer軟件,然后刷新本頁才可以正常播放.')){
window.open(';)}else{self.location=';
} > < PARAM NAME='URL' VALUE='".$player."' > < PARAM NAME='AutoPlay' VALUE='1 ' > < /object > ";
}elseif(stripos($player, ';)!==false&&stripos($player, '.swf')!==false){ //如果是優(yōu)酷、土豆等http 格式
$player =' < embed width="610" height="458" allownetworking="internal" allowscriptaccess="never" src="'.$player.'" quality="high" bgcolor="#ffffff" wmode="transparent" allowfullscreen="true" type="application/x-shockwave-flash" > ';
到這里,光線cms基本上完美支持了百度影音,快播,土豆,優(yōu)酷等資源,哈哈,希望光線cms能夠順應(yīng)民意,開發(fā)支持多種播放的好東西,歡迎大家分享交流,最近優(yōu)化的小站www.kkshop.com.cn,歡迎指導(dǎo)!
申請創(chuàng)業(yè)報(bào)道,分享創(chuàng)業(yè)好點(diǎn)子。點(diǎn)擊此處,共同探討創(chuàng)業(yè)新機(jī)遇!