1

PHP で機能的なフォームを作成しましたが、5 つのオプション (1 つ以上を選択できます) を含むチェックボックスがありますが、メールには 1 つのオプションしか表示されません。

HTML:

<label class="radio"><input type="checkbox" name="service" value="Web Design" />Web Design</label>
<label class="radio"><input type="checkbox" name="service" value="Graphic Design" />Graphic Design</label>
<label class="radio"><input type="checkbox" name="service" value="Brand Identity" />Brand Identity</label>
<label class="radio"><input type="checkbox" name="service" value="Online Marketing" />Online Marketing</label>
<label class="radio"><input type="checkbox" name="service" value="Other" />Other</label>

PHP: ($サービス)

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$website = $_POST['website'];
$service = $_POST['service'];
$description = $_POST['description'];
$inspiration = $_POST['inspiration'];
$budget = $_POST['budget'];
$deadline = $_POST['deadline'];
$formcontent=" From: $name \n Email: $email \n Phone: $phone \n Website: $website \n\n service: $service \n budget: $budget \n deadline: $deadline \n\n description: $description \n\n inspiration: $inspiration ";
$recipient = "myemail@gmail.com";
$subject = "Contact form";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You, your information has been received.";
?>
4

4 に答える 4

1

名前にarrayを使用します。ここで、service write there、service[]という名前を付けます。次に、multiple = "multiple"タグを使用します。php部分では、次を使用します。

<?php
$services=implode(',',mysql_real_escape_string($_post['service']));
print_r($services);
?>

ハッピーコーディング!

于 2012-10-16T08:26:24.247 に答える
1

同じ名前の要素が複数ある場合、配列構文を使用しない限り、そのうちの 1 つしか読み取ることができません。[]たとえばname=service[]、$_POST['service'] をすべてのサービスを含む配列として受け取ります。implodeを使用して文字列に変換できます。

$service = implode(' ', $_POST['service']);
于 2012-10-16T03:58:50.853 に答える
0

複数選択された値を配列として取得するには、フォームname="service[]"の代わりに (Array) を配置します。取得中に、次のように関数をname="service"使用して値を取得できますimplode

$services = implode(",", $_POST['service']);
于 2012-10-16T03:53:30.667 に答える
0

次のようなチェックボックスの単純な名前ではなく、ユーザー配列名:

<label class="radio"><input type="checkbox" name="service[]" value="Web Design" />Web Design</label>
<label class="radio"><input type="checkbox" name="service[]" value="Graphic Design" />Graphic Design</label>
<label class="radio"><input type="checkbox" name="service[]" value="Brand Identity" />Brand Identity</label>
<label class="radio"><input type="checkbox" name="service[]" value="Online Marketing" />Online Marketing</label>
<label class="radio"><input type="checkbox" name="service[]" value="Other" />Other</label>

print_r($_POST['service']);
// output
Array
(
    [0] => Web Design
    [1] => Graphic Design
    [2] => Brand Identity
    [3] => Online Marketing
    [4] => Other
)
于 2012-10-16T03:55:29.727 に答える