我正在尝试将html文件拉入并加载到textarea中(我稍后会使用tinymce或ckeditor)但是 ONLY 会显示文件,如果它们被加载到与文件夹相同的文件夹中.php
页面。我觉得我错过了一些东西,但我需要能够从同一台服务器和域上的其他文件夹中删除它们。
我已尝试在$filename = ""
中填写完整路径,但如果它不在同一文件夹中,则只显示为空白。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<textarea cols="30" rows="10">
<?php
$filename = "../projectevo/new-page-6.html";
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);
echo $contents;
?>
</textarea>
</body>
</html>
答案 0 :(得分:1)
如果文件位于另一个目录中,则需要将完整路径放在该文件中。尝试
// Get the Base Path to your website
$basePath = dirname(__FILE__);
// Now use the complete path to the file
$filename = $basePath . "/path/to/file/new-page-6.html"
如果文件位于目录中但位于不同的子文件夹中,请说一级,例如:
-main_directory
--dirA
---current-page.php
--dirB
---new-page-6.html
假设您当前加载了current-page.php,您可以使用相对路径访问该文件,如:
$filename = "../dirB/new-page-6.html"
只需确保添加文件的完整路径。
有关路径的更多内容:
答案 1 :(得分:0)
为什么不试试这个
$path = '../test.txt';
//$path = 'test.txt';
//$path = '/home/test.txt';
echo file_get_contents($path);
而不是fopen()......?
答案 2 :(得分:0)
试试这个:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org /TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<textarea cols="30" rows="10">
<?php
$filename = $_SERVER['DOCUMENT_ROOT']."/any folder in your server/any other folder/filename.html";
$handle = fopen($filename, "r");
$contents = fread($handle, filesize($filename));
fclose($handle);
echo $contents;
?>
</textarea>
</body>
</html>