0

Web ページにこのビデオ要素があります。

    <video height="240" width="412" id="video" controls="controls">
    </video>
<button type="button"  id ="url_go" name="url_go" onclick="showUploadDiv()"> Load </button>
<form id="upload" action="save.php" method="post" enctype="multipart/form-data">
<button type="submit" > Save </button>

そして、この方法でロードされた動的 URL があります。

function showUploadDiv()
{
    if ($("#url").val()==null || $("#url").val()=="")
        return false; 

    var video = document.getElementById('video');
    video.src = $("#url").val();
    video.controls = true;
    video.height = 240; 
    video.width = 412;
    document.getElementById('url').value="";
}

ボタンを使用して、Web ページにビデオをアップロードします (値の URL を設定します) load。その後、要素を保存したいと思いますvideo。私の問題はsave.php、新しい URL がロードされたビデオ要素を保存したい file にあります。このコードでは、Web ページ要素を新しい Web ページに保存しますが、ビデオには URL 値が読み込まれていません。

<?php
    $ourFileName = "testFile.html";
    $ourFileHandle = fopen($ourFileName, 'w+') or die("can't open file");
    fwrite($ourFileHandle, file_get_contents("index.html"));
    fclose($ourFileHandle);
?>

誰にも解決策がありますか?

4

1 に答える 1

0

ユーザーのブラウザの DOM を JavaScript で変更しても、サーバー上の元の HTML ファイルは実際には変更されません。保存する前に、URL をアップロードし、読み込んだ HTML コードに「src」属性を手動で挿入する必要があります。

<?php
    $ourFileName = "testFile.html";
    $ourFileHandle = fopen($ourFileName, 'w+') or die("can't open file");
    $url = $_POST['url']; // don't forget to validate this
    $content = file_get_contents("index.html");
    $content = str_replace('<video ','<video src="'.$url.'" ',$content);
    fwrite($ourFileHandle, $content);
    fclose($ourFileHandle);
?>
于 2012-12-12T21:31:06.103 に答える