【问题标题】:PHP POST is not filledPHP POST 未填写
【发布时间】:2019-02-03 18:52:43
【问题描述】:

我必须创建的网站有问题。当我用正确的键调用 POST 时,我没有取回值。我认为错误是我的 POST 没有被填写。

$id = isset($_GET['id']) && is_numeric($_GET['id']) ? (int) $_GET['id'] : 0; 

这一行位于编码之上,并返回正确的 id,我通过 echo 进行了检查。

<form method="POST" action="Index.php">
<input type="hidden" name="Entryid" value="<?php echo $id; ?>">
<a type="submit" name="delete" class="btn btn-success" href="Index.php" data-toggle="modal" data-target="#myModal" style="cursor: pointer;">Löschen</a>
</form>

这里我将id的值放入键“Entryid”中,当我点击一个按钮时切换到“Index.php”。 在“Index.php”内部,我尝试获取这样的值。

$id = isset($_POST['Entryid']) && is_numeric($_POST['Entryid']) ? (int) $_PST['Entryid'] : 0;

这里可能没有设置 id 的值,如果我通过 echo 检查它,输出是 0。 你认为我的错误在哪里?

【问题讨论】:

  • 只需 print_r($_POST) 看看你会得到什么!
  • @AliGhalambaz 它打印“Array () 0”
  • 这意味着没有发布!阅读他们是正确的新答案

标签: php html post


【解决方案1】:

我认为这是因为您使用的是&lt;a&gt;-tag 作为按钮,而不是input

所以改变这一行:

<a type="submit" name="delete" class="btn btn-success" data-toggle="modal" data-target="#myModal" style="cursor: pointer;">Löschen</a>

到这里:

<input type="submit" name="delete" class="btn btn-success" style="cursor: pointer;" value="Löschen" />

发生错误,因为您使用href 创建了&lt;a&gt;,这意味着您没有将表单提交到目的地,而是只是链接它(使用常规的get-request没有任何附加参数)。 This page 对此做了一些解释(关于“方法属性”的部分)。


但正如阿里所说。尝试在你的 index.php 页面上写:

<?php
echo '<pre>';
print_r($_POST);
echo '</pre>';
?>

然后看看你得到了什么,看看你的变量是否被定义。

【讨论】:

  • 非常感谢,这行得通,并且 id 已正确发布,但现在按钮不可点击,第二个按钮出现在其左侧,带有“Senden”文本,或多或少转换为提交。您认为导致该错误的原因是什么?但到目前为止真的很感谢你。
  • @ErikaAnhalt 你应该关闭input&lt;input .... /&gt; 如果a 的样式正确,您也可以使用 JS 使其处理表单。我更喜欢使用input,因为如果 JS 被禁用(今天不太可能),它将无法正确处理。
  • 可能是因为data-toggledata-target 属性。我刚刚更新了我的答案(删除它们),并且还做了@user3783243 所说的(我之前忘了添加)。所以尝试复制粘贴更新后的答案,看看会发生什么......?
  • 非常感谢。你不知道你现在帮助了多少。非常感谢。
【解决方案2】:

请勿使用a 提交。那不处理表格。它只是链接到页面。使用:

<input type="submit" ...

并根据需要设置样式。

atype 与它处理表单的方式无关,https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a

以 MIME 类型的形式为链接的 URL 指定媒体类型。它纯粹是建议性的,没有内置功能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-08-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多