ホームページ >バックエンド開発 >PHPチュートリアル >チェックボックスで選択された値を取得するにはどうすればよいですか?
これはトップページで、「部署名」と「副氏名」は別のページからjqueryで取得したデータで、返されるのは下のチェックボックスです。このページからは js を使用してこれらのチェックボックスを見つけることができないようです。そのため、php を使用する必要がありましたが、これはコードの一部です。 user は の名前です。チェックボックス。
$user=$_POST['user'];
$arr=array();
$darr= array_diff($arr,$user); ); if(!empty($ user)){
for($ i< count($ user); $ i ++){)
]。 '".$user[$i]."'");
for ($j=0;$j<=count($darr);$j++)
{ ); if($darr[$j]==$rowf['uid'])
unset($darr[$j]); se
$db->query( "メンバーの更新セット fuchu='0 ' where uid='".$darr[$j]."'"); 選択されていないチェックボックスを区別します。しかし、何度も試しましたが、主な問題は、$_POST['user'] が選択されているかどうかに関係なく、クリックされたデータを返すことです。この場合、選択を解除することはできません。チェックされていないデータ?
ディスカッション (解決策) への返信
データの送信方法を識別するための HTML コードを投稿してください
または print_r($_POST) 結果を投稿してください
データの送信方法を識別するための HTML コードを投稿してください
または結果を print_r($_POST) して投稿してください
print_r($_POST); 表示される結果は 2 つの select の値であり、役に立ちません。
Array ([出発] => 2 [府中] => 112 [送信] => Submit )
これはチェックボックスを取得するための jquery コードです
//city onchange
$('#府中').change(function() { $.get("getDepart.php", {category:'user', city:city,province:province}, function(data) { //アラート(データ); }); $sql="select * from members left join userclass on members.flag=userclass.flagid where amidright=4 and groupid=".$_REQUEST['province'];
$ result=$db->query($ sql); etch_array($result) ) {
if($row['府中']==$_REQUEST['city']){
$str.= $row['ユーザー名'];
$str.= "< input type='checkbox' id='user' selected='true name='user[]' value=".$row['uid' ]。 "&gt;&nbsp;"; $ row ['username'];
提出データ配列にユーザ項目がありません([出発] => 2 [府中] => 112 [提出] => Submit)
提出されていないので当然出来ません処理済み
#2 下の部分は、チェックボックス文字列を生成するための PHP のコードにすぎません。チェックボックスを
は提出されていないので当然処理できません
# 2 下の部分は、PHP がチェックボックス文字列を生成するためのコードに過ぎません。チェックボックスを
の形式に配置する必要があるという意味ではありません。では、なぜ print_r なのか($user) と print_r( $darr) にはデータがありますか?
送信されていない場合は当然処理できません
#2 下の部分は PHP がチェックボックス文字列を生成するコードだけです フォームにチェックボックスを入れなければならないというわけではありません。
この種のページ形式を使用するより適切な方法は何ですか?
If print_r($_POST) は Array ( [出発] => 2 [府中] => 112 [送信] => 送信 )
$user はどのように使用しますか? ? ?
If print_r($_POST);出発] => 2 [府中] => 112 [送信] => 送信 )
$user はどのように使用しますか? ? ?
私のコードは if(isset($_POST['user']) にあり、内部のコードは実行できます
If print_r($_POST); は Array ( [出発] => 2 [府中] => 112 [送信] ] => 送信 )
$user はどのように使用しますか?
チェックボックスを選択した後にのみコンテンツが表示されます:
Array ( [ 1] => 117 ) Array ( [出発] => 2 [府中] => 112 [ユーザー] => Array ( [0] => 124 ) [送信] => 送信 )
If print_r($_POST); は Array ( [出発] => 2 [府中] => 112 [送信] => 送信 )
$user はどのように使用しますか?
選択すると応答がありません。
チェックボックスが選択されていない場合、送信されません。
チェックボックスが選択されていない場合、送信されません
しかし、array_diff ステートメントを使用した後の結果は私が望んでいたものではありません。何が問題だったのかわかりません。助けてください。
$darr= array_diff($arr,$user) という意味です。 ); これは?
$darr は空の配列です。なぜこれを行う必要があるのかわかりません。
$darr= array_diff($arr,$user);
$darr これは空の配列ですが、なぜこれを行うのかわかりません
メソッドを変更して、チェックボックスをバックグラウンドから取得する代わりにフロントデスクに書き込みました。
$("#btnSubmit").bind という問題が発生しました。 ( "クリック", function () {
var result = new Array();
$("[name = user]:checkbox").each(function () {
if ( $ (this).is(":checked")) {
); ("#hdtxt").val(result.join(",")); // アラート($("#hdtxt").val());
alert(userid) });
この選択は応答しません。これはなぜですか?上記の $userid をエコーすると、値があることがわかります。 $userid を数値に変更して機能する場合、何が起こっているのでしょうか?
$darr= array_diff($arr,$user); ということですか?
$user 配列に要素がいくつあっても、$arr は空の配列です。
$darr は空の配列です。なぜこれを行う必要があるのかわかりません。
助けてください。このプロジェクトの最後の問題は別の方法で解決されましたが、$_GET の変数を jquery に代入できない理由がまだわかりません。