我有一个这样的链接:<a href="javascript:window.print();">Print</a>
。当PHP变量被点击时,我正在尝试递增该变量。从技术上讲,我可以通过提交表单来做到这一点,但我相信有一种更简单的方法。有什么想法吗?
发布于 2011-03-02 07:43:00
JavaScript是客户端。PHP是服务器端。如果您希望通过JavaScript事件影响PHP变量,则必须发出某种AJAX调用。
发布于 2011-03-02 08:39:00
您需要使用某种类型的数据库来持久化像这样的变量。然后,您可以向一个较小的服务器端文件发出AJAX调用,该文件会递增该数据库中的一个值。
在您的HTML页面上:
<script type="text/javascript">
$(document).ready(function() {
$('#print').click(function() {
$.getJSON('http://somewhere.com/increment.php', null, function(data) {
console.log('remote increment script returned: ' + data);
});
window.print();
});
});
</script>
<a href="javascript: void 0;" id="print">Print</a>
然后,在/increment.php
中的服务器端(我假设是MySQL,但您也可以使用诸如Redis之类的其他东西来实现这一点):
// database connection goes here
$result = mysql_query("UPDATE stats SET stat_value = stat_value + 1 WHERE stat_key = 'prints'", $some_database_connection);
mysql_close($some_database_connection);
die( $result ? 'true' : 'false' );
https://stackoverflow.com/questions/5161746
复制相似问题