您好,我正在制作jQuery YouTube搜索和显示网络应用程序,我需要使用PHP将特定视频的链接发送到数据库。
在应用程序中,用户搜索视频,并使用“id”变量将该视频的唯一代码插入到设置的YouTube链接中。我想捕获完整的链接(包括唯一的id)并将其放入数据库而无需打开新页面(我认为这就是AJAX的工作方式)。
以下是一些类似问题的链接,但它们对我没用。 (getting youtube video id the PHP,How do I find all YouTube video ids in a string using a regex?,https://stackoverflow.com/questions/19977278/how-to-get-php-data-in-javascript,Data transfer from JavaScript to PHP,http://www.webdeveloper.com/forum/showthread.php?249863-pass-jquery-value-to-php-variable(对于大量的链接感到抱歉,Stack告诉我如果它们相似而包含它们,不起作用))
到目前为止,这是使其工作的代码。
<script type="text/javascript">
//on thumbnail click
$videoDiv.click(function(e) {
displayVideo(entry.media$group.yt$videoid.$t, entry.title.$t);
});
//Display the video
function displayVideo(id, title) {
//embed player
swfobject.embedSWF('http://www.youtube.com/e/' + id + '?enablejsapi=1&playerapiid=ytplayer&autoplay=1',
'video-placeholder', '544', '408', '9.0.0', null, null, { allowScriptAccess: "always" },
{ id: "youtubevideo" } );
}
</script>
显然,这不是整个功能,但希望它应该足够了。
请帮助我,我已经没有地方可以看了。
嗨Niklas,
感谢您回答我,我已经尝试过了,事实证明我的代码有点复杂。
我的大学项目还需要将信息发送到视频所在的页面,目前我在一个页面上有用户的表单以及搜索YouTube的代码并显示用户的信息以及视频下一个(外部)页面。
不幸的是,AJAX仍然是我尚未学习的语言之一,所以你链接我的文档没有多大意义。
我的代码非常复杂,因为它使用了YouTube API以及JavaScript,jQuery和PHP。用于搜索YouTube的主要js文件,一旦用户点击缩略图,它就会启动displayVideo功能,该功能还包含上一页的信息。
我无法在选择视频后将用户重定向到新页面,只是为了将ID转换为PHP,因为当用户重定向回YouTube表单时,这会擦除第一个表单中的数据。 / p>
我希望你能帮助我。
答案 0 :(得分:0)
<强>答案强>
哎呀,知道我明白你在问什么。你会做这样的事情:<script type="text/javascript">
$(function() {
//on thumbnail click
$videoDiv.click(function(e) {
var videoURL = displayVideo(entry.media$group.yt$videoid.$t, entry.title.$t);
$.post('url-to-your-php-file', {videoURL: videoURL}, function(response) {
// Do stuff with the response given/echoed by the PHP file
});
});
//Display the video
function displayVideo(id, title) {
//embed player
var videoURL = 'http://www.youtube.com/e/' + id + '?enablejsapi=1&playerapiid=ytplayer&autoplay=1';
swfobject.embedSWF(videoURL,
'video-placeholder', '544', '408', '9.0.0', null, null, { allowScriptAccess: "always" },
{ id: "youtubevideo" } );
return videoURL;
}
});
</script>
希望这会有所帮助并祝你好运!
在修改问题之前回答
我不会为你编写代码,但你的想法是对的,我会给你一些可能有帮助的链接。您需要对PHP文件进行AJAX调用,该文件会保存到数据库的链接。
AJAX致电
你正在使用jQuery,它使AJAX调用变得非常容易。看看jQuery .ajax() documentation。虽然在这种情况下它是一个非常小而且“非高级”的调用你需要制作,但速记包装函数.post()对你来说很有用。
检索PHP中的链接
之后,您可以使用全局$_POST variable检索PHP中的链接。
添加指向数据库的链接
要将其添加到数据库,我建议使用PHP PDO library进行连接和查询。
希望这会有所帮助,并且毫不犹豫地询问您是否有任何想法!