Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/440.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用jquery滑块时,单个视频本身不会显示在屏幕上_Php_Javascript_Jquery - Fatal编程技术网

Php 使用jquery滑块时,单个视频本身不会显示在屏幕上

Php 使用jquery滑块时,单个视频本身不会显示在屏幕上,php,javascript,jquery,Php,Javascript,Jquery,这里有一个应用程序,我在基本jquery滑块中使用jwplayer: 基本jquery滑块的信息如下: 这就是我发现的,如果一个滑块包含多个视频,那么它会显示滑块,但是如果一个滑块只有一个视频,它不会显示视频或滑块 现在奇怪的是,如果我用视频替换图像,那么如果我有一个图像,它就可以工作,因为它不显示滑块,而是显示图像,这很好。但我的问题是如何对视频做同样的事情 下面是带图像的滑块演示: 下面是视频和滑块的代码: $vidquery = "SELECT s.SessionId, q.Qu

这里有一个应用程序,我在基本jquery滑块中使用jwplayer:

基本jquery滑块的信息如下:

这就是我发现的,如果一个滑块包含多个视频,那么它会显示滑块,但是如果一个滑块只有一个视频,它不会显示视频或滑块

现在奇怪的是,如果我用视频替换图像,那么如果我有一个图像,它就可以工作,因为它不显示滑块,而是显示图像,这很好。但我的问题是如何对视频做同样的事情

下面是带图像的滑块演示:

下面是视频和滑块的代码:

     $vidquery = "SELECT s.SessionId, q.QuestionId, v.VideoId, VideoFile
                FROM Session s
                INNER JOIN Question q ON s.SessionId = q.SessionId
                INNER JOIN Video_Question vq ON q.QuestionId = vq.QuestionId
                INNER JOIN Video v ON vq.VideoId = v.VideoId
                WHERE s.SessionId = ?";

    $vidqrystmt=$mysqli->prepare($vidquery);
    // You only need to call bind_param once
    $vidqrystmt->bind_param("i",$session);
    // get result and assign variables (prefix with db)
    $vidqrystmt->execute(); 
    $vidqrystmt->bind_result($vidSessionId,$vidQuestionId,$vidVideoId,$vidVideoFile);

        $arrVideoFile = array();

    while ($vidqrystmt->fetch()) {
    $arrVideoFile[ $vidQuestionId ][] = basename($vidVideoFile);
  }

    $vidqrystmt->close(); 


?>
<form action='results.php' method='post' id='exam'>


<?php
                //start:procedure video
        $vid_result = '';
        if(empty($arrVideoFile[$key])){
          $vid_result = '&nbsp;';
        }else{

            ?>


 <div id="banner-video_<?php echo $key; ?>">
 <ul class="bjqs">
<?php
$i = 0;
foreach ($arrVideoFile[$key] as $v) { ?>
<li><div id="myElement-<?php echo $key.'-'.$i; ?>">Loading the player...

<script type="text/javascript">


jwplayer("myElement-<?php echo $key.'-'.$i; ?>").setup({
    file: "<?php echo 'VideoFiles/'.$v; ?>",
    width: 480,
    height: 270
});

<?php $i++; ?>
</script>

</div>
</li>
<?php } ?>
</ul>
</div>

         <script type="text/javascript">

jQuery(document).ready(function($) {

         $('#banner-video_<?php echo $key; ?>').bjqs({
            animtype      : 'slide',
            height        : 300,
            width         : 700,
            responsive    : true,
            randomstart   : false,
            automatic : false
          });  
          });

          </script>

<?php

        }
        //end:procedure video
?>

</div>



</form>
$vidquery=“选择s.SessionId、q.QuestionId、v.VideoId、VideoFile
来自会话s
s.SessionId=q.SessionId上的内部连接问题q
内部连接视频\u q.QuestionId=vq.QuestionId上的问题vq
vq.VideoId=v.VideoId上的内部连接视频v
其中s.SessionId=?”;
$vidqrystmt=$mysqli->prepare($vidquery);
//您只需要调用bind_param一次
$vidqrystmt->bind_参数(“i”,$session);
//获取结果并分配变量(前缀为db)
$vidqrystmt->execute();
$vidqrystmt->bind_result($vidSessionId、$vidQuestionId、$VidVidVideoID、$VideoFile);
$arrVideoFile=array();
而($vidqrystmt->fetch()){
$arrVideoFile[$vidQuestionId][]=basename($vidideofile);
}
$vidqrystmt->close();
?>

我想说的是,在你的例子中,它看起来像是你所有的滑块,它将一个图像或视频滑动到上面,并显示下一个或上一个,但是如果你只有一个项目,为什么不完全跳过所有这些呢

您有一个数组:
$arrVideoFile

您可以使用
count($arrVideoFile)
以获取数组中的总值

所以

if(count($arrVideoFile)!=0 | |$arrVideoFile)!=1)
{
//做你贴在上面的东西
}
其他的
{
//if(array==0)可能会显示默认图像
//如果(array==1),让我们展示一下
//如果图像显示如果视频显示或在您的情况下

//您是否在填充$arrVideoFile之前将其初始化为数组?例如:
$arrVideoFile=array();
脚本是否产生任何错误?@starshine531抱歉,没有看到您的评论,脚本没有任何错误,我确实有
$arrVideoFile=array()
,我更新了代码,以表明这并不能完全解决您的问题,但为什么不检测它是否是一个对象,而不是将其放在滑块中?@Goddard如果您知道如何编写此代码,那么我将非常高兴以这种方式执行,并非常感谢
if(count($arrVideoFile) != 0 || $arrVideoFile) != 1)
{
    //do the stuff you pasted above
}

else
{
    //if(array == 0) maybe show a default image

    //if(array == 1) lets just show that
        //if image show <img> if video show <object> or in your case 
        //<div id="myElement-<?php echo $key.'-0'; ?>"></div>
}