Php 从网站上的用户输入编写文本文件以填充变量

Php 从网站上的用户输入编写文本文件以填充变量,php,file,shell,Php,File,Shell,我正在尝试创建一个带有用户输入对话框的简单网站,以填充将在shell命令中使用的变量 我知道可能最简单的方法是使用HTML表单,然后调用php文件写入文件。我找到了一些类似的代码,但是如何使用输入填充变量呢?下面是一个例子 我希望最终结果如下所示 testapp-d-p-e MySQL\u dbname=$variable1-e MySQL\u dbuser=$variable2-e MySQL\u server=$variable3-e MySQL\u pass=$variable3 这是我已

我正在尝试创建一个带有用户输入对话框的简单网站,以填充将在shell命令中使用的变量

我知道可能最简单的方法是使用HTML表单,然后调用php文件写入文件。我找到了一些类似的代码,但是如何使用输入填充变量呢?下面是一个例子

我希望最终结果如下所示

testapp-d-p-e MySQL\u dbname=$variable1-e MySQL\u dbuser=$variable2-e MySQL\u server=$variable3-e MySQL\u pass=$variable3

这是我已经找到的代码

<form action="myprocessingscript.php" method="POST">
    <input name="field1" type="text" />
    <input name="field2" type="text" />
    <input type="submit" name="submit" value="Save Data">
</form>

<?php
    if(isset($_POST['field1']) && isset($_POST['field2'])) {
        $data = $_POST['field1'] . '-' . $_POST['field2'] . "\n";
        $ret = file_put_contents('/tmp/mydata.txt', $data, FILE_APPEND | LOCK_EX);
        if($ret === false) {
     die('There was an error writing this file');
}
else {
    echo "$ret bytes written to file";
}
}
else {
die('no post data to process');
}


虽然每个变量打印到一个新行,但通过使用串联,我能够得到我想要的输出。有没有办法让它在同一条线上输出

<?php
if(isset($_POST['field1']) && isset($_POST['field2']) && isset($_POST['field3']) && isset($_POST['field4']) && isset($_POST['field5'])) {
    $containername = $_POST['field1'] . "\n";
    $WPhost = $_POST['field2'] . "\n";
    $WPuser = $_POST['field3'] . "\n";
    $WPpass = $_POST['field4'] . "\n";
    $WPname = $_POST['field5'] . "\n";
    $WPapp = 'testapp run -d --name';
    $WPdbhost = '-e WORDPRESS_DB_HOST=';
    $WPdbuser = '-e WORDPRESS_DB_USER=';
    $WPdbpass = 'WORDPRESS_DB_PASSWORD=';
    $WPdbname = '-e WORDPRESS_DB_NAME=';
    $ret = file_put_contents('/tmp/mydata.txt', $WPapp . ' ' . $WPhost . $WPdbhost . $WPuser . $WPdbuser . $WPpass . $WPdbname . $WPname, FILE_APPEND | LOCK_EX);
    if($ret === false) {
 die('There was an error writing this file');
}
else {
echo "$ret bytes written to file";
}
}
else {
die('no post data to process');
}

它有什么问题吗?请不要让我测试它,并将其称为黑色。它确实会写入文件,但我无法确定如何将它们填充到shell命令中的变量中。好吧。。。那是完全不同的动物和球赛。你应该在你的问题中立即包含这一点信息,并为其添加/使用适当的标签。我的道歉,第一次海报。正确的标签是什么?只需从每个标签中删除“\n”。