php正在从html表单中读取额外的空白区域选择

时间:2017-01-07 04:00:39

标签: php

我有一个HTML表单,我用PHP脚本解析。其中一部分是选择框,从文本文档填充。当我从框中选择选项并将其回显时,似乎有一个额外的空白区域,我无法删除。我看过rtrim删除它但它不起作用。

文字文件:

Family
Buildings
Paul

这些都是通过脚本放入文档中的,该脚本以另一种形式读取用户的输入:

<body>
    <form method="post">
        <input name="album" type="text"><br>
        <input type="submit" value="add" >
        <input type="button" value="close" onclick="window.close()">
    </form>
<?php
    $file = 'displays.txt';
    $display = $_POST['album'];
    $results = file_put_contents($file, $display . "\n", FILE_APPEND);
?>

我意识到我对文件使用换行符。这样就可以正确地填充我的表单选择。

表格选择

<?php
    $file = 'displays.txt';
    $contents = file($file);
    foreach($contents as $line) {
        echo'<option value="' . $line . '">' .$line . '</option>';
    }
?>

以下是读取选项输入

的代码
$album = rtrim($_POST['album'] . '.txt',"\n");
$pics = array($album);

我之后添加了“.txt”,这样当我发送到python脚本时,我可以根据它们的选择使用它来创建一个新的文本文档。当我运行所有内容时,我得到以下输出:

Array ( [0] => Carlson .txt [1] => IMG_2417.JPG [2] => IMG_3120.JPG )

它是卡尔森与卡尔森之间的空间。 “.txt”,这让我失望了。起初我以为我正在为其他人做过额外的空间,但在审查克里斯特利时,我没有看到任何额外的空间。该过程的下一步是使用shell_exec()将其发送到python脚本,如果没有“.txt”将“Carlson”的值发送到另一端会更容易吗?

1 个答案:

答案 0 :(得分:0)

$album = rtrim($_POST['album']). '.txt';

你试过这个解决方案吗? 你想从输入(专辑)中删除空格,所以你应该只使用rtrim来自输入的值(在这种情况下,$ _ POST [&#39; album&#39;])。删除空格后,您添加了&#39; .txt&#39;。

我删除&#39; \ n&#39;因为我不知道你想要什么结果。如果&#39; \ n&#39;必须添加到值的末尾,然后

$album = rtrim($_POST['album']). '.txt\n';

编辑我的回答

感谢您的评论。 \ n没有单引号,所以它应该是

$album = rtrim($_POST['album']). ".txt\n";