我想做一个代码,当有人按下一个按钮,如:"点击我"它将算作点击,并将保存在。txt
<?php
if (file_exists('count_file.txt'))
{
$fil = fopen('count_file.txt', r);
$dat = fread($fil, filesize('count_file.txt'));
echo $dat+1;
fclose($fil);
$fil = fopen('count_file.txt', w);
fwrite($fil, $dat+1);
}
else
{
$fil = fopen('count_file.txt', w);
fwrite($fil, 1);
echo '1';
fclose($fil);
}
?>
我使用该脚本,但我希望它只与nclick="javascript:countClicks();所以当你刷新页面或者其他东西的时候
我怎样才能使它工作?
这很简单。
假设你有一个这样的按钮:
<button id="mybutton">Click Me</button>
然后这个到那一页:
<script>
document.getElementById('mybutton').addEventListener('click', function(){
document.getElementById('myFrm').submit();
});
</script>
<form id="myFrm" method="post" action="file.php"><input type="hidden" name="doit" value="true" /></form>
或者如果您想在不更改页面的情况下发送:
<script>
document.getElementById('mybutton').addEventListener('click', function(){
var xmlhttp;
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.open("POST","file.php",true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send("doit=true");
});
</script>
in file.php
:
<?php
if(!empty($_POST) && array_key_exists('doit', $_POST)) {
if($_POST['doit'] == "true") {
if (file_exists('count_file.txt'))
{
$fil = fopen('count_file.txt', r);
$dat = fread($fil, filesize('count_file.txt'));
echo $dat+1;
fclose($fil);
$fil = fopen('count_file.txt', w);
fwrite($fil, $dat+1);
}
else
{
$fil = fopen('count_file.txt', w);
fwrite($fil, 1);
echo '1';
fclose($fil);
}
}
}
?>