首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >创建一个搜索表单,该表单将从用户那里获取输入,并显示视频的弹出。

创建一个搜索表单,该表单将从用户那里获取输入,并显示视频的弹出。
EN

Stack Overflow用户
提问于 2018-08-13 00:51:14
回答 1查看 183关注 0票数 0

我正在编写一个搜索表单,它将从用户那里获取输入,并显示视频的弹出,用户输入和视频名称将是相同的。视频将在目录中,即1.mp4,2.mp4等。

现在我的编码只用于显示链接,如果视频名称和搜索文本字段输入相同,则视频弹出应该是打开的。我不知道如何合并视频模式/弹出将自动播放。请帮帮忙。提前谢谢。

这是我的代码

代码语言:javascript
运行
AI代码解释
复制
<!DOCTYPE html>
<html>
<head>
    <title>Find Your Seat</title>

</head>
<body>


    <h2>find your seat</h2>
    <form method="post">

        <input type="text" name="search" id="search" placeholder="type your seat id">

        <button type="submit" name="submit" id="submit">Enter</button>

    </form>


<?php

if(isset($_POST['submit'])) {

    $filename =  $_POST['search'];

    $dir = "videos";

    // Open a known directory, and proceed to read its contents
    if (is_dir($dir)) {
        if ($dh = opendir($dir)) {

            while (($file = readdir($dh)) !== false) {

                if($file == $_POST['search'])

                    {

                        echo('<a href="'.$dir . $file.'">'. $file .'</a>'."\n");
                    } 

            }
            closedir($dh);
        }
    }

}


?>


</body>
</html>

表单的输出是

例如,需要输出

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-08-13 01:39:34

根据您的所需输出的图像,这是一个Youtube视频嵌入,它不需要文件显示在您的服务器目录中,只需插入Youtube视频链接的iframe即可完成。一个例子是:

代码语言:javascript
运行
AI代码解释
复制
<iframe width="854" height="480" src="https://www.youtube.com/embed/youtube_video_id" frameborder="0" allow="autoplay; encrypted-media" allowfullscreen></iframe>

但是,如果您希望从您的目录中加载视频。然后可以使用video元素。例如:

代码语言:javascript
运行
AI代码解释
复制
...
echo('<video src="src_to_your_video.mp4" height="500" width="500" controls />');
...

模态对话

如果希望在模态对话框中获得这些结果,则可以在同一页面上使用AJAX发出请求,并将结果显示为弹出。像这样的东西应该可以使用jQuery。

你的JavaScript

代码语言:javascript
运行
AI代码解释
复制
//Provided you have the jQuery libary loaded to your script

$("#seat_form").submit(
function(e)
{
//Prevent the form from reloading or submitting
e.preventDefault();
//Get the user input value
var search = $("#search");

$.ajax(
{
   method:"POST",
   url: "get_video.php",
   data: {search:search.val()},
   success:function(response)
   {
      //Set the inner HTML of the modal to the response
      $("#modal_body").html(response)
      
      // Fade in the modal to show popoup
      $("#modal").fadeIn();
   },
   error: function()
   {
     //Handle your errors here in case the requests is not successful
   }
})

});

//Make the modal close when the close is clicked

$("#close").click(function()
{
    $("#modal").fadeOut()
})

你的CSS

代码语言:javascript
运行
AI代码解释
复制
#modal
{
   display:none;
   position:fixed;
   background:rgba(0,0,0,.7);
   width:100;
   left:0;
   top:0;
   bottom:0;
}

#close
{
   color:white;
   position:absolute:
   font-size:1em;
   right:10px;
   top:10px;
   cursor:pointer;
}

#modal_body
{
   width:100%;
   overflow:hidden;
}

你的HTML

代码语言:javascript
运行
AI代码解释
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<!DOCTYPE html>
<html>
<head>
    <title>Find Your Seat</title>

</head>
<body>


    <h2>find your seat</h2>
    <form method="post" id="seat_form">

        <input type="text" name="search" id="search" placeholder="type your seat id">

        <button type="submit" name="submit" id="submit">Enter</button>

    </form>
<!-- Define your modal HTML -->
<div id="modal">
<span id="close">&times;</span>
<div id="modal_body"></div>
</div>
</body>
</html>

您的PHP (get_video.php)

代码语言:javascript
运行
AI代码解释
复制
<?php
//First confirm if the request is coming from a POST, and then check if it is AJAX
if(isset($_POST) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest")
{
if(isset($_POST['search'])) {

    $filename =  $_POST['search'];

    $dir = "videos";

    // Open a known directory, and proceed to read its contents
    if (is_dir($dir)) {
        if ($dh = opendir($dir)) {

            while (($file = readdir($dh)) !== false) {

                if($file == $_POST['search'])

                    {

                        echo("<video src='$dir.$file' height='500' width='500' controls />");
                    } 

            }
            closedir($dh);
        }
    }
else
{
   echo 'Error: please input a search string';
}

}


?>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51818503

复制
相关文章
Java中使用Jackson,对JSON和对象进行转换
如果是单独加这个依赖包,使用上面的即可。如果是使用Springboot开发项目,那么这个依赖包是直接封装好的,不用单独加了,自己可以使用工具进行查看,看看是否有这个依赖包就行了,如下所示:
别先生
2020/03/19
2.9K0
如何使用XLMMacroDeobfuscator对XLM宏进行提取和反混淆处理
XLMMacroDeobfuscator一款针对XLM宏的安全工具,该工具可以帮助广大研究人员提取并解码经过混淆处理的XLM宏(Excel 4.0宏)。该工具可以使用一个内部XLM模拟器来解析宏文件,而且无需完整执行目标宏代码。
FB客服
2021/10/11
1.7K0
如何基于jackson动态序列化指定字段
把对象序列化为json字符串输出的库很多,本文我们来看如何基于jackson动态控制哪些属性需要进行序列化。
加多
2020/08/11
2K0
扩展序列化(jackson module)
Module 接口可以自定义实现一些三方类,无默认构造函数的对象,或自定义一些序列化实现。
乐事
2021/07/22
1.4K0
Jackson - LocalDateTime序列化探索
在Java开发中,涉及Json序列化及反序列化的情况有很多,最常见的就是SpringBoot/SpringCloud项目中HTTP/Rest接口的传参。其中经常会涉及到时间类型LocalDateTime的序列化和反序列化,这里经常会因为序列化失败,导致接外部接口调用或Feign调用失败。
夹胡碰
2021/06/17
3.8K0
Jackson - LocalDateTime序列化探索
SpringCloud - Jackson序列化LocalDateTime
SpringCloud开发中,Jackson作为默认的序列化器,在跨服务调用过程中,序列化LocalDateTime时常发生格式不一致问题,下面将对SpringCloud中Jackson的序列化方式及源码进行分析。
夹胡碰
2021/06/17
3K0
SpringCloud - Jackson序列化LocalDateTime
使用jackson进行json数据格式转换
private static final JsonFactory factory = new JsonFactory(); StringWriter jsonOut = new StringWriter(1000); JsonGenerator generator = factory.createGenerator(jsonOut); generator .writeStartObject(); generator.writeStringField("article","交易提醒"); generato
用户3003813
2018/09/06
1.5K0
如何使用cdn对网站进行加速
今天抽空整理下网站,时间太久,历史文件太多,删除了一些无用的垃圾,更换了服务器,调整了cdn,鼓捣2天,更换好目前感觉良好。
霍常亮
2020/07/19
17K0
如何使用cdn对网站进行加速
利用单细胞数据对bulk进行反卷积
buk-RNAseq和sc-RNAseq联合分析在许多文章中已经屡见不鲜了,这周介绍两种利用单细胞数据对bulk进行反卷积方法的基本实现
生信菜鸟团
2023/10/25
5.8K0
利用单细胞数据对bulk进行反卷积
jackson序列化时区问题
排查发现是Jackson指定时区问题,原先用的GMT+8,但数据库是Asia/Shanghai
阿超
2023/02/20
1.1K0
jackson序列化时区问题
使用java对与具有共享对象的数据进行序列化
import java.io.Serializable; import java.time.LocalDate;
用户2436820
2018/09/05
1.6K0
使用java对与具有共享对象的数据进行序列化
如何使用Nginx对Artifactory进行http应用
在我们日常使用高可用集群时,都会使用到负载均衡工具对多个节点的负载进行转发。这里就不得不提到我们常用的一个负载均衡工具Nginx,Nginx官方提供的免费版本功能相对简单,大部分情况下我们都是用其进行负载均衡,对于应用的状态主要是依赖于其他的监控工具。如果对于小型的团队来说,部署专门的监控工具还需要资源,使用Nginx对应用进行探活监控可以节约这部分成本。
JFrog杰蛙科技
2021/06/18
1.4K0
如何使用Nginx对Artifactory进行http应用
CA2321:请勿使用 SimpleTypeResolver 对 JavaScriptSerializer 进行反序列化
使用 System.Web.Script.Serialization.SimpleTypeResolver 初始化后,调用或引用了 System.Web.Script.Serialization.JavaScriptSerializer 反序列化方法。
用户4268038
2022/02/20
1.3K0
Jackson 之 LocalDateTime 序列化与反序列化
在 Java 8 中对 LocalDateTime、LocalDate 的序列化和反序列化有很多种操作
玖柒的小窝
2021/10/31
5K0
[Office] 如何对Excel二维表中的所有数值进行排序
在Excel中,如果想对一个一维的数组(只有一行或者一列的数据)进行排序的话(寻找最大值和最小值),可以直接使用Excel自带的数据筛选功能进行排序,但是如果要在二维数组(存在很多行和很多列)的数据表中排序的话,就要巧用函数来实现了。
轻舞飞扬SR
2021/02/24
10.4K0
[Office] 如何对Excel二维表中的所有数值进行排序
Jackson 反序列化原理浅析
在练习使用Axios传post时发现默认使用的是json传参,而servlet提供的getParameter(String s)方法无法解析这种语法,因此了解到Jackson,对其的序列化与反序列化原理很感兴趣,所以浅析一下其原理。
MashiroT
2022/10/28
1.1K0
Jackson 反序列化原理浅析
Jackson 反序列化 Map 集合
仅仅使用 objectMapper.readValue(xxxxx, Map.class) 时,如果原始集合使用了泛型,idea会给出警告 未检查的赋值: 'java.util.Map' 赋值给 'java.util.Map<java.lang.String,java.lang.String>'
MashiroT
2022/10/28
8830
如何通过Jackson注解@JsonTypeInfo解决多态反序列化问题?
Jackson是Spring Boot(SpringBoot)默认的JSON数据处理框架,但是其并不依赖于任何的Spring 库。有的小伙伴以为Jackson只能在Spring框架内使用,其实不是的,没有这种限制。
码农架构
2021/06/13
5.6K0
如何通过Jackson注解@JsonTypeInfo解决多态反序列化问题?
设置Springboot返回jackson数据序列化
LocalDateTime格式化 使用下面的配置相当于全局配置就不需要给字段添加@JsonFormat(pattern = DateUt.YYYY_MM_DD_HH_MM_SS) 如果个别字段需要不同的配置可使用@JsonFormat(pattern = DateUt.YYYY_MM_DD),@JsonFormat会优先使用,反序列化亦可使用@JsonFormat注解
FHAdmin
2021/08/25
8810
点击加载更多

相似问题

Jackson:使用默认(反)序列化程序

11

反卷积二维阵列

14

如何使用Jackson对Enum进行反序列化?

297

(反)用Jackson序列化Spring

11

使用Jackson反/序列化枚举器类型

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文