繁体   English   中英

MySQL 查询未处理,而 PHP Email 代码是?

[英]MySQL Query is not processing whereas PHP Email code is?

我在 html php 和 javascript 中有一个表单设置。 单击提交按钮后,我将表单设置为运行 process() function。 在这个过程 function 中,我给自己发送了一个 email 并将表单中的数据插入到 mysql 查询中并发送该查询。

但是 email 代码有效,我收到 email,但查询代码没有,因此我的数据库中没有收到新行。 我也没有收到 mysql_error() output 。

请你能告诉我哪里出错了吗?

function process()
    {
        mysql_connect("localhost", "username", "password");
        mysql_select_db("db");
        $device = mysql_real_escape_string($_POST['Device_Type']);
        $name = mysql_real_escape_string($_POST['Name']);
        $job = mysql_real_escape_string($_POST['DD']);
        $username = mysql_real_escape_string($_POST['Username']);
        $email = mysql_real_escape_string($_POST['Email']);
        $website = mysql_real_escape_string($_POST['Website']);
        $UDID = mysql_real_escape_string($_POST['UDID']);
        mysql_query("INSERT INTO Beta_Testers (`Name`, `Username`, `Email Address`, `Website`, `Job`, `Device_Type`, `UDID`) VALUES ('$name','$username','$email','$website','$job','$device','$UDID'))") or die(mysql_error());  
          $msg = "Form Contents: \n\n";
          foreach($this->fields as $key => $field)
                $msg .= "$key :  $field \n";
          $to = 'beta@socialpic.org';
          $subject = 'Beta Form Submission';
         $from = 'Beta Sign up';
          mail($to, $subject, $msg, "From: $from\r\nReply-To: $from\r\nReturn-Path: $from\r\n");
    }

由于 mysql_query() 在您使用它的上下文中是 boolean function ,因此您可以执行以下操作:

function process()
    {
        mysql_connect("localhost", "username", "password");
        mysql_select_db("db");
        $device = mysql_real_escape_string($_POST['Device_Type']);
        $name = mysql_real_escape_string($_POST['Name']);
        $job = mysql_real_escape_string($_POST['DD']);
        $username = mysql_real_escape_string($_POST['Username']);
        $email = mysql_real_escape_string($_POST['Email']);
        $website = mysql_real_escape_string($_POST['Website']);
        $UDID = mysql_real_escape_string($_POST['UDID']);
        $query = "INSERT INTO Beta_Testers (`Name`, `Username`, `Email Address`, `Website`, `Job`, `Device_Type`, `UDID`) VALUES ('$name','$username','$email','$website','$job','$device','$UDID'))";
        if (mysql_query($query)) {
            $msg = "Form Contents: \n\n";
            foreach($this->fields as $key => $field)
                $msg .= "$key :  $field \n";
            $to = 'beta@socialpic.org';
            $subject = 'Beta Form Submission';
            $from = 'Beta Sign up';
            mail($to, $subject, $msg, "From: $from\r\nReply-To: $from\r\nReturn-Path: $from\r\n");
        } else {
            echo $query;
        }
    }

但是查看您的代码,您的 email 地址列是否称为“电子邮件地址”或“电子邮件地址”?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM