2016-03-18 97 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頁面的正確路徑 –