如何在同一页面上更新会话值

时间:2013-08-04 16:44:50

标签: php javascript

我正在尝试制作与分页相关的内容,其中我有一个大约400-500个值的数组。 我想一次显示9个值,然后点击“下一步”按钮后我想再显示9个..

这是我用来调用按钮的JS函数onclick的部分代码,该函数的作用是从浏览器获取计数并将其设置为下一个值。

<?php
session_start();
$_SESSION['count']=9;

echo "<script type='text/javascript'>
function changelistnext()
{ ";
    $c=$_SESSION['count'];
    $c=$c+1;
    $e=$c+9;
    $_SESSION['count']=$e;    
echo "
alert($c)
alert($e)
}
</script>";
 ?>  
<button id='next' value='next' onclick='changelistnext()'>Next</button>

但每次我点击下一个它都显示相同的值....

1 个答案:

答案 0 :(得分:0)

不能混合使用JavaScript和PHP ,就像它们是同一个一样。

JavaScript是一种客户端语言,可在您的浏览器中执行。

另一方面,PHP是服务器脚本会话也保留在服务器上。


如果您在浏览器中打开页面的源代码,您将看到会话内容不存在 - 它是在生成页面时由PHP执行的。您不能直接在JS中使用会话。

该页面基本上包含:

<script type='text/javascript'>
function changelistnext()
{
    alert(some number) // value of C when the page was generated on server
    alert(some number) // ditto for E
}
</script>

您可以使用Ajax调用来询问服务器上的某些脚本,为您提供下一个“页面”的数据 - PHP脚本可以访问Session变量并将您想要的内容发送回浏览器。