1

ここにPHPルーキー...

フォーム メールの php コードに if/elseif ステートメントを挿入しようとしています。

ユーザーが「Sandy」を選択した場合、電子メールは Sandy の電子メール アドレスに送信されます。ユーザーが「スティーブ」を選択した場合、スティーブのメールアドレスなどに送信します。これまでに持っているコードは次のとおりです。アドバイスをいただければ幸いです。

<?php

require_once('phpmailer/class.phpmailer.php');

$mail = new PHPMailer();

if( isset( $_POST['template-contactform-submit'] ) AND $_POST['template-contactform-submit'] == 'submit' ) {

if( $_POST['template-contactform-name'] != '' AND $_POST['template-contactform-email'] != '' AND $_POST['template-contactform-subject'] != '' AND $_POST['template-contactform-message'] != '' ) {

    $name = $_POST['template-contactform-name'];

    $email = $_POST['template-contactform-email'];

    $subject = $_POST['template-contactform-subject'];

    $message = $_POST['template-contactform-message'];

    $botcheck = $_POST['template-contactform-botcheck'];

    if( $_POST['template-contactform-employee'] = 'Sandy' ):

        {

        $toemail = 'sandy@example.com';

        $toname = 'Sandy';

        }


    elseif( $_POST['template-contactform-employee'] = 'Steve' ):

        {

        $toemail = 'steve@example.com';

        $toname = 'Steve';

        }

    elseif( $_POST['template-contactform-employee'] = 'Nick' ):

        {

        $toemail = 'nick@example.com';

        $toname = 'Nick';

        }

    else: {

        $toemail = "support@example.com";

        $toname = "Support";

        }

    endif;

    $body = "$message";

    if( $botcheck == '' ) {

        $mail->SetFrom( $email , $name );

        $mail->AddReplyTo( $email , $name );

        $mail->AddAddress( $toemail , $toname );

        $mail->Subject = $subject;

        $mail->MsgHTML( $body );

        $sendEmail = $mail->Send();

        if( $sendEmail == true ):

            echo '<div class="alert alert-success"><button type="button" class="close" data-dismiss="alert">&times;</button>We have <strong>successfully</strong> received your Message and will get Back to you as soon as possible.</div>';

        else:

            echo '<div class="alert alert-error"><button type="button" class="close" data-dismiss="alert">&times;</button>Email <strong>could not</strong> be sent due to some Unexpected Error. Please Try Again later.<br /><br /><strong>Reason:</strong><br />' . $mail->ErrorInfo . '</div>';

        endif;

    } else {

        echo '<div class="alert alert-error"><button type="button" class="close" data-dismiss="alert">&times;</button>Bot <strong>Detected</strong>.! Clean yourself Botster.!</div>';

    }

} else {

    echo '<div class="alert alert-error"><button type="button" class="close" data-dismiss="alert">&times;</button>Please <strong>Fill up</strong> all the Fields and Try Again.</div>';

}

} else {

echo '<div class="alert alert-error"><button type="button" class="close" data-dismiss="alert">&times;</button>An <strong>unexpected error</strong> occured. Please Try Again later.</div>';

}

?>
4

1 に答える 1

1

@andrewsi のこのソリューションは機能しました。私のエラーを見つけてくれてありがとう!

if( $_POST['template-contactform-employee'] = 'Sandy')は間違っています -=ではなく等価チェックに使用しています==。を試してif( $_POST['template-contactform-employee'] == 'Sandy')、それが異なるかどうかを確認してください (各 if 行を修正する必要があります)。

于 2013-11-08T16:14:57.310 に答える