0

こんにちは、私が作成したこのフォームがあり、それをスライドさせて連絡することができます。ヘッダーにあります。何らかの理由で送信すると、ページが見つからないというメッセージが表示されます。ページを作成し、メールを送信するテンプレートを指定しました。値を指定せずに送信ボタンを押すと、お礼のメッセージが表示されたページに移動します。

連絡先コード:

<div id="feedback"><!-- Sliding contact form ---->

        <form method="post" action="../contactformsubmit">
            <h2>Phone: 847-782-9816</h2>
            <p><label>Name: </label><input type="text" name="name"/></p>
            <p><label>Email: </label><input type="text" name="email"/></p>
            <p><label>Subject: </label><input type="text" name="subject"/></p>
            <p><label>Message: </label><textarea name="message"></textarea></p>
            <p><input type="submit" value="Send" class="btn"/></p>
        </form>
        <a href="#" class="pull_feedback" title="Click to leave feedback" ><img src=""/>Feedback</a>
</div>
<!-- end contact form -->

テンプレートコード:

<?php
/*
Template Name: formsubmit
*/
session_start();
get_header(); ?>
<style>
.item-post{
    margin: 0 0 1.625em;
    padding: 0 0 1.625em;
    position: relative;
    float: left;
    height: 365px;
    width: 100%;
    margin-left: 2%;

}
.singular .item-post{
    text-align:center;  
}
.singular.page .hentry {
    padding:0 0 0 0;
    width: 17%;
    margin-top:1em;
    //height: 405px;

}
.singular.page .hentry:hover{
    background: #C9191B;
}
.singular .entry-title {
    font-size: 15px;
    width: 100%;
    text-align: center;

}
.singular .entry-content {

    width:100%;

}
.singular .entry-header {

    width:100%;
    text-align:center;

}
.singular .discription {
    width: 80%;
    text-align: left;
    font-size: 12px;
    padding-left: 15%;
    height: 12%;
}
.singular .prodslideshow {
    display:none;   
}
.singular .pricing {
    padding-left: 15%;
}
</style>

        <div id="primary">

            <div id="content" role="main">
            <div class="thankyou" style="text-align:center; padding-top:1em; padding-bottom:1em;">
                    <h2>Thank you for contacting us!  We are here to make sure your time with us is a good one!  We will contact you as soon as we can.</h2>
                </div>
            <?php

            $message = $_POST['message'];
            $name = $_POST['name'];
            $email = $_POST['email'];
            $subject = $_POST['subject'];
            /*******SEND EMAIL**********/
                require_once "Mail.php";
                $body = "
Message from contact form!

$name
$email

$message
                ";
                // Send
                $from = "Contact Form ";
                //$to = "";
                $to = "";
                $host = "";
                $username = "";
                $password = "";

                $headers = array ('From' => $from,
                  'To' => $to,
                  'Subject' => $subject);
                $smtp = Mail::factory('smtp',
                  array ('host' => $host,
                    'auth' => true,
                    'username' => $username,
                    'password' => $password));

                $mail = $smtp->send($to, $headers, $body);


            ?>

            </div><!-- #content -->
        </div><!-- #primary -->

<?php get_sidebar(); ?>
<?php get_footer(); ?>
4

2 に答える 2

1
<form method="post" action="../contactformsubmit">

アクション URL がフォームを正しく指していることを確認する必要があります。上記の現在のものは、contactformsubmit がコンタクト フォームの 1 つ上のディレクトリであるかどうかを確認しています。同じフォルダにある可能性が高いので、試してください:

<form method="post" action="contactformsubmit">

また、拡張機能を使用するつもりだった場合、特定の SEO 設定はわかりませんが、これもあなたが意図したものである可能性があります。

<form method="post" action="contactformsubmit.php">

これらが機能しない場合は、お問い合わせフォームと contactformsubmit のファイルパスと完全な名前を投稿してください。URL を正しく設定できるようになります。

于 2012-12-15T23:50:49.140 に答える
0

そのため、一番上のフォーム<p><label>Name: </label><input type="text" name="name"/></p>を値に置き換えて<p><label>Email: </label><input type="text" name="email"/></p>値を変更するだけで問題を解決することができました。それだけです:)それは間隔の問題だったと思うのでそれが理由かもしれません。

于 2012-12-16T19:10:39.050 に答える