Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.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
如何在不重新加载页面的情况下使用javascript按钮单击更改php的变量_Php_Javascript_Mysql_Variables - Fatal编程技术网

如何在不重新加载页面的情况下使用javascript按钮单击更改php的变量

如何在不重新加载页面的情况下使用javascript按钮单击更改php的变量,php,javascript,mysql,variables,Php,Javascript,Mysql,Variables,我已经创建了一个新闻区,在这里我一次显示3个大拇指的新闻,源代码来自mysql数据库。 我使用了如下查询: $eu=0; $limit=3; $query2=mysql_query(“从newsorderbyIDDESC LIMIT$eu,$LIMIT中选择*) 现在我还创建了两个按钮,如下所示 我想用这个按钮来显示接下来的3个拇指onclick和prev 3个拇指。但无法更改查询内的值,即$eu 如何使用javascript或任何其他建议更改mysql查询中的$eu值,而且我不希望通过传递查询

我已经创建了一个新闻区,在这里我一次显示3个大拇指的新闻,源代码来自mysql数据库。 我使用了如下查询:

$eu=0; $limit=3; $query2=mysql_query(“从
news
orderby
ID
DESC LIMIT$eu,$LIMIT中选择*)

现在我还创建了两个按钮,如下所示

我想用这个按钮来显示接下来的3个拇指onclick和prev 3个拇指。但无法更改查询内的值,即$eu


如何使用javascript或任何其他建议更改mysql查询中的$eu值,而且我不希望通过传递查询参数来重新加载页面。我希望它不需要重新加载页面

您需要进行ajax调用,传入所需的$eu值(如3、6、9等),并传回新闻提要的内容,以替换现有的部分


有很多方法可以做到这一点,哪种方法最简单取决于您使用的框架。谷歌是你的朋友,这里有很多教程等。

你不能仅仅因为服务器端脚本已经运行,而Javascript是客户端脚本,就从Javascript更改php变量

我建议使用javascript向接受$eu作为参数的PHP脚本发送ajax请求

在该PHP中,使用$eu进行查询,并打印出搜索结果


在javascript中,在ajax请求成功时捕获此结果,并用结果处理/替换HTML中的某些元素

您不能直接从Javascript更改任何PHP脚本的值,因为PHP是在页面发送到浏览器(即服务器端)之前解析的,Javascript是由浏览器(即客户端)解析和执行的

完成这类事情有两种主要方式。如果您确实想影响PHP变量值,那么必须重新加载页面(例如使用HTML表单)。既然您说过不想这样做,那么正如其他人所建议的那样,您应该看看AJAX

简而言之,您将使用Javascript向PHP页面发送请求,该页面将运行上面的查询(您可以传递一个新值,以POST或GET数据的形式插入$eu),并返回结果,然后您将使用该结果更新页面上的显示。

试试这个 //PHP

//形式

<form method='post' >
< input type='submit' name='page[]' value='1' />
< input type='submit' name='page[]' value='2' />
< input type='submit' name='page[]' value='3' />
</form>


<?php
// Display logic
?>





AJAX听起来像是解决几乎所有问题的解决方案。请注意,PHP是服务器端的,JavaScript是客户端的。因此,JavaScript无法访问PHP。他说他想在不重新加载页面的情况下这样做。你可以在这里写代码,用ajax更改按钮点击时的$eu值,因为我不知道你写代码的ajax,我会理解的。我们会通知你的
<form method='post' >
< input type='submit' name='page[]' value='1' />
< input type='submit' name='page[]' value='2' />
< input type='submit' name='page[]' value='3' />
</form>


<?php
// Display logic
?>