2016-12-09 6 views
-1

トグルスイッチの値を自分のURLに送り、PHPで取得しようとしています。コードが動作しています。問題は、ページを変更するたびに、またはバックボタンを使用してページを再読み込みしてトグルスイッチが機能するようにする必要があるたびに、同じページにとどまっていないときです。何が間違っているの?トグルスイッチからの値の取得が一貫していません

この私のコード:私はそれがから一部を移動することで、動作するようになった

<?php 
    $status_water = $_GET['water_swicth']; 
    $status_light = $_GET['light_swicth']; 
    $status_air = $_GET['air_swicth']; 

    if ($status_water == "on") 
     { $water_on = "selected"; 
      $file = fopen("light.json", "w") or die("can't open file"); 
      fwrite($file, '{"water": "on", "light":off, "air":off}'); 
      fclose($file); 
     } 
    if ($status_water == "off") { 
     $file = fopen("light.json", "w") or die("can't open file"); 
      fwrite($file, '{"water": "off", "light":"off", "air":off}'); 
     fclose($file); 
    } 
    ?> 
    <html> 

    <head> 
     <meta name="viewport" content="width=device-width, initial-scale=1"> 
     <link rel="stylesheet" href="css/MyTheme.min.css" /> 
     <link rel="stylesheet" href="css/jquery.mobile.icons.min.css" /> 
     <link rel="stylesheet" href="css/jquery.mobile.structure-1.4.5.min.css" /> 
     <script src="http://code.jquery.com/jquery-1.11.3.min.js"></script> 
     <script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script> 
    </head> 

    <body> 
     <div data-role="footer"> 
      <div data-role="navbar"> 
       <ul> 
        <li style="font-size: 14px;">Water 
         <div id="water_switch"> 
          <select name="water" id="water" data-role="flipswitch" data-mini="true"> 
           <option value="off" myTag="off">Off</option> 
           <option value="on" myTag="on" <?php echo $water_on; ?>>On</option> 
          </select> 
         </div> 
        </li> 
      </div> 
     </div> 
     </div> 
     <script type="text/javascript"> 
      $(document).ready(function() { 
       $('#water_switch').on('click', function() { 
        var checkStatus = $('option:selected', this).attr('mytag'); 
        window.location.href = "stats.php?id=<?php echo $id; ?>&water_swicth=" + checkStatus; 
       }); 
      }); 
     </script> 
    </body> 

    </html> 
+0

クッキーやセッションがデータを格納するために、前方の方法だろう。 – Kitson88

+0

私の問題は、データを保存することではなく、同じページにいるとすぐに機能するため、データを追跡する必要はありません。私の問題は、ページから離れて移動するときです。スクリプトは機能しません。私はページをリフレッシュする必要があります。 – mounim

答えて

関連する問題