移动网页联系表单不起作用

时间:2012-10-27 16:52:11

标签: mobile webpage contact

我正在使用mRova template to build a contact form

<!DOCTYPE html>
<!--
Design by mRova Solutions
http://www.mrova.com
Released for free under a Creative Commons Attribution 2.5 License
-->
<html>
    <head>
        <title>Free Mobile Template</title>
        <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0;" />
        <meta name="apple-mobile-web-app-capable" content="yes" />
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <link rel="stylesheet" href="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.css" />
        <link rel="stylesheet" href="css/style.css" />
        <link rel="stylesheet" href="css/photoswipe.css" />
        <script type="text/javascript" src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
        <script type="text/javascript" src="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.js"></script>
        <script type="text/javascript" src="js/klass.min.js"></script>
        <script type="text/javascript" src="js/code.photoswipe.jquery-3.0.4.min.js"></script>
        <script type="text/javascript" src="js/custom.js"></script>
    </head>
    <body>
        <div data-role="page" data-add-back-btn="true">
            <div data-role="header" id="header">
                <h1>Mobile Template</h1>
            </div><!-- /header -->
            <div data-role="content">
                <div class="ui-body ui-body-b ui-corner-all">
                    <div class="contact-thankyou" style="display: none;">
                        Thank you.  Your message has been sent.  We will get back to you as soon as we can.
                    </div>
                    <div class="contact-form">
                        <p class="mandatory">
                            * indicates Mandatory Field
                        </p>
                        <div data-role="fieldcontain" class="text-field">
                            <label for="firstname">First Name*:</label>
                            <input type="text" name="firstname" value="" placeholder="" class="required" id="firstname" />
                        </div>
                        <div data-role="fieldcontain" class="text-field">
                            <label for="surname">Last Name:</label>
                            <input type="text" name="surname" value="" placeholder="" id="surname" />
                        </div>
                        <div data-role="fieldcontain" class="text-field">
                            <label for="email">Email Address*:</label>
                            <input type="email" name="email" value="" placeholder="" class="required" id="email"  />
                        </div>
                        <div data-role="fieldcontain" class="text-field">
                            <label for="mobilephone">Mobile Number:</label>
                            <input type="number" name="mobilephone" value="" placeholder="" id="mobilephone" />
                        </div>
                        <div data-role="fieldcontain">
                            <label for="message">Message*:</label>
                            <textarea name="message" id="message" placeholder="" class="required"></textarea>
                        </div>
                        <div class="send">
                            <a href="javascript:;" data-role="button" data-theme="a" data-iconpos="right" id="send">send</a>
                        </div>
                    </div><!-- //.contact-form -->
                </div>
                <p class="copyright">Copyright &copy; mobi. Designed by <a href="http://mrova.com" class="ui-link">mRova</a></p>
            </div><!-- /content -->
              <div data-role="footer" data-theme="a">
            <div class="ui-bar">
             <a href="share-dialog.html"  data-role="button" data-icon="star" data-theme="a" data-rel="dialog">Share</a> 
             <a href="contact.html" data-role="button" data-icon="plus" data-theme="a">Contact</a>
             <a href="" data-role="button" data-icon="arrow-u" data-theme="a" style="float:right;" class="returnTopAction">Return top</a>             
           </div>
          </div>
          <!-- /Footer --> 

        </div><!-- /page -->
    </body>
</html>

custom.js是:

$('.returnTopAction').live('click', function() {
   $('html, body').animate({scrollTop: '0'}, 700);
});
$('#gallery-page').live('pageshow', function () { 
        $myPhotoSwipe = $(".gallery a").photoSwipe({ enableMouseWheel: false , enableKeyboard: false });});

$('#send').live("click", function() {
                var url = 'send.php';
                var error = 0;
                var $contactpage = $(this).closest('.ui-page');
                var $contactform = $(this).closest('.contact-form');
                $('.required', $contactform).each(function(i) {
                    if($(this).val() === '') {
                        error++;
                    }
                });
                // each
                if(error > 0) {
                    alert('Please fill in all the mandatory fields. Mandatory fields are marked with an asterisk *.');
                } else {
                    var firstname = $contactform.find('input[name="firstname"]').val();
                    var surname = $contactform.find('input[name="surname"]').val();
                    var state = $contactform.find('select[name="state"]').val();
                    var mobilephone = $contactform.find('input[name="mobilephone"]').val();
                    var email = $contactform.find('input[name="email"]').val();
                    var message = $contactform.find('textarea[name="message"]').val();

                    //submit the form
                    $.ajax({
                        type : "GET",
                        url : url,
                        data : {
                            firstname : firstname,
                            surname : surname,
                            state : state,
                            mobilephone : mobilephone,
                            email : email,
                            message : message
                        },
                        success : function(data) {
                            if(data == 'success') {
                                // show thank you
                                $contactpage.find('.contact-thankyou').show();
                                $contactpage.find('.contact-form').hide();
                            } else {
                                alert('Unable to send your message. Please try again.');
                            }
                        }
                    });
                    //$.ajax

                }
                return false;
            });

klass.min.js是:

/**
  * Klass.js - copyright @dedfat
  * version 1.0
  * https://github.com/ded/klass
  * Follow our software http://twitter.com/dedfat :)
  * MIT License
  */
!function(a,b){function j(a,b){function c(){}c[e]=this[e];var d=this,g=new c,h=f(a),j=h?a:this,k=h?{}:a,l=function(){this.initialize?this.initialize.apply(this,arguments):(b||h&&d.apply(this,arguments),j.apply(this,arguments))};l.methods=function(a){i(g,a,d),l[e]=g;return this},l.methods.call(l,k).prototype.constructor=l,l.extend=arguments.callee,l[e].implement=l.statics=function(a,b){a=typeof a=="string"?function(){var c={};c[a]=b;return c}():a,i(this,a,d);return this};return l}function i(a,b,d){for(var g in b)b.hasOwnProperty(g)&&(a[g]=f(b[g])&&f(d[e][g])&&c.test(b[g])?h(g,b[g],d):b[g])}function h(a,b,c){return function(){var d=this.supr;this.supr=c[e][a];var f=b.apply(this,arguments);this.supr=d;return f}}function g(a){return j.call(f(a)?a:d,a,1)}var c=/xyz/.test(function(){xyz})?/\bsupr\b/:/.*/,d=function(){},e="prototype",f=function(a){return typeof a===b};if(typeof module!="undefined"&&module.exports)module.exports=g;else{var k=a.klass;g.noConflict=function(){a.klass=k;return this},a.klass=g}}(this,"function")

php是:

<?php
header('content-type: application/json; charset=utf-8');

if (isset($_GET["firstname"])) {
    $firstname = strip_tags($_GET['firstname']);
    $surname = strip_tags($_GET['surname']);
    $email = strip_tags($_GET['email']);
    $mobilephone = strip_tags($_GET['mobilephone']);
    $state = strip_tags($_GET['state']);
    $message = strip_tags($_GET['message']);
    $header = "From: ". $firstname . " <" . $email . ">rn"; 

    $ip = $_SERVER['REMOTE_ADDR'];
    $httpref = $_SERVER['HTTP_REFERER'];
    $httpagent = $_SERVER['HTTP_USER_AGENT'];
    $today = date("F j, Y, g:i a");    

    $recipient = 'mysite@myhost.com';
    $subject = 'Contact Form';
    $mailbody = "
First Name: $firstname
Last Name: $surname
Email: $email
Mobile Phone: $mobilephone
State: $state
Message: $message

IP: $ip
Browser info: $httpagent
Referral: $httpref
Sent: $today
";
    $result = 'success';

    if (mail($recipient, $subject, $mailbody, $header)) {
        echo json_encode($result);
    }
}
?>

当我在电脑上对它进行测试时,它的工作非常完美,但是当使用黑莓或手机时,点击发送按钮时它什么都不做......

我测试了一个脚本来测试邮件功能,它可以工作......

<?php

$ADDR = "mysite@my.com";
if (mail($ADDR,"Testing","This is a test"))
    echo "Mail function succeeded<br />";
else
    echo "Mail function FAILED<br />";
?>

错误在哪里,我不明白为什么不在手机上工作,但在PC上进行测试时呢?

1 个答案:

答案 0 :(得分:1)

您可以尝试使用$_POST代替$_GET,然后逐个尝试。那会起作用