以下に、ファイル入力を処理するiframeがあります。
var $fileVideo = $("<form action='videoupload.php' method='post' enctype='multipart/form-data' target='upload_target_video' onsubmit='return videoClickHandler(this);' class='videouploadform' >" +
"Video File: <input name='fileVideo' type='file' class='fileVideo' /></label>" +
"<input type='submit' name='submitVideoBtn' class='sbtnvideo' value='Upload' /></label>" +
"<p class='listVideo' align='left'></p>" +
"<iframe class='upload_target_video' name='upload_target_video' src='/' style='width:0px;height:0px;border:0px;solid;#fff;'></iframe></form>");
これで、ファイルのアップロードが停止し、サーバーに正常にアップロードされたときに、アップロードされたファイルの名前が表示される関数が次のようになりました。
function stopVideoUpload(success, videofilename){
var result = '';
videocounter++;
if (success == 1){
result = '<span class="videomsg'+videocounter+'">The file was uploaded successfully</span>';
$('.listVideo').eq(window.lastUploadVideoIndex).append('<div>' + htmlEncode(videofilename) +
'<input type="text" name="videoidhide" value=""/><br/><hr/></div>');
}
return true;
}
また、ファイル名の横にテキスト入力があることもわかります。これは私の質問に関連しています。
以下は、フレームがリンクするphpスクリプトです。videoupload.php
このスクリプトは、ファイルをアップロードし、データベースにデータを挿入します。
move_uploaded_file($_FILES["fileVideo"]["tmp_name"],
"VideoFiles/" . $_FILES["fileVideo"]["name"]);
$result = 1;
$videosql = "INSERT INTO Video (VideoFile)
VALUES (?)";
if (!$insert = $mysqli->prepare($videosql)) {
// Handle errors with prepare operation here
}
//Dont pass data directly to bind_param store it in a variable
$insert->bind_param("s",$vid);
//Assign the variable
$vid = 'VideoFiles/'.$_FILES['fileVideo']['name'];
$insert->execute();
if ($insert->errno) {
// Handle query error here
}
$insert->close();
?>
<script language="javascript" type="text/javascript">
window.top.stopVideoUpload(<?php echo $result; ?>, '<?php echo $_FILES['fileVideo']['name'] ?>');
</script>
以下は、ファイルの挿入を示すデータベースの例です。
Video_Questionテーブル:
VideoId (PK auto) VideoFile
1 VideoFiles/carrace.mp4
2 VideoFiles/cricket.mov
さて、私の質問は、アップロードされたビデオファイルをdbのフィールドに挿入するmysqliコードで、フィールドVideoFile
から値を取得して、VideoId
関連付けられたアップロードされた各ファイルのテキスト入力に表示するにはどうすればよいですか?
たとえば、carrace.mp4がアップロードされた場合はVideoId
、データベースから1を取得し、アップロードされたファイルの名前の横にあるテキスト入力に表示します。