0

最初の質問はあいまいすぎたので、再定式化しました。

ケース:santz.net/index.contacto.html(何かを送信してみたければ大丈夫です...私はそれを受け取ったので問題ありません)

これが私のコードです.....

お問い合わせフォーム:

    <form id="contact-form" name="contact-form" class="p25" action="contact.php" method="post">
        <fieldset>
            <label class="name">
                <input class="input" type="text" value="Nombre" onfocus="if(this.value == 'Nombre'){this.value = '';}" onblur="if(this.value == ''){this.value='Nombre';}" name="php_name" />
            </label>
            <label class="email">
                <input class="input" type="email" value="Email" onfocus="if(this.value == 'Email'){this.value = '';}" onblur="if(this.value == ''){this.value='Email';}" name="php_email" />
            </label>
            <label class="phone">
                <input class="input" type="tel" value="Teléfono" onfocus="if(this.value == 'Teléfono'){this.value = '';}" onblur="if(this.value == ''){this.value='Teléfono';}" name="php_phone" />
            </label>
            <label class="message">
                <textarea class="textarea" onfocus="if(this.value == 'Mensaje'){this.value = '';}" onblur="if(this.value == ''){this.value='Mensaje';}" name="php_message">Mensaje</textarea>
            </label>

            <div class="buttons-wrapper ml20">
                <div class="submit-comment">
                    <span></span>
                    <input type="reset" value="Cancelar">
                </div>
                <div class="submit-comment ml25">
                    <span></span>
                    <input type="submit" value="Enviar">
                    <div id="clicker"></div>
                </div>
            </div>
        </fieldset>
    </form>

そして、これが私のPHPコードです。

<?php
$field_name = $_POST['php_name'];
$field_email = $_POST['php_email'];
$field_phone = $_POST['php_phone'];
$field_message = $_POST['php_message'];

$field_sender = 's2@hotmail.com';

$mail_to = 's@hotmail.com';
$subject = 'Mensaje via Santz.net de '.$field_name;

$body_message = 'From: '.$field_name."\n";
$body_message .= 'E-mail: '.$field_email."\n";
$body_message .= 'Phone: '.$field_phone."\n";
$body_message .= 'Message: '.$field_message;

$headers = 'From: '.$field_sender."\r\n";
$headers .= 'Reply-To: '.$field_email."\r\n";

$mail_status = mail($mail_to, $subject, $body_message, $headers);

if ($mail_status) { ?>
    <script language="javascript" type="text/javascript">
        alert('Gracias por contactarse, en breve, me pondre en contacto.\n\nSantz Design | www.santz.net');
        window.location = 'index.contacto.html';
    </script>
<?php
}
else { ?>
    <script language="javascript" type="text/javascript">
        alert('El envio fallo. Por favor, envie un mail directamente a info@santz.net');
        window.location = 'index.contacto.html';
    </script>
<?php
}
?>

私がやりたいのは次のことです...

お問い合わせフォームは現在機能しており、メールが届きます...問題ありません...だから:

1-フォームを送信するときにページの更新/リダイレクトを削除する必要があります2-更新/再読み込み/リダイレクトを置き換えるには、フォームを送信するときにモーダルウィンドウを開く必要があります(コンテンツを配置します)そこに...)(例:pixeden.com/media-icons/soft-media-icons-set-vol-2 ... [ダウンロード]をクリックすると開くダイアログ)

これは、別のユーザーがモーダルボックスに私を勧めたものです(それは非常に素晴らしいです):mywebdeveloperblog.com/my-jquery-plugins/modalpoplite

送信後にリロード/更新/リダイレクトの問題を削除する方法がわかりません。また、フォームの送信後にモーダルボックスを開くイベントを接続する方法がわかりません...

ノート:

私はこれらすべてにまったく慣れていないので(私は17歳です)、プログラマーではありません...プログラミングをほとんど理解していないデザイナーです...しかし、Webのプログラミングを学んでいるので、助けが必要です。

PHPがうまくいかず、プログラミングテクノロジーを変更する必要がある場合は、お知らせください。私は自分の問題を完全に解決するプログラミング言語を受け入れています!

どうもありがとう!!!

4

2 に答える 2

1

このスクリプト<head>をお問い合わせフォームに入力してください。

<link href="http://code.jquery.com/ui/1.10.1/themes/base/jquery-ui.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script>
<script type="text/javascript" src="http://code.jquery.com/ui/1.10.1/jquery-ui.js"></script>
<script type="text/javascript">
$(function() {
    $("#dialog-modal").dialog({
        height: 140,
        modal: true,
        autoOpen: false
    });
    $('#contact-form').submit(function() {
        $("#dialog-modal").dialog("open");
        $.ajax({
            type: "POST",
            url: $(this).attr('action'),
            data: $(this).serialize(),
            success: function() {
                $("#dialog-modal").dialog("close");
            }
        });
        return false;
    });
});
</script>

これを体のどこかに貼り付けます。

<div id="dialog-modal">Form submitted</div>
于 2013-03-05T03:40:04.583 に答える
1

Santz、彼らはおそらくajaxとjquery UIダイアログボックスを使用して、javascriptsajax応答が戻ってきたときに表示します。これは、彼らがこれをどのように達成するかを説明する素敵な小さなチュートリアルです。幸運を。

http://net.tutsplus.com/tutorials/javascript-ajax/submit-a-form-without-page-refresh-using-jquery/

于 2013-03-05T03:42:10.053 に答える