如果单击按钮,如何编辑PHP变量?

时间:2013-06-26 08:17:27

标签: php javascript

我想知道如果单击按钮我如何更改PHP变量。假设我有以下网页:

_______________________________________________
|   Menu    |         A Webpage                |
|           |                                  |
| - item1   |                                  |
| - item2   |                                  |
| - item3   |          Content                 |
| - item4   |                                  |
|           |                                  |
|           |                                  |

如果我点击“item1”,页面会随着与该按钮链接的用户相关的数据而变化。其他项目也是如此。

这是我目前的代码:

<script>
function test1()
{
alert("Hello World1!");
}
function test2()
{
alert("Hello World2!");
}
function test3()
{
alert("Hello World3!");
}
function test4()
{
alert("Hello World4!");
}


</script>


    <a id="test1" href="#" onClick="test1();"><h5>item1</h5></a><br /><br />
    <a id="test2" href="#" onClick="test2();"><h5>item2</h5></a><br /><br />
    <a id="test3" href="#" onClick="test3();"><h5>item3</h5></a><br /><br />
    <a id="test4" href="#" onClick="test4();"><h5>item4</h5></a><br /><br />

这足以让窗口出现或隐藏分区或其他东西。但我想要的是如果单击一个按钮我想要更改PHP变量。像这样:

<script>
function test1()
{
<? $userid == '1'; ?>
}
</script>


    <a id="test1" href="#" onClick="test1();"><h5>item1</h5></a><br /><br />

有了这个,我可以轻松地将页面更改为用户想要查看的内容,而无需创建多个页面。但我的问题是:'我怎么能让这成为可能'?

我想提前感谢你们!

4 个答案:

答案 0 :(得分:1)

PHP与JavaScript语言或语言类型不同。 PHP以线性方式运行,一旦处理完成,您就不能再返回并再次调用函数或更新变量。 PHP将文件顶部的代码运行到文件的底部,当它到达底部时,它就会结束。

最接近您正在寻找的解决方案是使用jQuery AJAX调用PHP脚本来更新变量。在我看来,您想使用AJAX来更改页面数据。您可以使用以下示例实现此目的。

$('#menu A').click(function (e) {
    var jqxhr = $.get('phpscript.php?data=' + $(this).attr('href'));

    jqxhr.success(function(data) {
        $('#content').html(data);
    });
});

以上操作是当您单击<div id="menu" />中的链接时,它将尝试从名为phpscript.php的同一目录中运行的脚本中获取内容。这使用数据变量来确定要返回的页面数据。完成后,它会将脚本返回的HTML输出到#content容器中,例如<div id="content">

我希望我能正确理解你的问题。还要记住,这需要一点验证,检查你得到200 OK,实际上收到数据等。

答案 1 :(得分:0)

使用Ajax,这样您可以在某个内容中加载网页内容,例如示例中的div,而无需重新加载整个页面。

Ajax & PHP

答案 2 :(得分:0)

您需要使用Ajax请求来执行此操作。

答案 3 :(得分:0)

我不明白你为什么要改变php变量的值

因为执行此页面后该变量不存在。你在哪里可以使用一些会话变量

也 如果我们想设置一些值,我们必须赋值operator(=)

设置php变量你可以使用ajax调用, 在服务器中应该有一个页面来改变值