-1

这里可能有一些很简单的东西我错过了,但我似乎无法弄清楚。

我正在尝试使用 GET 将 PHP 变量“$session”从一个 PHP 页面传递到另一个 PHP 页面。GET 显示在新 URL 中,但该值未传递到页面,以便我可以检索它。下面是相关代码。

在 Index.php 主页面上。

<div class="mapgroup">
  <table>
    <tr>
       <td></td>
       <td id="refreshKML" ></td>
       <?php echo "<td><a href='3D-Earth.php?session=$session' title='Full Size Google Earth' target='_blank' >Click here</a> for full size Google Earth</td>"; ?>
    </tr>
  </table>
  <div id="map3d"></div>
</div>

使用 GET 将“$session”变量传递给 3D-Earth.php,并且正确的值显示在 URL 中。但是,当我尝试使用以下方法检索变量时:

<?php
  $session = $_GET["session"];
?>

然后尝试创建一个javascript变量:

<script>
  var session = <?php echo $session; ?>;
</script>

我将使用它来连接以下字符串:

var href = 'http://localhost/satellites/' + session + '/master.kml';

什么都没有通过。

我感谢任何人可以提供的任何帮助。提前致谢。

此外,我在 3D-Earth.php 页面底部插入了以下代码,以验证 GET 是否通过。

  <div>
    <table><p style='color:white;' >Hello " <?php echo $session; ?> " world!</p></table>
  </div>

结果是一个空字符串,显示: Hello " " World! 有谁知道我可能做错了什么?

4

5 回答 5

1

试试这样:

var session = '<?php echo $session; ?>';
于 2013-04-24T06:40:57.933 回答
1

我建议停止使用可能与 php 保留字冲突的名称,如“会话”。也许这不是这里的问题,但避免了许多其他问题和困惑。

同样在javascript中将回声放在引号中:

    var session = '<?php echo $session; ?>';
于 2013-04-24T07:15:36.053 回答
0

你试过把这段代码

  <script>
  var session = <?php echo $session; ?>;
  </script>

在此代码下??

 <?php
  $session = $_GET["session"];
 ?>
于 2013-04-24T07:22:11.217 回答
0

You should put a single quotes around your variable like this

var session = '<?php echo $session; ?>';
于 2013-04-24T06:41:33.417 回答
0

正如上面的答案所说,当你想在javascript中使用它时,你必须在php语句周围加上单引号。所以 var session = 'php 语句'; 是正确的方法。

于 2013-04-24T06:46:30.050 回答