我正在尝试将用户输入的公司传递到路径以确定显示的内容。我让公司提交表单所在的页面,这是内容显示的路径。如果它是一个新的公司名称,我想包括一个mkdir。
$path = '(uploadedFiles/($_POST['companyName']))';
$dirs = scandir($path);
不确定原因,但我现在收到一个未定义的索引错误。以下是在名为admin.php的页面上询问名称的部分
print '<form action="admin.php" method="POST">'.PHP_EOL;
print' <h4> Enter the name of the company the new uploads belong to.</h4>';
print' <label class="control-label" `for="companyName">companyName</label>';`
print' <input type="text" name="" id="companyName" placeholder="Enter Comapny Name ">';
print' <button type="submit" class="btn">Enter</button>';
print' </div>';
答案 0 :(得分:2)
最好的方法(Zend代码样式指南)就是这样连接:
$path = 'uploadedFiles/' . $_POST['companyName']; // works with double-
// and single-quotes
但要注意:接受用户输入,未经验证进入您的系统可能会导致黑客攻击。
另一种方式是这样的:
$path = "uploadedFiles/{$_POST['companyName']}"; // double-quotes only
答案 1 :(得分:0)
你去:
$companynamedir = $_POST['companyName'];
$path = "uploadedFiles/" . $companynamedir;
$dirs = scandir($path);
答案 2 :(得分:0)
你应该使用双引号来处理变量,变量是$ _POST,而不是$ -POST。
$path = "uploadedFiles/{$_POST['companyName']}";
当然,在这里使用POST变量是一个很糟糕的想法
答案 3 :(得分:0)
添加到之前说的错误($ _POST,而不是$ -POST;混合引号和双引号),您可以使用大括号将变量回显到字符串中:
$path = "uploadedFiles/{$_POST['companyName']}";
答案 4 :(得分:0)
$path = 'uploadedFiles/'. $_POST['companyName'] ;
if (!file_exists($path) {
mkdir($path, 0775, true);
}
$dirs = scandir($path);
我希望有所帮助。