【发布时间】:2018-08-15 08:52:23
【问题描述】:
我在同一页面中发布了一些变量,但 $_POST 得到一个空值。
对于 HTML
<form action="" method="POST">
<table><tr>
<td>Product Name :</td>
<td><input type="text" class="searchname" name="productName" value=""/></td>
<td class="pc">Brand Name :</td>
<td><input type="text" class="searchname" name="brandName" value="" /></td>
<tr>
<td>Category Name :</td>
<td><input type="text" class="searchname" name="category" value="" /></td>
</tr></table>
<input type="submit" class="fdasearch" value="Search" />
</form>
对于 PHP
if(empty($_POST['productName']) && empty($_POST['brandName']) && empty($_POST['category'])){
$query = "SELECT * FROM tbl_product";
$getAllProduct = $db->select($query);
}elseif(isset($_POST) || !empty($_POST)){
Setting variables from $_POST and make a search
}
我在 productName 中输入“鞋子” 然后我使用了 var_dump(file_get_contents('php://input')),我得到了
字符串(72) "productName=shoes&brandName=&category=&productName=&brandName=&category="
当我使用 var_dump($_POST) 时,我得到了
array(3) { ["productName"]=> string(0) "" ["brandName"]=> string(0) "" ["类别"]=> 字符串(0) "" }
我不知道 file_get_contents 是如何工作的,但似乎有一个值,但它没有填充 $_POST 变量。我希望 $_POST 有一个值以便进行搜索。
【问题讨论】:
-
您使用的是 Ajax 还是表单发布?
-
您是否使用
Form标签和submit按钮发布数据? -
我忘记发布我的完整代码了。现在已经修复了
-
我认为这段代码应该可以工作,相同的代码可以在我的系统上运行而无需任何更改
-
@Akhilendrayadav 是的!那应该可以工作。当我在本地主机中使用时,它可以工作。所以,我将该文件传输到服务器,然后 post_array 在提交后变为空。您可以在我的问题中看到我的 var_dump 结果。