Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php $\u POST在服务器上返回null,但在mamp localhost上工作正常_Php_Html_Apache - Fatal编程技术网

Php $\u POST在服务器上返回null,但在mamp localhost上工作正常

Php $\u POST在服务器上返回null,但在mamp localhost上工作正常,php,html,apache,Php,Html,Apache,各位好, 我是一名网络应用程序开发新手。最近,我在Mamp上完成了我的项目 并尝试将所有内容移动到服务器中。然后奇怪的事情发生了。美元邮政 功能突然不起作用 我在谷歌上搜索了两天这个问题,尝试了很多东西。喜欢 更改apache配置,重新安装一些php包。我尝试使用.htaccess,但不知道它是如何工作的。我只是想知道有没有 当我在mamp上测试时,有没有其他方法可以让这个东西正常工作 顺便说一下,我在服务器中使用LAMP 下面是php代码。var_dump($_POST)将返回null和 va

各位好,

我是一名网络应用程序开发新手。最近,我在Mamp上完成了我的项目 并尝试将所有内容移动到服务器中。然后奇怪的事情发生了。美元邮政 功能突然不起作用

我在谷歌上搜索了两天这个问题,尝试了很多东西。喜欢 更改apache配置,重新安装一些php包。我尝试使用.htaccess,但不知道它是如何工作的。我只是想知道有没有 当我在mamp上测试时,有没有其他方法可以让这个东西正常工作

顺便说一下,我在服务器中使用LAMP

下面是php代码。var_dump($_POST)将返回null和 var_dump($_请求)将返回数组{}

   $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谢谢您提供的信息!我会试试看。