如何使用PHP在新选项卡中重定向?

时间:2013-02-04 07:07:56

标签: php

如果文件不存在但是没有重定向,我试图在新页面中重定向,但如果我只写警报,那么它正在工作。请帮帮我。

//php code

<?PHP 
if(isset($_POST["bills"]))
{
if($_POST[month]=='Select Month' || $_POST[year]=='Select Year'){$msg="Please select valid month or year";}
else if(file_exists($path.$_POST["month"].$_POST["year"].'.pdf')){header('location:'.$path.$_POST[month].$_POST[year].'.pdf');}
else{?>
<script type='text/javascript' language="javascript">document.getElementById('downloadlink').click();</script>
<?PHP }
}
?>

//html code

<form action="electricitybills.php" method="post" >
<select name="year">
<?PHP include('include/billsyear.php'); ?>
</select>
<select name="month">
<?PHP include('include/billsmonth.php'); ?>
</select>
<div class="gobutton"><input type="submit" name="bills" value="GO"></div>
</form>

    </div>
<br><br><br><a id="downloadlink" href="http://www.google.com" target="_blank" style="display:none;">link text</a></form>

3 个答案:

答案 0 :(得分:0)

click() - 执行对元素的单击,就像用户手动单击它一样。在大多数浏览器中,click()仅适用于非“提交”或“重置”的表单INPUT元素。它不能用于模拟链接或表单提交按钮上的点击。

downloadlink实际上最有可能是link,所以它为什么不起作用

请参阅此link了解click()文档

答案 1 :(得分:0)

使用jquery的.ready函数。 因为您尝试在生成之前访问document.getElementById('downloadlink')。

<a id="downloadlink" href="http://www.google.com" target="_blank" style="display:none;">link text</a>
<?PHP 
if(isset($_POST["bills"]))
{
if($_POST[month]=='Select Month' || $_POST[year]=='Select Year'){$msg="Please select valid month or year";}
else if(file_exists($path.$_POST["month"].$_POST["year"].'.pdf')){header('location:'.$path.$_POST[month].$_POST[year].'.pdf');}
else{?>
<script type='text/javascript' language="javascript">
$('#downloadlink').trigger('click');

    

//html code

<form action="electricitybills.php" method="post" >
<select name="year">
<?PHP include('include/billsyear.php'); ?>
</select>
<select name="month">
<?PHP include('include/billsmonth.php'); ?>
</select>
<div class="gobutton"><input type="submit" name="bills" value="GO"></div>
</form>

    </div>
<br><br><br></form>

试试这个。我希望它能帮到你!

答案 2 :(得分:0)

在php中,您可以使用重定向:

header('location: www.google.com');

或javascript:

location.href = "http://www.example.com/test";