How do you display a JavaScript alert from PHP?
I don't code in PHP, but I have this form which I pulled off the web and its working great:
What I would like to do is somehow add some code in here that can fire up a JS script, simple alert box, saying "Thank you form is submitted". After the form was received by this mailer.php file.
<?php
if(isset($_POST['submit'])) {
$to =开发者_开发知识库 "myEmail@email.com";
$subject = "Form Tutorial";
$name_field = $_POST['name'];
$email_field = $_POST['email'];
$message = $_POST['message'];
$body = "From: $name_field\n E-Mail: $email_field\n Message:\n $message";
echo "Data has been submitted to $to!";
mail($to, $subject, $body);
} else {
echo "blarg!";
}
?>
instead of:
echo "Data has been submitted to $to!";
just
echo '<script type="text/javascript">alert("Data has been submitted to ' . $to . '");</script>';
You can echo
Javascript in a <script></script>
block in your PHP. The browser will then execute it.
So for example:
<?php
echo "<script language='javascript'>alert('thanks!');</script>";
?>
You just need to output the HTML/JS. Something like this:
<?php
if(isset($_POST['submit'])) {
$to = "mjleppan@hotmail.com";
$subject = "Form Tutorial";
$name_field = $_POST['name'];
$email_field = $_POST['email'];
$message = $_POST['message'];
$body = "From: $name_field\n E-Mail: $email_field\n Message:\n $message";
mail($to, $subject, $body);
echo "<script type=\"text/javascript\">alert('Thank you form is submitted');</script>";
} else {
echo "blarg!";
}
?>
alternatively:
<?php
if(isset($_POST['submit'])) {
$to = "mjleppan@hotmail.com";
$subject = "Form Tutorial";
$name_field = $_POST['name'];
$email_field = $_POST['email'];
$message = $_POST['message'];
$body = "From: $name_field\n E-Mail: $email_field\n Message:\n $message";
mail($to, $subject, $body);
?>
<script type="text/javascript">alert('Thank you form is submitted.');</script>
<?php
} else {
echo "blarg!";
}
?>
However, it sounds like you maybe don't want to have the page reload between submitting the form and giving the user the confirmation. For that you'd need to submit the form via AJAX. I recommend looking into JQuery. It makes this easy.
精彩评论