Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.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 我想当新用户注册时,我收到一封新注册的邮件,但它不起作用_Php_Mysql_Email_Post_Mysqli - Fatal编程技术网

Php 我想当新用户注册时,我收到一封新注册的邮件,但它不起作用

Php 我想当新用户注册时,我收到一封新注册的邮件,但它不起作用,php,mysql,email,post,mysqli,Php,Mysql,Email,Post,Mysqli,如果没有邮件功能,插入查询将正常工作,但如果使用邮件功能,则会发现页面不工作,页面将无法处理此请求。如果出现HTTP错误500,它会在每次新注册时向我们发送电子邮件 <?php require_once 'sessions.php';; $servername = "localhost"; $username = "medmocksroot"; $password = "medmocks123"; $dbname = "medmocks"; // Create connection $

如果没有邮件功能,插入查询将正常工作,但如果使用邮件功能,则会发现页面不工作,页面将无法处理此请求。如果出现HTTP错误500,它会在每次新注册时向我们发送电子邮件

<?php
require_once 'sessions.php';;

$servername = "localhost";
$username = "medmocksroot";
$password = "medmocks123";
$dbname = "medmocks";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "INSERT INTO student (Name,Contact,email,Password)
VALUES ('$_POST[name]','$_POST[contact]','$_POST[email]','$_POST[password]')";

if ($conn->query($sql) === TRUE) {
    $_SESSION['message'] = "Request Submitted Successfully";
} else {
    $_SESSION['message'] = "Error: " . $sql . "<br>" . $conn->error;
}
/*header("Location: signup.php");*/

if (isset($_REQUEST['signup_mail']))  {

  //Email information
  $admin_email = "medmocks7@gmail.com";
  $name = $_REQUEST['name'];
  $subject = "New Signup";
  $email = $_REQUEST['email'];
  $contact = $_REQUEST['contact'];
  $pass = $_REQUEST['password'];


  //send email

$sql = mail("medmocks7@gmail.com",  "Subject:" .$subject, "From:" .$email, "Name:" .$name, "Contact:" .$contact, "Password:" .$pass);

if ($conn->query($sql) === TRUE) {

  header("Location:signup.php");

  echo '<script language="javascript">';
  echo 'alert("Message Sent Successfully")';  //not showing an alert box.
  echo '</script>';
  exit;

} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

$conn->close();

您的代码需要SQL注入。请使用事先准备好的声明来防止这种情况。关于500错误,为什么要使用mail函数创建SQL语句?它有什么作用?发送的电子邮件是否存在500错误?此外,如果在输出警报之前重定向,则不会显示此代码是列车失事。除上述问题外,
$sql
是调用
mail()
的结果,它返回的是布尔值,而不是sql查询。我不知道这怎么可能被认为是有效的。