是否有任何现有的php代码,将允许我从浏览器编辑和保存文件?
示例:页面上的文本区域site.com/edit.php将保存到指定的文件?我希望能够在飞行中编辑文件。
我在XAMPP上托管网站,似乎无法让FTP工作,所以如果我需要编辑文件并且无法访问托管计算机,这将是一个很大的用途。
这是我找到的最接近我需要的,但是似乎不能让它工作(目标是改变'change.php'):
<?php
if ($changefile) {
$slash = stripslashes($_POST['filetest']);
$filetochange = "change.php";
$filetochangeOpen = fopen($filetochange,"w") or die ("Error editing.");
fputs($filetochangeOpen,$slash);
fclose($filetochangeOpen) or die ("Error Closing File!");
}
?>
<form method=post action="">
<textarea rows="40" cols="60" name="filetest">
<?
// Implode CSS
$filetochange = "change.php";
print (implode("",file($filetochange)));
?>
</textarea><br />
<br />
<input type="submit" value="Change File" name="changefile">
</form>
www-data
必须具有文件的写权限,否则它将无法工作。小心点。要么限制访问你自己的ip(如你所说),要么把它放在一个有SSL密码保护的文件夹里。
<?php
$file = $_POST['file'];
$script = $_POST['script'];
if($file&&$script) {
$fp=fopen($file, "w");
fwrite($fp,$script);
fclose($fp);
}
?>
<form method="post">
<?php
if($file) {
?>
<textarea style="height: 90%; width: 100%;" name="script">
<?php
$fp=fopen($file,"r");
$t="";
while(!feof($fp)) {
$t.=fread($fp,1024);
}
fclose($fp);
print $t;
?>
</textarea>
<input type="hidden" name="file" value="<?=$file;?>">
<?php
}
else
{
?>
Name of file: <input type="text" name="file"><br />
<?php
}
?>
<br />
<input type="submit">
</form>