1

シンプルなコンタクトフォームを使おうとしている PHP 初心者です。私が持っているフィールドは、「名前」、「電子メール」、「電話」、および「メッセージ」です。「電話」フィールドで何をすべきかを理解しようとしています。「メッセージ」と同じ場所に出力して、電子メールが受信されたときにメッセージと電話番号の両方をメールの本文。どうすればいいですか?

    if( isset( $_POST['submit'] ) ) : 
        wp_mail( get_option( 'admin_email' ), 
        'Website Contact Form',
        ( isset($_POST['message'] ) ? $_POST['message'] : '(blank)' ), 
        'From: ' . ( isset( $_POST['from_name'] ) ? $_POST['from_name'] : 'Website Contact Form' ) . ' <' . ( isset( $_POST['from_email'] ) ? $_POST['from_email'] : get_option( 'admin_email' ) ). '>' . "\r\n" );
    $output = '<p>Thank you! Your message has been sent.</p>'; 
    else : 
        $output = '
<form action="" method="post"><ul>
    <li>
        <label for="from_name">Name</label>
        <input type="text" name="from_name" id="from_name" />
    </li>
    <li>
        <label for="from_email">Email</label>
        <input type="email" name="from_email" id="from_email" />
    </li>
    <li>
        <label for="from_tel">Phone</label>
        <input type="tel" name="from_tel" id="from_tel" />
    </li>
    <li>
        <textarea name="message" id="message"></textarea>
    </li>
    <li class="submit">
        <input name="submit" type="submit" value="Say Hello!" />
    </li>
</ul></form>';
    endif;
    return $output;
4

3 に答える 3

0

または、3 つの input type=text を使用します

(____) ___ - _____

それらをphpでマージします。

于 2012-09-18T00:52:46.323 に答える
0

これで電話番号を確認できます。

フロントエンドでは、JavaScript マスクを使用して入力フィールドを魅力的に見せることができます。

于 2012-09-18T02:33:38.677 に答える
0

のようなものはありません。ハイフンや中括弧などがある場合は削除した後、数字のみをtype=tel使用して検証するだけです。type=text

$_POST['tel'] = str_replace(array('-','(',')', ' ', '+'), '', $_POST['tel']);
if( is_numeric($_POST['tel']) === FALSE )
  echo 'Telephone # should consist of only numbers.';
于 2012-09-17T21:30:38.180 に答える