Я пытаюсь завершить sh одну страницу моего сайта за последние пару часов при достижении следующего.
- При нажатии на кнопку должно произойти следующее
- Ссылка на скачивание появляется (сделано - работает)
- Таблица mySQL должна быть открыта и счетчик должен быть увеличен
Насколько я получил очки. Javascript не может справиться с этим, и поэтому мы можем использовать AJAX или jQuery. Я уже проверял различные посты и веб-сайты, такие как:
и многое другое. Однако, я предполагаю, что у меня действительно есть проблемы с синтаксисом AJAX, и я фактически не знаю, загружены / открыты запрошенные php файлы или нет. Особенно вторая ссылка, приведенная выше, почти аналогична тому, что я ищу. Однако это не работает. Чтобы проверить, вызывается ли файл php, я установил предупреждение, которое срабатывает, если я вызываю файл явно в браузере. Может быть, это не работает с AJAX, как я ожидаю. Вот код, чтобы лучше ознакомиться с несоответствием, которое я делаю.
Код страницы:
<?php
echo '<div><button onclick="incrementAndDownload('testPath', 'fileName'); ">Click me</button></div>';
?>
<script>
function incrementAndDownload (link, fileName)
{
$.ajax({
url: 'openfoam/increment.php',
success: function(data) {
// Print something if necessary
}
});
//- Open the link
// window.open(arguments[0], "_blank");
//- Increment download inside mysql
//var xhttp;
//xhttp = new XMLHttpRequest();
//xhttp.open("GET", "openfoam/increment.php?foo=nana", true);
//xhttp.send();
}
</script>
Приращение. php выглядит следующим образом:
<?php
echo '<script type="text/javascript" language="Javascript">
alert("Test message if the script is called...");
</script>';
// Code for accessing the mysql database and manipulate the data
//$page_id = mysql_real_escape_string(html_entities($_POST['file']));
?>
Теперь, когда я нажимаю кнопку, выполняется javascript (например, если я раскомментирую window.open)
, это работает, как и ожидалось. Однако, как уже было сказано, вторая часть заключается в открытии базы данных с помощью php и увеличении число (счетчик). По какой-то причине я не могу выяснить, где находится проблема. Я даже не уверен, что AJAX открывает файл increment.php
(предупреждающие сообщения никогда не появляются, поэтому я полагаю, что никогда называется). Любое предложение приветствуется, и я надеюсь, что этот вопрос не просто содержит фундаментальную небольшую ошибку. Заранее спасибо, Тоби