2011-04-08 4 views
0

안녕 얘들 아 인스턴트 메신저 및 인스턴트 사람들이 온라인으로 도서를 제출 양식을 만들고있어.전자 메일 확인란에 PHP 제출 양식

나는 제대로 작동하지만 나는 엑스트라에 체크 박스를 추가하고 사용자 및 나에게 보낸 확인 이메일에 명시된 엑스트라를 갖고 싶습니다.

<tr> 
    <td height="10" align="right" class="align_right">Deodoriser:&nbsp;</td> 
    <td> 
     <input type="text" name="deodoriser" id="deodoriser" value="<?php echo $deodoriser?>" onchange="checkFieldBack(this)"/> 
    </td> 
</tr> 

<tr> 
    <td height="30" align="right" class="align_right">Carpet Protector (5 litre):&nbsp;</td> 
    <td> 
     <input type="text" name="carpet" id="carpet" value="<?php echo $carpet?>" onchange="checkFieldBack(this)"/> 
    </td> 
</tr> 
<tr> 
    <td height="30" align="right" class="align_right">Carpet Repair Tools:&nbsp;</td> 
    <td> 
     <input type="text" name="carpetrepair" id="carpetrepair" value="<?php echo $carpetrepair?>" onchange="checkFieldBack(this)"/> 
    </td> 
</tr> 
<tr> 
    <td height="30" align="right" class="align_right">Furniture Moving Equipment:&nbsp;</td> 
    <td> 
     <input type="text" name="furniture" id="furniture" value="<?php echo $furniture?>" onchange="checkFieldBack(this)"/> 
    </td> 
</tr> 
<tr> 
    <td height="30" align="right" class="align_right">Furniture Tabs:&nbsp;</td> 
    <td> 
     <input type="text" name="tabs" id="tabs" value="<?php echo $tabs?>" onchange="checkFieldBack(this)"/> 
    </td> 
</tr> 
<tr> 
    <td height="30" align="right" class="align_right">Urine Decontamination Treatment:&nbsp;</td> 
    <td> 
     <input type="text" name="urine" id="urine" value="<?php echo $urine?>" onchange="checkFieldBack(this)"/> 
    </td> 
</tr> 

텍스트 대신이 확인란을 사용하고 싶습니다. 이이 확인 이메일을 내가 여기에 모든 유사한 질문을 통해보고하고 작업을 진행하는 일에 대한 시도하고 단지 할 수없는 한 어떤 도움/조언을

$message .="Name: ".$name; 
$message .="<br />Email: ".$email; 
$message .="<br />Phone: ".$phone; 
$message .="<br />Quantity: ".$qty; 
$message .="<br />Address: ".$comments; 
$message .="<br />Drop off Time: ".$dropoff; 
$message .="<br />Machine: ".$eventInf[0].; 
$message .="<br />Deodoriser: ".$deodoriser; 
$message .="<br />Carpet Protector: ".$carpet; 
$message .="<br />Carpet Repair Tools: ".$carpetrepair; 
$message .="<br />Furniture Moving Equipment: ".$furniture; 
$message .="<br />Furniture Tabs: ".$tabs; 
$message .="<br />Urine Decontamination Treatment: ".$urine;    
$message .="<br />Booking date: ".$eventInf[2]."<br />"; 
$message .="<br />Reservation Status: Not Confirmed<br />"; 
$message .="<br /><br />Kind Regards, <br /> ".$_SERVER['HTTP_HOST']." Website";  

감사하다

$deodoriser = (!empty($_REQUEST["deodoriser"]))?strip_tags(str_replace("'","`",$_REQUEST["deodoriser"])):''; 
    $carpet = (!empty($_REQUEST["carpet"]))?strip_tags(str_replace("'","`",$_REQUEST["carpet"])):''; 
    $carpetrepair = (!empty($_REQUEST["carpetrepair"]))?strip_tags(str_replace("'","`",$_REQUEST["carpetrepair"])):''; 
    $furniture = (!empty($_REQUEST["furniture"]))?strip_tags(str_replace("'","`",$_REQUEST["furniture"])):''; 
    $tabs = (!empty($_REQUEST["tabs"]))?strip_tags(str_replace("'","`",$_REQUEST["tabs"])):''; 
    $urine = (!empty($_REQUEST["urine"]))?strip_tags(str_replace("'","`",$_REQUEST["urine"])):''; 

변수는 그것.

답변

1
당신은 체크 박스를 사용하여 배열의 값을 저장할 수 있습니다

:

<input type="checkbox" name="extras[]" value="Deodoriser" /> 
<input type="checkbox" name="extras[]" value="Carpet" /> 
<input type="checkbox" name="extras[]" value="Furniture" /> 

그런 다음 루프 $ _POST [ 'extras'] 배열을 통해 값을 출력하십시오.

foreach($_POST['extras'] as $extra) 
{ 
    $message .="<br />Extra: ".$extra; 
} 
0

입력 유형을 "확인란"으로 설정하십시오.

0

대신 strip_tags(str_replace()) 문자열을 넣으십시오. 예 :

$deodoriser = !empty($_REQUEST["deodoriser"]) ? 'Deodoriser' : ''; 

html로 설정하면 type="checkbox"이 표시됩니다.

그리고 value= 대신 사전 검사를 받으려면 각각 checked="checked"을 HTML에 설정해야합니다.

+0

죄송합니다. 제가 틀린 것을 붙여 넣었습니다. 모든 체크 박스를 이미 입력란으로 변경했습니다. 이 이메일은 체크 박스의 결과를 이메일로 보낼 것입니까? – Simon

+0

체크 박스를 선택하면 $ _REQUEST 배열에 저장되며 거기에서 이메일에 추가 할 수 있습니다. 이메일에있는 확인란의 내용이 포함 된 것처럼 보이지 않습니다. –

+0

내 실수. 잘못된 이메일을 붙여 넣기 때문에 정확한 이메일을 추가했습니다. – Simon

1

HTML 양식에서 입력 유형 확인란으로 만들 수 있습니다.

<input type="checkbox" name="options[]" value="value"/> 

양식을 제출

은, 모든의 값이 체크 박스가 GET 또는 내부 배열로 사용할 수 있습니다 확인 : 모든 체크 박스는 PHP 배열을 나타 내기 위해 마지막에 대괄호로, 같은 이름을 가지고 있어야 이름으로 POST 자동 전역 배열은 당신이 준, 그래서 당신은 할 수있는이 같은 루프 :

$options = $_GET['options']; 
foreach ($options as $option) { 
    // $option will now hold the "value" of the checkbox being processed 
} 
관련 문제