【问题标题】:mkdir(), get path from formmkdir(),从表单获取路径
【发布时间】:2012-11-21 19:06:34
【问题描述】:

我有一个表格,我将数据提交给$_POST['foldername']

createdir.php下方

<form action="mkdir.php">
    <input type="textarea" name="foldername" id="foldername">
    <input type="submit" value="Create directory">
</form>

然后我有mkdir(),它应该有一个路径,包括从输入字段中获取的名称,但问题是,它没有从输入中获取数据。我也尝试打印它,但我得到的只是/images/,但我应该(至少我希望)得到/images/nameFromInput

mkdir.php 下方

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

$path = 'images/' . $foldername;
mkdir($path);
header('Location:createdir.php')
?> 

问题出在哪里?

【问题讨论】:

  • 没有输入类型“textarea”,只有“text”。
  • @HugoDelsing 是的,但无法识别的输入类型被视为文本,所以这可能不会导致他的问题。

标签: php forms input directory mkdir


【解决方案1】:
<form action="mkdir.php" method="POST">

你忘记了方法。

【讨论】:

    【解决方案2】:

    即使最后一行不是必需的,您也忘记了最后的分号。 这可能会让你发疯......所以我建议你总是附加它!

    header('Location: createdir.php');
    

    另外,type="textarea" 不存在,请使用:type="text"&lt;textarea&gt;

    【讨论】:

    • HTML 错误是对的,但最后的分号不是错误 - The closing tag of a block of PHP code automatically implies a semicolon; you do not need to have a semicolon terminating the last line of a PHP block.
    • 伙计,我知道! :) 我不是说那是一个错误,只是说这可能成为它!您只需在其后添加新行(如exit()),一切都会崩溃。这里有数百万个问题都是关于这样的愚蠢错误的!我只是建议一个代码练习。我通常不会只在&lt;?= $var ?&gt; 后面附加分号。只是我的意见!
    猜你喜欢
    • 1970-01-01
    • 2019-08-15
    • 1970-01-01
    • 2016-05-17
    • 1970-01-01
    • 2014-10-16
    • 1970-01-01
    • 2011-02-25
    • 2018-07-22
    相关资源
    最近更新 更多