0

这是我的 news.php 文件:

<form action="create_file.php" method="post" class="form-horizontal"/>
   <label class="control-label">Заглавие:</label>
      <div class="controls">
         <input name="name" type="text" width="40" class="span6 m-wrap" />
         <input type="submit" value="Продължи..." class="btn red"></input>
      </div>
</form>

这是我的 create_file.php

<?php
$pre_file_name = $_POST['name'];

$ext = ".txt";

$file_name = $pre_file_name.$ext;

fopen($file_name,'w');
?>
<form action="edit_file.php" method="post" class="form-horizontal"/>
   <label class="control-label">Въведете новината (текст):</label>
      <div class="controls">
         <span class="field"><textarea class="span6 m-wrap" name="edit" cols="1600" rows="10"></textarea></span><p>
         <input type="hidden" name="file_name" value="<?php echo $file_name; ?>">
         <input class="btn red" type="submit" value="Създай!">
      </div>
</form>

这是我的edit_file.php:

<?php
$edit = $_POST['edit'];

$file_name = $_POST['file_name'];

$file = fopen($file_name, 'w');

fwrite($file,$edit);

fclose($file);

header("Location: news-success.php");



?>

删除.php

    <?php 
$file = $_GET['name'];
unlink($file);

header('Location: news-delok.php');

?>

编辑.php

<?php
$file_name = $_GET['name'];

$file_read = fopen($file_name,"r");
$contents = fread($file_read, filesize($file_name));
fclose($file_read);


?>
<html>
<form action="edit_file.php" method="POST">
  <label>Title:</label>
  <input class="span6 m-wrap" type="text" placeholder="<?php $array = explode(".",$file_name); echo $array[0] ?>" disabled=""><br>
  <label>Text:</label>
  <textarea class="span6 m-wrap" name="edit" cols="420" rows="10"><?php echo $contents ?></textarea><p>
  <input type="hidden" name="file_name" value="<?php echo $file_name ?>">
  <input class="btn red" type="submit" value="Update!">
                            </form>

如何使脚本检查文件名中是否有空格(例如 News 1.txt)并用 + 替换它们(例如 News+1.txt)?先感谢您。

4

2 回答 2

1

对于您的create_file.php,请执行以下操作(经过测试)。

例如:如果您的页面标题是“ page 1 ”,中间有一个空格,它将创建页面“ page_1.txt ”,并在其间添加下划线。如果需要,下划线可以替换为“ + ”或任何其他有效字符。

<?php
$ext = ".txt";
$pre_file_name = $_POST['name'];
$file_name = $pre_file_name.$ext;
$file_name = str_replace(" ", "_", $pre_file_name.$ext);
fopen($file_name,'w');
?>
<form action="edit_file.php" method="post" class="form-horizontal"/>
<label class="control-label">Enter the new (text):</label>
<div class="controls">
<span class="field"><textarea class="span6 m-wrap" name="edit" cols="1600" rows="10"></textarea></span><p>
<input type="hidden" name="file_name" value="<?php echo $file_name; ?>">
<input class="btn red" type="submit" value="Create one!">
</div>
</div>
</form>
于 2013-03-18T11:52:53.633 回答
0

删除文件名之间的空格 在以下行之后 使用str_replace()$pre_file_name = $_POST['name'];

你的代码将是

$pre_file_name = $_POST['name'];

$new_file_name = str_replace(" ", "+", $pre_file_name);
于 2013-03-18T10:42:43.083 回答