我有一个单页引号生成器,它的工作原理是将引号保存在2D数组中并生成一个随机数,以便每次刷新页面时使用PHP从数组中的匹配值中提取,我想更改此并使其按下按钮时只更改元素,减少对服务器的http请求。
我尝试了各种“onClick”方法,但它们似乎永远不会起作用,我假设这是我应该使用Javascript(或任何js库)的东西。按下按钮时我想要运行的功能是:
<?php
$max = max(array_map('count', $arrCSV));
$num = rand(0,$max);
$quote = $arrCSV[0][$num] . "." ;
echo $quote;
?>
非常感谢任何帮助。
答案 0 :(得分:5)
就像@Kameleon博士一样,单凭PHP无法做到这一点。
使用jQuery,您可以重新加载像这样的元素
$("#yourdiv").load("the/page/from/where/it/should/be/updated.php");
将其附加到按钮的点击事件
$("button").click(function() {
$("#yourdiv").load("the/page/from/where/it/should/be/updated.php");
});
答案 1 :(得分:2)
JQuery's load method可以在那里创造奇迹。
答案 2 :(得分:2)
这是一些有效的例子。
创建html页面:
<html>
<head>
<title>JS-ajax-PHP</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
<script>
// Let's use jQuery library:
$(document).ready(function() {
// get element with id refresh, on click do function...
$('#refresh').click(function(evt){
// get element with id report, load content to element
$('#report').load('/time.php');
evt.preventDefault();
})
});
</script>
</head>
<body>
<button id="refresh">Обновить</button>
<div id="report"> </div>
</body>
</html>
和php文件time.php
:
<?php
echo date("Y-m-d H:i:s");
享受。