表单数据未填充在MySQL数据库中

时间:2014-11-25 17:17:38

标签: php html mysql forms cordova

以下是表格:

<form id="secursendmsg" action="server.php" method="post">
        <div id="body_errors">
        </div>

        <textarea id="msg_body" name="msg_body'">
        </textarea>

        <script type="text/javascript">
          function showMe (box) {

            var chboxs = document.getElementsByName("read");
            var vis = "none";
            for(var i=0;i<chboxs.length;i++) {

              if(chboxs[i].checked){
                vis = "block";
                break;
              }
            }
            document.getElementById(box).style.display = vis;


          }
        </script>

        <p id="notifycheck" class="notify">
          <input type="checkbox" name="read" name="notify" onclick="showMe('notify')"/>

          <label for="id_notify">
            Enable Read Receipts
          </label>
        </p>
        <div id="notify" style="display:none">
          <div id="email_errors">
          </div>

          <div class="left">
            <p>
              <label for="email">
                Contact email (suggest Anonmail address):
              </label>

              <br>
              <input id="email" type="text" name="sender_email" size="35" rows="3" maxlength="100"/>
            </p>

          </div>
        </div>
        <p id="pwrapper">
          <div class="button1">
            <i class="fa fa-lock"></i> Submit
        </div>

        <div class="settings">

          <i class="fa fa-cog" style="font-size: 20px;">
          </i>
        </div>

      </div>
    </form>

我的PHP代码如下:

<?
if( $_POST )
{
  $con = mysql_connect("192.99.xxx.xxx","root","LAxxxxxd!");

  if (!$con)
  {
    die('Could not connect: ' . mysql_error());
  }

  mysql_select_db("SecurSend", $con);

  $sent = $_POST['msg_body'];
  $email = $_POST['email'];


  $sent = mysql_real_escape_string($sent);
  $email = mysql_real_escape_string($email);




  $query = "
INSERT INTO `SecurSend`.`SecurMSG` (`email`,`sent`) VALUES         ('".$sent."','".$email."');";"

  mysql_query($query);

  echo "<h2>Test Complete!</h2>";

  mysql_close($con);
}
?>

无论如何,我从来没有得到回声,信息也没有填充。我无法理解为什么。形式&amp; PHP不托管在服务器上,它通过Cordova托管在应用程序中。

2 个答案:

答案 0 :(得分:1)

更改此

 $email = $_POST['email'];

$email = $_POST['sender_email'];

您已将表单中的电子邮件命名为sender_email,并在php中使用了email

此外,$query字符串中还有一个额外的双引号。删除该代码后将是:

$query = "INSERT INTO SecurSend.SecurMSG(email,sent)VALUES('".$sent."','".$email."')";

就您所显示的代码而言,您未提交表格。

所以改变

<div class="button1">
     <i class="fa fa-lock"></i> Submit
</div>

<button class="button1" type="submit">
    <i class="fa fa-lock"></i> Submit
</button>

答案 1 :(得分:1)

除了email文本名称问题之外,你的sql行搞砸了:

$query = "INSERT INTO SecurSend.SecurMSG(email,sent)VALUES('".$sent."','".$email."')";