id = "render"のダウンロードボタンがあるphpファイルindex.phpがあります。私はサーバーにリクエストを送信するためにajaxを使用しています。使用JSコードIMがある:望ましくないページリダイレクト
$('#render').click(function(e){
$('html,body').animate({ scrollTop: 0 }, 1000);
var url='render.php';
$.showLoading();
$.ajax({
type: "POST",
url: url,
data: '',
success: function(data){
$.hideLoading();
}
});
});
render.phpファイルは、ユーザデータを含むPDF文書を生成します。 mpdf PHPライブラリを使用してpdf imを生成するにはそしてrender.phpファイルのコードは次のとおりです。
<?php
session_start();
if(!empty($_SESSION['template'])){
$template=$_SESSION['template'];
ob_start();
require_once("resumeTemplates/$template.php");
$template = ob_get_clean();
require_once 'mpdf/vendor/autoload.php';
$mpdf = new mPDF();
$mpdf->WriteHTML($template);
$mpdf->Output("resume.pdf","D"); //sends pdf file to browser
}
?>
ダウンロードボタンをクリックしたときに問題がページがrender.phpにリダイレクトされている、しかし、私は、ユーザーがindex.phpのに滞在したいです。私も追加しようとしました
header("location:index.php");
しかし、このページはindex.phpにリダイレクトされませんでした。それはrender.phpにとどまります。
ダウンロードボタンのHTMLコードは次のとおりです。あなたがボタンをクリックすると、デフォルトのイベントを防ぐために必要
<a href="render.php" id="render" class="btn btn-primary btn-round">Download</a>
が送信ボタンをクリックされています
href="#"
する必要がありますか?もしそうなら、あなたは 'preventdefault();'を使う必要があります。 –ボタンであるHTMLコードを表示しますか? –
問題は解決されました。主な問題は、ボタンのHTMLコードにありました。 href = "render.php"をhref = "#"に置き換えただけです。すべてのローカルサーバー上で正常に動作していた前に、このソリューションを見つけることができませんでした – Mayank