将Javascript变量值传递给PHP变量

时间:2017-08-08 12:30:52

标签: javascript php jquery ajax

我知道之前曾问过这个问题。我检查了大多数旧线程,但我仍然无法使其工作。

我将一个变量从一个页面中的javascript传递到另一个页面,它运行正常然后我想将第二页上的变量从javascript传递给php变量。 这是我的代码。

第1页:

<!DOCTYPE html>
<html>
 <head>

  <title>Tutorial</title> 
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" /> 
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.2/css/bootstrap-select.min.css"> 
  <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-select/1.12.2/js/bootstrap-select.min.js"></script>
  <script>
  function openInNewTab(url) {
  var win = window.open(url, '_blank');
  win.focus();}
  </script>

 </head>

 <body>
  <br /><br />
  <div class="container" style="margin-left:150px;">
   <br />
   <h4>Select Your columns</h4>
   <br />
   <div class="col-md-4" style="margin-left:-80px;">
    <form method="post" id="multiple_select_form">
     <select name="framework" id="framework" class="form-control selectpicker"  data-live-search="true" multiple>
      <option value="Laravel">Laravel</option>
      <option value="Symfony">Symfony</option>
      <option value="Codeigniter">Codeigniter</option>
      <option value="CakePHP">CakePHP</option>
      <option value="Zend">Zend</option>
      <option value="Yii">Yii</option>
      <option value="Slim">Slim</option>
     </select>
     <br /><br />
     <input type="hidden" name="hidden_framework" id="hidden_framework" />
     <input type="submit" name="submit" class="btn btn-info" value="Submit" />
    </form>
    <br />   
   </div>
  </div>
 </body>
</html>

<script>
$(document).ready(function(){
 $('.selectpicker').selectpicker();

 $('#framework').change(function(){
  $('#hidden_framework').val($('#framework').val());
 });

  $('#multiple_select_form').on('submit', function(event){
  event.preventDefault();
  if($('#framework').val() != '')
  { 
window.localStorage.setItem('test', $('#framework').val());
openInNewTab('showD.php');
$('.selectpicker').selectpicker('val', '');
  }
  else
  {
   alert("Please select framework");
   return false;
  }
 });
});
</script>

变量'test'获取$('#framework')的值.val()然后我将此变量传递给第二页的javascript

showD.php:

<script>
var someNewVariableToStoreItIn = window.localStorage.getItem('test');
alert (someNewVariableToStoreItIn);
</script>

我可以看到变量正确传递然后我想添加一个php部分,其中一个新变量将获得“someNewVariableToStoreItIn”的值,所以当我运行

<?php   
echo $PHPvar; 
?> 

所以它会显示与“someNewVariableToStoreItIn”相同的值。 我找到了许多带有ajax的解决方案,我几天都在尝试,但我无法让它工作。任何帮助非常感谢。谢谢。

0 个答案:

没有答案