sexcms后台上传视频正常,但前台网页上传视频报500错误 解决方法

电脑PC端:http://video.supermindsoft.com/

处理总结:
1.数据库还原成旧的。
2.C:\wwwroot\video.supermindsoft.com\app\models\csdjskins.php 中 视频属性返回为空就行。
//获取视频属性
function djinfo($dir)
{
//if(!file_exists($dir)) return '';
//if(substr(php_uname('s'),0,7)=="Windows"){ //LINUX系统暂时不支持
//$player= new COM("WMPlayer.OCX");
//$media = $player->newMedia($dir);
//$time = $media->duration; //获取持续时间
//@$s_bitrate = $media->getItemInfo(Bitrate); //获取位速
//@$size=$media->getItemInfo(FileSize);//大小 
//$time = sprintf("%01.0f", $time);
//$s_duration = strftime("%H:%M:%S",$time-28800);
//$s_bitrate = str_replace(substr($s_bitrate,-3),"",$s_bitrate)." Kbps";
//$s_size=$this->formatsize($size);
//ob_flush();flush();
//return $s_size.'|'.$s_bitrate.'|'.$s_duration;
//}else{
return '';
//}
}

分析过程:

1.分析了文件上传都正常,服务器设置也正常。

js文件上传示例Uploadify小黄人软件测试OK.rar

2.最后分析HTTP请求

HTTP/1.1 500 Server Error
Date: Wed, 26 Apr 2017 03:16:49 GMT
Server: Microsoft-IIS/6.0
X-Powered-By: ASP.NET
Content-Length: 116


PHP Fatal error:  Class 'COM' not found in C:\wwwroot\video.supermindsoft.com\app\models\csdjskins.php on line 3739


找到该行
line 3739: $player= new COM("WMPlayer.OCX");


到网上找wmplayer.ocx下载 没找到


直接注释 看是否有效?无效数据。


因为源码是utf-8格式,在windows搜索内容关键词是查不出来的。所以我把djinfo先注释掉,操作看哪里报错,就知道是哪里调用了。

PHP Fatal error: Call to undefined method CsdjSkins::djinfo() in C:\wwwroot\video.supermindsoft.com\app\controllers\user\upload.php on line 178 

upload_save() {  //多文件上传


显示/attachment/dance/201704/26/20170426141619_46933.mp4=sex==sex==sex=

上传视频成功,问题解决了。


3.但是点上传保存显示"抱歉,视频发表失败,请联系管理员"


查到

C:\wwwroot\video.supermindsoft.com\app\controllers\user\video.php
add_save()这个函数



发现是插入数据库为0


                $res=$this->CsdjDB->get_insert('dance',$video);
                if($res>0){


                       if($daycount < Cion_Num && Cion_Upvideo>0 && User_DjFun==2){  //奖励金币
                              $title.=',系统奖励给您'.Cion_Upvideo.'个金币';
                              $this->db->query("update ".CS_SqlPrefix."user set CS_Cion=CS_Cion+".Cion_Upvideo." where CS_ID='".$this->session->userdata('cs_id')."'");
                       }


                       //写入动态
                       $dt['CS_CID']=1;
                       $dt['CS_DID']=$res;
                       $dt['CS_YID']=$video['CS_YID'];
                       $dt['CS_User']=$this->session->userdata('cs_name');
                       $dt['CS_Title']=$video['cs_name'];
                       $dt['CS_AddTime']=date('Y-m-d H:i:s');
                       $this->CsdjDB->get_insert('dt',$dt);
                       $this->session->unset_userdata('token');
                       $this->CsdjSkins->Msg_url('恭喜您,视频发表成功'.$title.'!',$url); 


                }else{
                       $this->CsdjSkins->Msg_url('抱歉,视频发表失败,请联系管理员!','javascript:history.back();'); 
                }
                
  
  
     继续查底层           
C:\wwwroot\video.supermindsoft.com\app\models\csdjdb.php
        function get_insert ($table,$arr)  //增加
{
           if($arr){
       $this->db->insert($table,$arr);
return $this->db->insert_id();
     }else{
return false;
     }
}
    
    这是一个标准函数,那可能是参数问题。table表   arr数组
    
   
确定为array数组video的问题                 
   发送cs_name=%C0%DA+%C1%D6%C9%ADsssssssss&cs_pic=&cs_cid=1&cs_tid=0&cs_tags=&cs_cion=1&cs_singer=&gslist=1&zm=P&cs_singerid=&cs_content=&cs_playurl=%2Fattachment%2Fdance%2F201704%2F27%2F20170427101947_45101.mp4&cs_downurl=&cs_dx=&cs_yz=&cs_sc=&token=78d39a940afd977663749a124c328493


cs_name=>磊 林森sssssssss
cs_cid=>1
cs_tid=>0
cs_tags=>
cs_cion=>1
cs_singerid=>13
cs_singer=>
cs_content=>
cs_playurl=>/attachment/dance/201704/27/20170427102801_57622.mp4
cs_dx=>
cs_yz=>
cs_sc=>
cs_pic=>
CS_DownUrl1=>/attachment/dance/201704/27/20170427102801_57622.mp4
CS_UID=>111
CS_User=>xhrrj
CS_AddTime=>2017-04-27 10:28:08
CS_YID=>1
             
与数据库对比,发现CS_ID是空的,数据库设置不对,CS_ID应该是自动增加的。
原因:我当时采集时,使用数据库方式入库,插入数据库时,修改了表结构,这奇怪了。不管它,数据库还原成旧的就行。


                
                
                
                
                


include("D:\wwwroot\Authen\wmplayer.ocx");










  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小黄人软件

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值