-1

次のフォームがあるとします。

<form action="" method="post">
</BR>
<?php
// create two dropdowns with ajax
echo "<font id=\"categoria\"><select>\n";
echo "<option value='0'>Select the Firm</option> \n" ;
echo "</select></font>\n";
?>
<?php
echo "<font id=\"subcategoria\"><select>\n";
echo "<option value='0'>Select the Claims Hub</option> \n" ;
echo "</select></font>\n";
?>

<form method="post" align= "right">
<table >

    <tr><td>&nbsp;</td>
    <tr>
         <td style="text-align: left; ">Criminal  </td>
         <td align="left" >
            <input type="checkbox" name="mattertype" value="1" />
         </td>
    </tr>   
    <tr><td>&nbsp;</td>
    <tr>
         <td style="text-align: left; ">Labour  </td>
         <td align="left" >
            <input type="checkbox" name="mattertype" value="1" />
         </td>
    </tr>   
    <tr><td>&nbsp;</td>
    <tr>
         <td style="text-align: left; ">Civil  </td>
         <td align="left" >
            <input type="checkbox" name="mattertype" value="1" />
         </td>
    </tr>   
    <tr><td>&nbsp;</td>
     <tr>
         <td style="text-align: left; ">Active  </td>
         <td align="left" >
            <input type="checkbox" name="active" value="1" />
         </td>
    </tr>   
    <tr><td>&nbsp;</td>
    <tr>
        <td>&nbsp;</td>
        <td><input type="submit" name="submit" value="Add" align= "right" /></td>
    </tr>

</table>

チェックされたすべてのチェックボックスの新しいレコードとして次の情報を挿入する php コードをどのように記述しますか? たとえば、Civil、Labor、Active をチェックしました。読み取るために挿入する必要がある最初のレコードが必要になりました

ファーム エリア Mattertype アクティブ (私の sql テーブル)

カテゴリの値 サブカテゴリの値 Civl 1
カテゴリの値 サブカテゴリの値 労働 1

民事、労働、または刑事のチェックボックスのいずれかまたはすべてがチェックされている場合、カテゴリの値、サブカテゴリの値、最初にチェックされたチェックボックス (mattertype) を挿入する必要があります。

次に、2 番目のレコードで再びカテゴリの値、サブカテゴリの値、2 番目にチェックされたチェックボックス (マタータイプ)、およびアクティブがチェックされている場合はアクティブの 1 です。

等々。これが理にかなっていることを願っています。

4

3 に答える 3

1

最初に、値に配列を使用するように問題の種類のチェックボックスを変更し、値をそれぞれに固有のものに変更します (1 は刑事、2 は労働、3 は民事)。

<input type="checkbox" name="mattertype[]" value="1" />
<input type="checkbox" name="mattertype[]" value="2" />
<input type="checkbox" name="mattertype[]" value="3" />

PHP

$categoria = $_POST['categoria'];
$subcategoria = $_POST['subcategoria'];
$mattertypes = $_POST['mattertype'];
$active = $_POST['active'] == 1 ? 1 : 0;

//$matertypes will be an array so loop over it
foreach( $mattertypes as $type ) {
  switch( $type ) {
     case '1':
       $typename = "Criminal";
     break;
     case '2':
       $typename = "Labour";
     break;
     case '3':
       $typename = "Civil";
     break;
  }
  $SQL = "INSERT into mytable (categoria,subcategoria,mattertype,active) VALUES('$categoria','$subcategoria','$typename','$active')";

  //Do the call to database with the query.
}

もちろん、データをデータベースに入れる前にサニタイズします。

于 2013-08-21T10:03:15.343 に答える
0

チェックボックスの名前を name="mattertype[]"変更し、値も変更します。

次に、として投稿します$_POST['mattertype'];

于 2013-08-21T10:23:23.697 に答える
0

htmlで

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

PHPで

//get mattertype which are checked by

$_POST['mattertype'];// this is come as array then use according to your requirement
于 2013-08-21T09:56:20.353 に答える