1

ラジオボタン(var1)といくつかのチェックボックス(var2)からデータを読み込むために以下を書きました

   require('config.php');

  $con = mysql_connect("localhost", $db_username, $db_password);
    if (!$con)
    {
      die('Could not connect: ' . mysql_error());
    }
    mysql_select_db($db_name, $con);

  $var1 = $_GET['var1'];
  $var1 = mysql_real_escape_string( $var1 );
  $var2 = $_GET['var2'];
  $var2 = mysql_real_escape_string( $var2 );  

  $running_total = 0;
  $last_update = "SELECT * FROM $db_tablename ORDER BY id DESC LIMIT 1";
  $result = mysql_query($last_update);

 $insert_query = "INSERT INTO $db_tablename (var1, var2) ";
  $insert_query .= sprintf( "VALUES('%s', '%s')", $var1, $var2);

  $insert_result = mysql_query($insert_query);
  if(!$insert_result) {
    die('insert query failed' . mysql_error());
  }

  mysql_close($con)

入力htmlは次のようになります...

<input type="radio" name="var1" value="value1">Test 1</input>
<input type="radio" name="var1" value="value2">Test 2</input>
<input type="radio" name="var1" value="value3">Test 3</input>
<input type="radio" name="var1" value="value4">Test 4</input>

<input type="checkbox" name="var2" value="checkbox1">CB 1</input>
<input type="checkbox" name="var2" value="checkbox2">CB 1</input>
<input type="checkbox" name="var2" value="checkbox3">CB 1</input>
<input type="checkbox" name="var2" value="checkbox4">CB 1</input>

すべてが期待どおりに機能しますが、var2 では複数のチェックボックスを選択できるため、複数の値を保存したいと考えています。これを配列として行う必要があることはわかっていますが、うまくいきません。

誰かが私に指摘できる解決策や例を手伝ったり、持ったりできますか?

4

3 に答える 3

2

それは次のようvar2[]になりname、結果を次のように表示します

foreach($_POST['var2'] as $checkedItem)
{
    echo $checkedItem;
}
于 2013-02-06T00:17:49.410 に答える
1

html: `

<input type="radio" name="var1" value="value1">Test 1</input>
<input type="radio" name="var1" value="value2">Test 2</input>

<input type="checkbox" name="var2[]" value="check" /> CB 1
<input type="checkbox" name="var2[]" value="check" /> CB 2

`

そしてSQL:

Array $_POST['var2'] contains the checkboxes.

于 2013-02-06T00:27:10.727 に答える
0

var1の名前を「var1[]」に変更し、var2の名前を「var2[]」に変更します。

 $var1 = $_GET['var1'];
 $var2 = $_GET['var2'];
 echo count($var1);
 echo count($var2);

Gl mf

于 2013-02-06T00:16:44.727 に答える