Php $\u POST在服务器上返回null,但在mamp localhost上工作正常
各位好, 我是一名网络应用程序开发新手。最近,我在Mamp上完成了我的项目 并尝试将所有内容移动到服务器中。然后奇怪的事情发生了。美元邮政 功能突然不起作用 我在谷歌上搜索了两天这个问题,尝试了很多东西。喜欢 更改apache配置,重新安装一些php包。我尝试使用.htaccess,但不知道它是如何工作的。我只是想知道有没有 当我在mamp上测试时,有没有其他方法可以让这个东西正常工作 顺便说一下,我在服务器中使用LAMP 下面是php代码。var_dump($_POST)将返回null和 var_dump($_请求)将返回数组{}Php $\u POST在服务器上返回null,但在mamp localhost上工作正常,php,html,apache,Php,Html,Apache,各位好, 我是一名网络应用程序开发新手。最近,我在Mamp上完成了我的项目 并尝试将所有内容移动到服务器中。然后奇怪的事情发生了。美元邮政 功能突然不起作用 我在谷歌上搜索了两天这个问题,尝试了很多东西。喜欢 更改apache配置,重新安装一些php包。我尝试使用.htaccess,但不知道它是如何工作的。我只是想知道有没有 当我在mamp上测试时,有没有其他方法可以让这个东西正常工作 顺便说一下,我在服务器中使用LAMP 下面是php代码。var_dump($_POST)将返回null和 va
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$ID=$_POST['Client_ID'];
$name=$_POST['username'];
var_dump($_POST);
$sex=$_POST['sex'];
$mobile=$_POST['mobile'];
$email=$_POST['email'];
$time=$_POST['time'];
$company_name=$_POST['Company_name'];
$wechat_id=$_POST['Wechat_id'];
if ($sex==0){
$sex="female";
} else {
$sex="male";
}
$delOrnot=0;
$sql="INSERT INTO Client(client_id,owner_name,gender,cell_phone,email,time,company_name,delOrnot,department) VALUES ('{$ID}','{$name}','{$sex}','{$mobile}','{$email}','{$time}','{$company_name}','{$delOrnot}','{$wechat_id}')";
if($conn->multi_query($sql)===TRUE){
echo"New records created successfully";
}else {
echo "Error " . $sql . "<br>" . $conn->error;
}
$conn->close();
$conn=newmysqli($servername、$username、$password、$dbname);
//检查连接
如果($conn->connect\u错误){
die(“连接失败:”.$conn->connect\U错误);
}
$ID=$\u POST['Client\u ID'];
$name=$_POST['username'];
变量转储($\u POST);
$sex=$_POST['sex'];
$mobile=$_POST['mobile'];
$email=$_POST['email'];
$time=$_POST['time'];
$company\u name=$\u POST['company\u name'];
$wechat\u id=$\u POST['wechat\u id'];
如果($sex==0){
$sex=“女性”;
}否则{
$sex=“男”;
}
$delOrnot=0;
$sql=“将值({$id}、{$name}、{$sex}、{$mobile}、{$email}、{$time}、{$company{name}、{$delOrnot}、{$sex}、{$mobile}、{$email}、{$time}、{$company name}、{$delOrnot}、{$wechat{$id})插入客户(客户id、所有者、性别、手机、电子邮件、时间、公司、部门)中”;
如果($conn->multi_query($sql)==TRUE){
回显“成功创建新记录”;
}否则{
回显“错误”。$sql。“$conn->错误;
}
$conn->close();
下面是html代码
<form action="member-add.php" method="post" class="form form-horizontal" id="form-member-add">
<div class="row cl">
<label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>userID:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" value="" placeholder="" id="Client_ID" name="Client_ID">
</div>
</div>
<div class="row cl">
<label class="form-label col-xs-4 col-sm-3"><span class="c-red">*</span>username:</label>
<div class="formControls col-xs-8 col-sm-9">
<input type="text" class="input-text" value="" placeholder="" id="username" name="username">
</div>
</div>
</form>
*用户标识:
*用户名:
它在mamp上工作得非常好。我不知道我的服务器配置出了什么问题。谢谢你的帮助 您的php和HTML代码是否在同一个文件中?
我建议您将代码放在文件顶部,然后在表单开始标记中检查var_dump.
<form action="member-add.php" method="post" class="form form-horizontal" id="form-member-add">
尝试添加enctype,此属性指定将表单数据提交到服务器时应如何编码表单数据
<form action="member-add.php" method="post" enctype="multipart/form-data" class="form form-horizontal" id="form-member-add">
应该是这样的。
您可以阅读有关不同类型的更多信息
如何对此进行调试
然而,我认为更重要的是要看到一种可能的调试方法。当您向服务器发出请求时,将发送该请求,您可以查看您向服务器发送的内容以及服务器的响应。要做到这一点(本例使用Chrome),请打开您的google开发者工具(只需按F12),然后进入网络,单击发送按钮时发出的请求。var\u dump($\u POST);它区分大小写哦,这是我改为var\u dump($\u POST)时输入的错误。它返回数组(0){}。谢谢你的提醒!那么很可能是您在某处覆盖了$\u POST,或者您的表单没有以正常方式提交。检查php文件顶部的var_dump,然后再做其他事情。表单是否已关闭
?@vivek_23是的,这只是代码的一部分。如果您仍在问问题,请不要回答,您可以使用添加注释
是的,它们都在/www下,这就是我上载的方式them@xianhuichen您需要将所有内容置于public\u html
(如果存在)可能吧?@vivek_23我不明白你的意思。我需要将所有内容放在/www下的另一个html文件夹下?@xianhuichen你是在使用主机提供商还是在localhost上尝试此操作?我不觉得缺少enctype
是问题所在。enctype
通常在上传文件时使用。@vivek_23这就是我包括关于调试的部分,他/她可以检查发送到服务器的内容:)@thefolenangel谢谢您提供的信息!我会试试看。