从aspx调用php

时间:2016-05-28 13:57:22

标签: javascript php html asp.net

我在aspx页面中有一个联系表单,点击提交帖子到php页面后。但从我看到的PHP没有被调用。当我点击提交没有发送电子邮件或文件为空时没有任何反应。 这是aspx文件中的表单:

<form action="form-to-email.php" method="post">
                        <div class="contact-form margin-top">
                            <label>
                                <span>Full name</span>
                                <input type="text" class="input_text" name="name" id="name" />
                            </label>
                            <label>
                                <span>Email</span>
                                <input type="text" class="input_text" name="email" id="email" />
                            </label>
                            <label>
                                <span>Subject</span>
                                <input type="text" class="input_text" name="subject" id="subject" />
                            </label>
                            <label>
                                <span>Message</span>
                                <textarea class="message" name="feedback" id="feedback"></textarea>
                                <input type="submit" name="submit" id="submit" class="button" value="Submit Form" />
                            </label>
                        </div>
                        </form>

这是我的php页面:

<?
if(!isset($_POST['submit']))
{
echo "error; you need to submit the form!";
}
$name = $_POST['name'];
$visitor_email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['feedback'];
if(empty($name)||empty($visitor_email)||empty($subject)||empty($message))
{
    echo "All fields are mandatory!";
exit;
}
if(IsInjected($visitor_email))
{
    echo "Bad email value!";
    exit;
}
$email_from='someone@gmail.com';
$email_subject=$subject;
$email_body= "You have received a message from the user $name .\n Email address: $visitor_email\n Here is the message:\n $message";
$to = 'someone@gmail.com';
$headers = "From: $email_from \r\n";
$headers .= "Reply-To: $visitor_email \r\n";
mail($to,$email_subject,$email_body,$headers);

function IsInjected($str)
{
    $injections = array('(\n+)',
           '(\r+)',
           '(\t+)',
           '(%0A+)',
           '(%0D+)',
           '(%08+)',
           '(%09+)'
           );
                
    $inject = join('|', $injections);
    $inject = "/$inject/i";
     
    if(preg_match($inject,$str))
    {
      return true;
    }
    else
    {
      return false;
    }
}
?>

我正在使用visual studio btw。

0 个答案:

没有答案