Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果单击按钮,如何编辑PHP变量?_Php_Javascript - Fatal编程技术网

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

如果单击按钮,如何编辑PHP变量?,php,javascript,Php,Javascript,我想知道如果我点击一个按钮,我是如何改变一个PHP变量的。假设我有以下网页: _______________________________________________ | Menu | A Webpage | | | | | - item1 | | | - item2 |

我想知道如果我点击一个按钮,我是如何改变一个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 />

函数test1()
{
警惕(“你好,世界1!”);
}
函数test2()
{
警惕(“你好,世界2!”);
}
函数test3()
{
警惕(“你好,世界3!”);
}
函数test4()
{
警惕(“你好,世界4!”);
}








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

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


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

函数test1()
{
}


有了它,我可以轻松地将页面更改为用户希望看到的内容,而无需创建多个页面。但我的问题是:‘我怎样才能做到这一点’


我想提前感谢大家

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


您需要使用Ajax请求来完成此操作。

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

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

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

    jqxhr.success(function(data) {
        $('#content').html(data);
    });
});
当您单击
中的链接时,上面的操作将尝试从运行在同一目录phpscript.php中的脚本获取内容。这将使用数据变量确定要返回的页面数据。完成后,它会将脚本返回的HTML输出到内容容器中,例如


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

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

因为此变量在执行此页后将不存在。您可以在何处使用某些会话变量

也 如果我们想设置一些值,我们必须使用赋值运算符(=)

要设置php变量,可以使用ajax调用,
在服务器中,应该有一个页面来更改服务器上PHP运行的值,客户端上javascript运行。如果你想改变一个php变量,你需要向服务器发送一个请求来改变它并重新加载改变的内容。你不能像那样混合使用php和javascript。一个是服务器端,另一个是客户端。但是他们之间有一种沟通的方式。发布生成您表的代码,我们可以从中帮助您。所以我必须使用Post和fetch?你能给我一个基于我上面给出的例子的例子吗?你不能用JavaScript修改PHP,但是你可以使用JavaScript中的http请求来调用PHP脚本,这样你就不需要刷新页面,然后你就可以提供一个“一体式网站”,我会看一下。谢谢你的回答。花点时间来理解这个概念。使用Ajax,您将检索您想要访问的其他页面的所有HTML内容,包括页眉和页脚。在一个普通的Ajax场景中,您的第二个页面(您想要从中获取信息的页面)只包含要收集的信息,并将其放入您想要的容器中。在您熟悉该技术并进行一些测试后,如果需要帮助,请创建一个新问题并关闭此问题。