Как передать количество хитов в зависимости от действия кнопки в php
Мы разрабатываем веб-сайт. У нас есть кнопка. В действии кнопки мы поместили загрузку PDF-файла. Работает нормально. Но нам нужно Как рассчитать загрузку моего PDF-файла с моего веб-сайта.
Мы пытались так, но мы не получили.
<?php
//$Down=$_GET['Down'];
$a="hello";
$i=0;
?>
<script type="text/javascript">
var i=0;
function submitForm()
{
<?php
$i = @file_get_contents('count.txt'); // read the hit count from file
echo $i; // display the hit count
$i++; // increment the hit count by 1
@file_put_contents('count.txt', $i); // store the new hit count
?>
}
</script>
<html>
<head>
</head>
<body>
<input type="button" onclick="submitForm()" value="submit 1" />
</body>
</html>
Мы ничего не получили. Мы новички в PHP
Пожалуйста, направьте нас.
2 ответа
Решение
Ну, вы можете скачать PDF и сосчитать при отправке формы:
<?php
$i=0;
$i = (int) @file_get_contents('count.txt'); // read the hit count from file
if(!empty($_POST)) {
$i++; // increment the hit count by 1
@file_put_contents('count.txt', $i); // store the new hit count
// Download
$file = 'filename.pdf';
header('Content-Description: File Transfer');
header('Content-Type: application/pdf');
header('Content-Disposition: attachment; filename='.basename($file));
header('Content-Transfer-Encoding: binary');
header('Expires: 0');
header('Cache-Control: must-revalidate');
header('Pragma: public');
header('Content-Length: ' . filesize($file));
}
Сейчас использую echo $i;
где вы хотите отобразить количество загрузок.
В html форма должна быть:
<form method="post" action="">
<input type="submit" name="download" value="Download">
</form>
Вы смешиваете PHP с Javascript, это не сработает вообще. Лучшим решением было бы создать скрипт PHP, который выполняет подсчет, как показано выше, а после этого доставляет PDF как вложение.
Некоторые примеры: