2016-03-18 66 views
2

我试图使上传的HTML文件,当我上传我想要他的显示在iframe或对象。如何在上载后将html文件加载到iframe中?

HTML

<form id="myForm" action="accept-file.php" method="post" enctype="multipart/form-data"> 
    <input type="file" name="file" /> 
    <br> 
    <div class="col-sm-1"></div> 
    <input type="submit" value="Load File" /> 
</form> 
<object width="1225" height="1000" data="'file here'"></object> 

接受-file.php

if(!$_FILES['file']['error']) 
{ 
    $new_file_name = strtolower($_FILES['file']['tmp_name']); 
    $allowedExts = array("php", "html"); 
    $file_ext=strtolower(end(explode('.',$_FILES['file']['name']))); 
    if($_FILES['file']['type'] !== 'text/html') 
    { 
     $valid_file = false; 
     $message = 'Oops! Your file\'s not supported.'; 
     echo $message ; 
    } 
    else 
    { 
     $currentdir = getcwd(); 
     $target = $currentdir .'/uploads/' . basename($_FILES['file']['name']); 
     $data = move_uploaded_file($_FILES['file']['tmp_name'], $target);  
     $contents = file_get_contents($target); 
     echo $contents; 
    } 
} 

回答

2

您可以将HTML文件上传后在直接呼应它:

echo '<iframe src="' . $target . '"></iframe>'; 

$target将成为HTML文件的路径。

+0

感谢@luweiqi,我需要添加$ target –

+0

@Duwiirwanto您已经指定了'$ target' - >'$ target = $ currentdir。'/ uploads /'。 basename($ _ FILES ['file'] ['name']);' – Panda

+0

结果地址不明白, –

0
<iframe src="/upload/Uploaded_file.html" > </iframe> 

如果您在数据库中存储完整路径而不是使用数据库值替换“src”内容。

+0

谢谢.. @维尔Pathak。我没有将它保存到数据库中,只需将数据保存到.html文件上传 –

+0

ok,比检索HTML文件名并替换为SRC。就好像你上传的HTML文件名是,about.html,而不是替换uploaded_file.html。请给出该HTML页面的正确路径 –