いくつかのpdfが作成されているphp関数があります。ボタンがあり、ボタンをクリックしてからURLにリダイレクトするときにその関数を呼び出したいと思います。それを行う最も簡単な方法は何でしょうか?
3 に答える
3
PHPメソッドを呼び出す必要がある場合は、AJAXを使用します。このようなもの:
var btn = document.getElementById("button_id");
btn.onclick = function () {
// Make AJAX request
// On success, do this:
window.location.href = "url to redirect to";
};
「MakeAJAXrequest」のコードは簡単にグーグルで検索できます。すぐに提供します:)
アップデート:
function ajaxFunction() {
var ajaxRequest; // The variable that makes Ajax possible!
try {
// Firefox, Chrome, Opera 8.0+, Safari
ajaxRequest = new XMLHttpRequest();
} catch (e) {
// Internet Explorer Browsers
try {
ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
} catch (e) {
try {
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
} catch (e) {
try {
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP.6.0");
} catch (e) {
try {
ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP.3.0");
} catch (e) {
throw new Error("This browser does not support XMLHttpRequest.");
}
}
}
}
}
return ajaxRequest;
}
AJAXコード-
var req = ajaxFunction();
req.onreadystatechange = function (response) {
if (response.status == 200 && response.readyState == 4) {
window.location.href = "url to redirect to";
}
}
req.open("POST", "your PHP file's URL", true);
req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
req.send(null); // Or send any `key=value&` pairs as a string
于 2012-10-19T14:37:38.177 に答える
1
これを実現するにはさまざまな方法があります。ajaxでPHP関数を呼び出し、関数の戻り値に基づいてリダイレクトします。次の例では、jQueryを使用しています。
jQuery:
$.ajax({
url: 'createpdf.php',
success: function(data) {
if (data) window.location = 'link/to/new/path';
}
});
PHP:
function create_pdf(){
//Create PDF
//If PDF was created successfully, return true
return true;
}
于 2012-10-19T14:49:00.680 に答える
0
<form name="input" action="whatever.php" method="get">
...
<input type="submit" value="Submit">
</form>
于 2012-10-19T14:40:16.910 に答える