【问题标题】:How to go about making a playlist that checks over and over again?如何制作一个反复检查的播放列表?
【发布时间】:2014-03-27 00:45:55
【问题描述】:

我正在开发一个应用程序,该应用程序允许用户不受时区限制并彼此同步观看电影。但问题是这样的。

我想我将不得不使用 AJAX 来检查数据库或任何我的解决方案。

这里使用JavaScript...

在页面加载时,应用程序会进行大量数学运算,以确保他们观看的电影时长完全相同,即使他们刷新页面也是如此。所以一切都适用于至少 1 个视频。我设置了两个变量。电影开始的时间和开始时间的分钟数。例如:

说小熊维尼从上午 10:30 开始

var movieH = 10;
var movieM = 30;

还有一堆数学计算出来的。这就是问题所在。

我需要在外部存储所有这些时间的东西,无论是 PHP、MySQL、XML 还是其他。喜欢:

0:00 老虎电影 1:30 Live Free Die Hard 2:45 创世记 4:00 重力 6:00 灰姑娘

(etc) 全部以 24 小时制运行,意思是 0:00-24:00

所以,像这样......

  1. 页面被访问
  2. JavaScript 启动
  3. 将电影的第一个开始时间加载到这些变量中
  4. 算算吗
  5. 电影播放
  6. 电影结束
  7. 转到一个新函数并再次检查时间并获取下一个函数的开始时间
  8. 播放 document.getElementById('player').src 对该电影路径的更改
  9. 数学又做完了
  10. 电影播放
  11. 电影结束
  12. 而且,不断重复同样的过程。

我不能真正提交代码,但我提交的代码是必不可少的,而且确实是所有需要的。

【问题讨论】:

  • 这感觉更像是请求某人为您编写或至少设计您的应用程序,而不是适合此站点的特定问题。你最好找一个可以花钱帮助的人,或者启动一个开源项目来合作。
  • 不,我已经把所有东西都写好了,而且它变得相当复杂,尤其是在设计方面。这只是一个特定的方面。我可以编写所有 JavaScript 和 AJAX 的所有代码,但就存储播放列表的时间而言,这很奇怪。我只需要为这两个变量提供一些东西来检查并从数据库中导入一些东西。
  • 真的是一个小而愚蠢的方面。
  • 我将手动将所有内容放入其中。我的意思是在理论上如何完成此操作的一些指导或想法。我可以使用 XML Schema 并为其分配元素,然后将一个添加到第一个使用的元素。或者看,我不知道从哪里开始,我整个星期都在试图思考如何解决这一方面。一切正常我只需要它来更新或通过数据库电影的一般想法。不是答案...如果我的工作为我完成,那将是非常糟糕的
  • 那我不明白这个问题。您是在问数据库应该是什么样子?如何编写访问数据库的代码?如何将其构建到我们从未见过的应用程序中?

标签: javascript php mysql xml


【解决方案1】:

首先,说不能提交代码然后要求我们为您设计一些东西并提供代码可能有点冒犯。

也就是说,不清楚您到底要什么?您是否在问如何建立一个数据驱动的网站?对于 SO 问题,范围太大。您是在问如何使用 Ajax 查询数据库吗?你有什么设置?

如果您连接了数据库,那么它很简单。您可以将移动持续时间输出到 PHP 中的不可见 div:

$movies = [

["name" => 'Tiger Movie', "duration" => "1:30"],
["name" => 'Die Hard', "duration" => "1:50"]

] 

echo "<div id='durations' style='display: none;'>";
foreach($movies as $movie)
{
    print("<div class='movie'><span class='name'>". $movie['name'] . "</span><span class='duration'>" . $movie['duration'] . "</span></div>";
}
echo "</div>";

然后您可以使用 javascript 收集页面加载的值(示例使用 jQuery):

var movies = $(".movie");
var moviesArray = new Array();

movies.each(function() {
        moviesArray.push({name: $(".name", this).text(), duration: $(".duration", this).text()});
});

console.log(moviesArray);

或者,如果你想使用 AJAX(示例使用 jQuery):

var data = "movies=TigerMovie";
    $.ajax({
      type: "POST",
      url: "getmovies.php",
      data: data,
      success: function(data) {
           alert(data);
      },
      dataType: dataType
    });

在你的 PHP 文件中getmovies.php:

if(isset($_POST['movies'])
{ 
      $movie = $_POST['movies'] //not escaped, as I'm trying to be quick, but always escape AJAX calls
      $mysqli = new mysqli(CONN,USER,PASS,DB);

      $stmt = $mysqli->prepare("SELECT duration FROM movies WHERE name=?");
      $stmt->bind_param('s', $movie);
      $stmt->execute();
      $stmt->bind_result($duration);
      $stmt->fetch();
      $stmt->close();

      echo $duration;

}

【讨论】:

  • 没有完全符合我的代码,正如预期的那样,但你给了我一个想法,而不是仅仅修复我的代码。只是当我有一个原创想法时,我更喜欢让人们向我抛出有助于产生更好更原创想法的想法,而不是仅仅说“我如何使用我已经编写的代码来做到这一点”。此外,我不希望其他人窃取我辛苦赚来的工作。我的意思是一旦它完成,上传和一切都好,因为我有上传日志和我系统中的所有东西,可以让我证明我写了它。您没有完全回答我的问题,但仍然给我留下了大致的思路。
猜你喜欢
  • 2016-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-06-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-18
相关资源
最近更新 更多