1

PHP菜鸟在这里...

试图将 if/elseif 语句放入我的 php 代码中以获取表单电子邮件。

如果用户选择“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 回答