$ _post上的空值

时间:2016-02-08 03:26:56

标签: php forms

我正在尝试创建一个基本输入表单来将新客户端记录到MariaDB表中,但我的帖子结果将返回null。

输入表格设置如下

<form class="clientreg" id="NewClient" method="post" action="posttest.php">
    <label>Client Name:
        <input type="text" name="ClientName" class="LongText"/>
    </label>
    <label>Bulk Discount: <input type="number" name="Bulk" class="discount"/></label>
    <label>Settlement Discount: <input type="number" name="settlement" class="discount"/></label>
    <label>Trades Discount: <input type="number" name="Trades" class="discount"/></label>
    <input type="submit"/>
</form>

print_r($_POST)会返回Array(),因此提交时不会提取相关信息。我已经检查了明显的问题,即没有name=' attributes和正确的包裹,但我完全失去了

2 个答案:

答案 0 :(得分:1)

我认为您的PHP脚本 posttest.php 存在问题。你的表格似乎没问题。

HTML

<!DOCTYPE html>
<html lang="en" class="no-js">
<head>
<title>just for test</title>
</head>
<div id="Response" ></div>
<h3>login</h3>
<form class="clientreg" id="NewClient" method="post" action="posttest.php">
    <label>Client Name:
        <input type="text" name="ClientName" class="LongText"/>
    </label>
    <label>Bulk Discount: <input type="number" name="Bulk" class="discount"/></label>
    <label>Settlement Discount: <input type="number" name="settlement" class="discount"/></label>
    <label>Trades Discount: <input type="number" name="Trades" class="discount"/></label>
    <input type="submit"/>
</form>
</div>
</body>
</html>

posttest.php

<?php
echo '<pre>'; print_r($_POST); echo '</pre>';
foreach($_POST as $key=>$val) {
    echo "\$_POST[$key]=$val<br />";
}
?>

结果

Array
(
    [ClientName] => MyName
    [Bulk] => 1
    [settlement] => 2
    [Trades] => 3
)
$_POST[ClientName]=MyName
$_POST[Bulk]=1
$_POST[settlement]=2
$_POST[Trades]=3

答案 1 :(得分:0)

您的HTML脚本没有错。我认为您正在尝试刷新posttest.php文件而不运行您的表单(如没有重新提交表单)。 如果不是这种情况,只需分享你的posttest.php代码。
您还可以使用能够处理$_REQUEST$_GET变量的$_POST

 <?php
     echo "<pre>";
     print_r($_REQUEST);
     echo "</pre>";
   ?>