video-play.php 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334
  1. <?php
  2. session_start();
  3. if (isset($_POST["id"])) {
  4. $id = $_POST["id"];
  5. $name = $_POST["name"];
  6. }
  7. ?>
  8. <!doctype html>
  9. <html class="fixed">
  10. <head>
  11. <!-- Basic -->
  12. <meta charset="UTF-8">
  13. <title>BIM支援網</title>
  14. <meta name="keywords" content="HTML5 Admin Template" />
  15. <meta name="description" content="JSOFT Admin - Responsive HTML5 Template">
  16. <meta name="author" content="JSOFT.net">
  17. <script src="./script/php/clearData.php"></script>
  18. <!-- Mobile Metas -->
  19. <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
  20. <!-- Web Fonts -->
  21. <link href="http://fonts.googleapis.com/css?family=Open+Sans:300,400,600,700,800|Shadows+Into+Light" rel="stylesheet" type="text/css">
  22. <link href="https://vjs.zencdn.net/7.17.0/video-js.css" rel="stylesheet">
  23. <!-- Vendor CSS -->
  24. <link rel="stylesheet" href="assets/vendor/bootstrap/css/bootstrap.css" />
  25. <link rel="stylesheet" href="assets/vendor/font-awesome/css/font-awesome.css" />
  26. <link rel="stylesheet" href="assets/vendor/magnific-popup/magnific-popup.css" />
  27. <link rel="stylesheet" href="assets/vendor/bootstrap-datepicker/css/datepicker3.css" />
  28. <link rel="stylesheet" href="assets/vendor/pnotify/pnotify.custom.css" />
  29. <!-- Specific Page Vendor CSS -->
  30. <link rel="stylesheet" href="assets/vendor/jquery-ui/css/ui-lightness/jquery-ui-1.10.4.custom.css" />
  31. <link rel="stylesheet" href="assets/vendor/bootstrap-multiselect/bootstrap-multiselect.css" />
  32. <link rel="stylesheet" href="assets/vendor/morris/morris.css" />
  33. <link rel="stylesheet" href="assets/vendor/bootstrap-fileupload/bootstrap-fileupload.min.css" />
  34. <!-- Theme CSS -->
  35. <link rel="stylesheet" href="assets/stylesheets/theme.css" />
  36. <!-- Skin CSS -->
  37. <link rel="stylesheet" href="assets/stylesheets/skins/default.css" />
  38. <!-- Theme Custom CSS -->
  39. <link rel="stylesheet" href="assets/stylesheets/theme-custom.css">
  40. <!-- Head Libs -->
  41. <script src="assets/vendor/modernizr/modernizr.js"></script>
  42. <!-- chart.js -->
  43. <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
  44. <!-- DataTable -->
  45. <script src="assets/vendor/jquery/jquery.js"></script>
  46. <link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/1.10.25/css/jquery.dataTables.css">
  47. <script type="text/javascript" charset="utf8" src="https://cdn.datatables.net/1.10.25/js/jquery.dataTables.js"></script>
  48. <script src="./script/js/jquery.redirect.js"></script>
  49. <!-- Icon -->
  50. <link rel="shortcut icon" href="assets/images/favicon.ico" />
  51. <style>
  52. </style>
  53. </head>
  54. <body>
  55. <section class="body">
  56. <!-- start: header -->
  57. <header class="header">
  58. <div class="logo-container">
  59. <div class="banner-txt">BIM支援網</div>
  60. <div class="visible-xs toggle-sidebar-left" data-toggle-class="sidebar-left-opened" data-target="html" data-fire-event="sidebar-left-opened">
  61. <i class="fa fa-bars" aria-label="Toggle sidebar"></i>
  62. </div>
  63. </div>
  64. <!-- start: search & user box -->
  65. <div class="header-right">
  66. <span class="separator"></span>
  67. <ul class="notifications">
  68. <li>
  69. <a href="#" class="dropdown-toggle notification-icon" data-toggle="dropdown">
  70. <i class="fa fa-bell"></i>
  71. <span id="warning-count" class="badge">0</span>
  72. </a>
  73. <div class="dropdown-menu notification-menu">
  74. <div class="notification-title">
  75. <span id="warning-count2" class="pull-right label label-default">0</span>
  76. 警告
  77. </div>
  78. <div class="content">
  79. <ul>
  80. <li id="warning-style" style="display: none;">
  81. <a href="warning.php" class="clearfix">
  82. <div class="image">
  83. <i class="fa fa-warning bg-danger"></i>
  84. </div>
  85. <span class="title">人員進入危險區域</span>
  86. <span class="message">現在</span>
  87. </a>
  88. </li>
  89. <div id="warning-none">No warning</div>
  90. </ul>
  91. </div>
  92. </div>
  93. </li>
  94. </ul>
  95. <span class="separator"></span>
  96. <div id="userbox" class="userbox">
  97. <a href="#" data-toggle="dropdown">
  98. <figure class="profile-picture"> <img src="assets/images/!logged-user.jpg" alt="Joseph Doe" class="img-circle" data-lock-picture="assets/images/!logged-user.jpg" /> </figure>
  99. <div class="profile-info" data-lock-name="John Doe" data-lock-email="johndoe@JSOFT.com"> <span class="name"><?php echo $_SESSION['name'] ?></span> <span class="role">administrator</span> </div> <i class="fa custom-caret"></i>
  100. </a>
  101. <div class="dropdown-menu">
  102. <ul class="list-unstyled">
  103. <li class="divider"></li>
  104. <li> <a role="menuitem" tabindex="-1" href="./script/php/Logout.php"><i class="fa fa-power-off"></i> Logout</a> </li>
  105. </ul>
  106. </div>
  107. </div>
  108. </div>
  109. <!-- end: search & user box -->
  110. </header>
  111. <!-- end: header -->
  112. <div class="inner-wrapper">
  113. <!-- start: sidebar -->
  114. <aside id="sidebar-left" class="sidebar-left">
  115. <div class="sidebar-header">
  116. <div class="sidebar-title"> 導覽 </div>
  117. <div class="sidebar-toggle hidden-xs" data-toggle-class="sidebar-left-collapsed" data-target="html" data-fire-event="sidebar-left-toggle"> <i class="fa fa-bars" aria-label="Toggle sidebar"></i> </div>
  118. </div>
  119. <div class="nano">
  120. <div class="nano-content">
  121. <nav id="menu" class="nav-main" role="navigation">
  122. <ul class="nav nav-main">
  123. <li class="nav-active">
  124. <a href="home.php"> <i class="fa fa-home" aria-hidden="true"></i> <span>首頁</span> </a>
  125. </li>
  126. <li class="nav-parent">
  127. <a>
  128. <i class="fa fa-desktop" aria-hidden="true"></i>
  129. <span>BIM監測查詢網</span>
  130. </a>
  131. <ul class="nav nav-children">
  132. <li>
  133. <a href="#modalForm" class="modal-with-form"> <i class="fa fa-upload" aria-hidden="true"></i> <span>上傳CSV</span> </a>
  134. <!-- Modal Form -->
  135. <div id="modalForm" class="modal-block modal-block-primary mfp-hide">
  136. <section class="panel">
  137. <header class="panel-heading">
  138. <h2 class="panel-title">上傳表單</h2>
  139. </header>
  140. <div class="panel-body">
  141. <form id="CSVform" class="form-horizontal mb-lg" action="./script/php/upload.php" method="post" enctype="multipart/form-data">
  142. <div class="form-group">
  143. <label class="col-md-3 control-label">檔案上傳</label>
  144. <div class="col-md-6">
  145. <div class="fileupload fileupload-new" data-provides="fileupload">
  146. <div class="input-append">
  147. <div class="uneditable-input"> <i class="fa fa-file fileupload-exists"></i> <span class="fileupload-preview"></span> </div> <span class="btn btn-default btn-file">
  148. <span class="fileupload-exists">變更檔案</span> <span class="fileupload-new">選擇檔案</span>
  149. <input type="file" name="fileToUpload" id="fileToUpload" /> </span> <a href="#" class="btn btn-default fileupload-exists" data-dismiss="fileupload">移除檔案</a>
  150. </div>
  151. </div>
  152. </div>
  153. </div>
  154. </form>
  155. </div>
  156. <footer class="panel-footer">
  157. <div class="row">
  158. <div class="col-md-12 text-right">
  159. <button class="btn btn-primary modal-confirm" onclick="uploadCSV()">Submit</button>
  160. <button class="btn btn-default modal-dismiss">Cancel</button>
  161. </div>
  162. </div>
  163. </footer>
  164. </section>
  165. </div>
  166. </li>
  167. <li class="nav-parent">
  168. <a href="C3Index.php">C3工地監測儀器</a>
  169. <ul class="nav nav-children">
  170. </ul>
  171. </li>
  172. </ul>
  173. </li>
  174. <li class="nav-parent">
  175. <a> <i class="fa fa-cloud" aria-hidden="true"></i> <span>BIM支援網</span> </a>
  176. <ul class="nav nav-children">
  177. <li class=""><a href="component-list.php"><i class="fa fa-briefcase" aria-hidden="true"></i><span>BIM元件庫</span></a></li>
  178. <li class=""><a href="api-list.php"><i class="fa fa-gear" aria-hidden="true"></i><span>BIM程式庫</span></a></li>
  179. <li class=""><a href="video-list.php"><i class="fa fa-video-camera" aria-hidden="true"></i><span>BIM影音庫</span></a></li>
  180. </ul>
  181. </li>
  182. </ul>
  183. </nav>
  184. </div>
  185. </div>
  186. </aside>
  187. <!-- end: sidebar -->
  188. <section role="main" class="content-body">
  189. <header class="page-header">
  190. <h2>BIM影音網 - <?php echo ($name); ?></h2>
  191. </header>
  192. <!--<video class="video-js vjs-big-play-centered" controls="" data-setup="{}" height="264" id="my-video" poster="./video/db.png" preload="auto" width="640">
  193. <p class="vjs-no-js">To view this video please enable JavaScript, and consider upgrading to a web browser that <a href="https://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a></p>
  194. </video>-->
  195. <video width="1600" height="800" controls id="video" controlslist="nodownload" poster="./assets/images/loading-logo2.gif">
  196. </video>
  197. </div>
  198. </section>
  199. </div>
  200. <script src="https://vjs.zencdn.net/7.17.0/video.min.js"></script>
  201. <script>
  202. var id = '<?php echo ($id); ?>';
  203. getVideo();
  204. $(document).ready(function() {
  205. //getVideo();
  206. $('#video').bind('contextmenu', function() {
  207. return false;
  208. });
  209. });
  210. function getVideo() {
  211. /*$.ajax({
  212. url: "./video/read.php",
  213. type: "POST",
  214. data: {
  215. //video: name
  216. },
  217. }).done(function(data) {
  218. objectURL = dataURLtoBlob('data:image/jpeg;base64,' + data);
  219. $('#img').attr('src', objectURL);
  220. console.log(objectURL);
  221. }).error(function() {
  222. });*/
  223. //创建XMLHttpRequest对象
  224. var xhr = new XMLHttpRequest();
  225. var url = "./script/php/video/access.php"; //服务端地址
  226. //配置请求方式、请求地址以及是否同步
  227. xhr.open('POST', url, true);
  228. //设置请求结果类型为blob
  229. xhr.responseType = 'blob';
  230. //请求成功回调函数
  231. xhr.onload = function(e) {
  232. if (this.status == 200) { //请求成功
  233. console.log("請求成功");
  234. var video = document.getElementById("video");
  235. //获取blob对象地址,并把值赋给容器
  236. video.src = window.URL.createObjectURL(this.response);
  237. //video.src("./video/1.mp4");
  238. //video.src = window.URL.createObjectURL(this.response);
  239. video.removeAttribute("poster");
  240. //video.play();
  241. video.onload = function(e) {
  242. window.URL.revokeObjectURL(video.src);
  243. };
  244. }
  245. };
  246. xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
  247. xhr.send("video=" + id); //传递参数
  248. }
  249. var video = document.getElementById("video");
  250. video.addEventListener("playing", () => {
  251. console.log("Playing event triggered");
  252. //window.URL.revokeObjectURL(video.src);
  253. });
  254. /*function dataURLtoBlob(dataurl) {
  255. var arr = dataurl.split(',');
  256. var mime = arr[0].match(/:(.*?);/);
  257. var bstr = atob(arr[1]);
  258. var n = bstr.length;
  259. var u8arr = new Uint8Array(n);
  260. var mime = mime[1];
  261. while (n--) {
  262. u8arr[n] = bstr.charCodeAt(n);
  263. }
  264. return window.URL.createObjectURL(new Blob([u8arr], {
  265. type: mime
  266. }));
  267. }*/
  268. </script>
  269. <!-- Vendor -->
  270. <script src="assets/vendor/jquery-browser-mobile/jquery.browser.mobile.js"></script>
  271. <script src="assets/vendor/bootstrap/js/bootstrap.js"></script>
  272. <script src="assets/vendor/nanoscroller/nanoscroller.js"></script>
  273. <script src="assets/vendor/bootstrap-datepicker/js/bootstrap-datepicker.js"></script>
  274. <script src="assets/vendor/magnific-popup/magnific-popup.js"></script>
  275. <script src="assets/vendor/jquery-placeholder/jquery.placeholder.js"></script>
  276. <!-- Specific Page Vendor -->
  277. <script src="assets/vendor/jquery-ui/js/jquery-ui-1.10.4.custom.js"></script>
  278. <script src="assets/vendor/jquery-ui-touch-punch/jquery.ui.touch-punch.js"></script>
  279. <script src="assets/vendor/jquery-appear/jquery.appear.js"></script>
  280. <script src="assets/vendor/bootstrap-multiselect/bootstrap-multiselect.js"></script>
  281. <script src="assets/vendor/jquery-easypiechart/jquery.easypiechart.js"></script>
  282. <script src="assets/vendor/flot/jquery.flot.js"></script>
  283. <script src="assets/vendor/flot-tooltip/jquery.flot.tooltip.js"></script>
  284. <script src="assets/vendor/flot/jquery.flot.pie.js"></script>
  285. <script src="assets/vendor/flot/jquery.flot.categories.js"></script>
  286. <script src="assets/vendor/flot/jquery.flot.resize.js"></script>
  287. <script src="assets/vendor/jquery-sparkline/jquery.sparkline.js"></script>
  288. <script src="assets/vendor/raphael/raphael.js"></script>
  289. <script src="assets/vendor/morris/morris.js"></script>
  290. <script src="assets/vendor/gauge/gauge.js"></script>
  291. <script src="assets/vendor/snap-svg/snap.svg.js"></script>
  292. <script src="assets/vendor/liquid-meter/liquid.meter.js"></script>
  293. <script src="assets/vendor/jqvmap/jquery.vmap.js"></script>
  294. <script src="assets/vendor/jqvmap/data/jquery.vmap.sampledata.js"></script>
  295. <script src="assets/vendor/bootstrap-fileupload/bootstrap-fileupload.min.js"></script>
  296. <script src="assets/vendor/jquery-autosize/jquery.autosize.js"></script>
  297. <script src="assets/vendor/pnotify/pnotify.custom.js"></script>
  298. <!-- Theme Base, Components and Settings -->
  299. <script src="assets/javascripts/theme.js"></script>
  300. <!-- Theme Custom -->
  301. <script src="assets/javascripts/theme.custom.js"></script>
  302. <!-- Theme Initialization Files -->
  303. <script src="assets/javascripts/theme.init.js"></script>
  304. <!-- Examples -->
  305. <script src="assets/javascripts/ui-elements/examples.modals.js"></script>
  306. <script src="script/js/notifications.js"></script>
  307. <!-- Main-->
  308. <script src="script/js/main.js"></script>
  309. </section>
  310. </body>
  311. </html>