如果单击按钮,如何编辑PHP变量?
我想知道如果我点击一个按钮,我是如何改变一个PHP变量的。假设我有以下网页:如果单击按钮,如何编辑PHP变量?,php,javascript,Php,Javascript,我想知道如果我点击一个按钮,我是如何改变一个PHP变量的。假设我有以下网页: _______________________________________________ | Menu | A Webpage | | | | | - item1 | | | - item2 |
_______________________________________________
| 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场景中,您的第二个页面(您想要从中获取信息的页面)只包含要收集的信息,并将其放入您想要的容器中。在您熟悉该技术并进行一些测试后,如果需要帮助,请创建一个新问题并关闭此问题。