2017-01-01 8 views
1

ここで私は2つの配列を持っています1.response 2.selected_amenties、最初の配列値でチェックボックスに表示されました。今度はチェックされた値をにしたいと思うのでプールと電源バックアップ値は最初の配列(レスポンス)と同じですが、どうすればこのことができますか?2つの配列でチェックボックスをチェックする方法

<?php 
$response = Array 
(
    Array 
     (
      "id" => "57e2340eaebce1023152759b", 
      "name" => "Squash Court", 
      "amenityType" => "Sports" 
     ), 
    Array 
     (
      "id" => "57e23470aebce1023152759d", 
      "name" => "Swimming Pool", 
      "amenityType" => "Sports" 
     ), 
    Array 
     (
      "id" => "57e2347caebce1023152759e", 
      "name" => "Power Backup", 
      "amenityType" => "Convenience" 
     ), 
    Array 
     (
      "id" => "57e23486aebce1023152759f", 
      "name" => "Day Care Center", 
      "amenityType" => "Convenience" 
     ) 
); 

$selected_amenties = Array("0" => "Swimming Pool", 
          "1" => "Power Backup" 
         ); 
foreach($response as $amenity) 
{ 
?> 
<div class="checkbox"> 
<input type="checkbox" class="aminit" name="aminit" value="<?php echo $amenity['name']?>"><?php echo $amenity['name']?> 
</div> 
<?php 
} 
?> 

答えて

1

このようにしてみてください。

<?php 
foreach($response as $amenity) 
{ 
    $checked = in_array($amenity['name'], $selected_amenties) ? 'checked' : ''; 

    ?> 
    <div class="checkbox"> 
    <input type="checkbox" class="aminit" name="aminit" value="<?php echo $amenity['name'] ?>" <?php echo $checked; ?>><?php echo $amenity['name']?> 
    </div> 
<?php 
} 
?> 
+0

おかげメリーマファチュール・ラーマン –

+0

ようこそ。 @サグンタルカ –

0
$selected_amenties = array('Swimming Pool', 'Power Backup'); 

foreach($response as $amenity) { 
    $check = ''; 
    in_array($amenity, $selected_amenties) and $check = ' checked="checked" '; 
    echo '<div class="checkbox">'; 
    echo '<input type="checkbox" ' . $check . ' class="aminit" name="aminit" value="<?php echo $amenity['name']?>"><?php echo $amenity['name']?>'; 
    echo '</div>'; 
} 
関連する問題