0

I have a simple form, where users enter their e-mail address. They should receive a message afterwards via this code:

$name = mysqli_real_escape_string($con, $_POST['jmeno']);
$surname = mysqli_real_escape_string($con, $_POST['prijmeni']);
$email = mysqli_real_escape_string($con, $_POST['email']);
$subject = "Subject";
$message = "Message text";

$sql="INSERT INTO kucharka (jmeno, prijmeni, email)
VALUES ('$name', '$surname', '$email ')";

mail($email,$subject,$message,"From: my@address.cz\n");

If I switch the to address to a fixed e-mail, it works properly. Could you please point mw towards a solution? I can't see a mistake there.

Kindly thank you.

Jan Mares
  • 57
  • 8

1 Answers1

2

You could do something like this. Two variables for email. :-

$name = mysqli_real_escape_string($con, $_POST['jmeno']);
$surname = mysqli_real_escape_string($con, $_POST['prijmeni']);
$email_0 = $_POST['email'];
$email_1 = mysqli_real_escape_string($con, $_POST['email']);
$subject = "Subject";
$message = "Message text";

$sql="INSERT INTO `kucharka` (`jmeno`, `prijmeni`,`email`)
VALUES ('{$name}', '{$surname}', '{$email_1}')";

if(mail($email_0,$subject,$message,"From: my@address.cz\n"))
  echo "mail sent";
else
  echo "Error sending mail";

Also check whether $_POST['email'] exists or not, and the correct value is coming from a form with POST method.

Yash Sodha
  • 735
  • 3
  • 13