php 代码块在提交按钮上不起作用
php code block not working on submit button
我写了以下代码:
<html>
<head>
<?php
if (isset($_POST['report']))
{
$name = $_POST['Name'] ;
$email = $_POST['Email'] ;
header('Location: subscriber.php?key='.$name.'?key1='.$email);
}
?>
<script type="text/javascript" src="assets/bootstrap/js/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="assets/bootstrap/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="inner.css" type="text/css" />
<style>
div#copyright {
float: left;
width: 100%;
background: #000;
color: #fff;
padding: 15px 15px;
}
.c_right {
float: left;
width: 50%;
text-align: left;
}
#copyright li {
float: left;
width: 30px;
margin-right: 10px;
list-style:none !important;
}
.c_left {
float: right;
}
</style>
</head>
<body>
<div id="footer">
<div class="container-fluid">
<div class="row">
<div class="col-xs-6 col-sm-3">
<h3>Quick Links</h3>
<div id="footnav1">
<ul>
<li><a href="#">About Us</a></li>
<li><a href="#">FAQs</a></li>
<li><a href="#">Sitemap</a></li>
<li><a href="#">Contact Us</a></li>
<li><a href="#">Term & Conditions</a></li>
</ul>
</div>
</div>
<div class="col-xs-6 col-sm-3">
<h3>Quick Links</h3>
<div id="footnav2">
<ul>
<li><a href="#">Privacy & Cookie Policy</a></li>
<li><a href="#">Megahung Blog</a></li>
<li><a href="#">Donate Cashback</a></li>
<li><a href="#">How Megahung Works</a></li>
<li><a href="#">Why Choose Megahunt?</a></li>
</ul>
</div>
</div>
<div class="col-xs-6 col-sm-3">
<h3>Quick Links</h3>
<div id="footnav3">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Services</a></li>
<li><a href="#">Catalog</a></li>
<li><a href="#">Blog</a></li>
<li><a href="#">Contact</a></li>
</ul>
</div>
</div>
<div class="col-xs-6 col-sm-3">
<h3>Newsletter</h3>
<div id="footnav4" class="nl_subscribe">
<form method="post">
<input type="text" name="Name" size="20" class="email_css" placeholder="Enter your name...">
<input type="text" name="Email" size="20" class="email_css" placeholder="Enter your email...">
<input type="submit" name="report" value="Subscribe" class="btn btn-subscribe"/>
</form>
</div>
</div>
</div>
</div>
</div>
<div id="copyright">
<div class="c_right"><h3 class="cp">Copyright © 2015 <span style="color:#ff6803">Megahunt</span>. All Rights Reserved.</h3></div>
<div class="c_left">
<ul class="social">
<li><a href="https://www.facebook.com/megahunt.in" target="_blank"><img src="images/facebook.png"></a></li>
<li><a href="https://twitter.com/Megahunt1" target="_blank"><img src="images/twitter.png"></a></li>
<li><a href="#"><img src="images/linkedin.png"></a></li>
<li><a href="#"><img src="images/google.png"></a></li>
<li><a href="#"><img src="images/instagram.png"></a></li>
<li><a href="http://www.pinterest.com/pin/create/button/" target="_blank"><img src="images/pinterest.png"></a></li>
<ul>
</div>
</div>
</body>
</html>
现在,当我点击“提交”按钮时,页面已加载,但它实际上是在同一页面中加载的,不会转到 subscriber.php 页面。
我也将 php 块放在 html 之前,但同样的问题仍然存在。
谁能帮我解决这个问题。
我重新打开了问题,因为 OP 似乎不理解重复问题 link 的说明是什么。
正如我在评论中所说,您在 header 之前输出并且您没有看到此警告,因为您的系统很可能没有启用错误报告。请参阅我的脚注。
修改您的代码(省略其余代码)并添加退出。
旁注:确保在开始 <?php
标记之前没有空格,并且您的文件不包含字节顺序标记。绝对没有任何东西应该超过你的开头 PHP,没有包含等
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
if (isset($_POST['report']))
{
$name = $_POST['Name'] ;
$email = $_POST['Email'] ;
header('Location: subscriber.php?key='.$name.'?key1='.$email);
exit;
}
?>
<html>
<head>
<script type="text/javascript" src="assets/bootstrap/js/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="assets/bootstrap/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="inner.css" type="text/css" />
...后面是您的其余代码。
- 还要确保您的 subscriber.php 也没有任何会在 header 之前导致输出的内容。
脚注:
将 error reporting 添加到您的文件的顶部,这将有助于查找错误。
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
// rest of your code
旁注:错误报告只能在试运行中进行,绝不能在生产中进行。
- 您还应该使用条件
!empty()
作为您的输入。
我写了以下代码:
<html>
<head>
<?php
if (isset($_POST['report']))
{
$name = $_POST['Name'] ;
$email = $_POST['Email'] ;
header('Location: subscriber.php?key='.$name.'?key1='.$email);
}
?>
<script type="text/javascript" src="assets/bootstrap/js/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="assets/bootstrap/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="inner.css" type="text/css" />
<style>
div#copyright {
float: left;
width: 100%;
background: #000;
color: #fff;
padding: 15px 15px;
}
.c_right {
float: left;
width: 50%;
text-align: left;
}
#copyright li {
float: left;
width: 30px;
margin-right: 10px;
list-style:none !important;
}
.c_left {
float: right;
}
</style>
</head>
<body>
<div id="footer">
<div class="container-fluid">
<div class="row">
<div class="col-xs-6 col-sm-3">
<h3>Quick Links</h3>
<div id="footnav1">
<ul>
<li><a href="#">About Us</a></li>
<li><a href="#">FAQs</a></li>
<li><a href="#">Sitemap</a></li>
<li><a href="#">Contact Us</a></li>
<li><a href="#">Term & Conditions</a></li>
</ul>
</div>
</div>
<div class="col-xs-6 col-sm-3">
<h3>Quick Links</h3>
<div id="footnav2">
<ul>
<li><a href="#">Privacy & Cookie Policy</a></li>
<li><a href="#">Megahung Blog</a></li>
<li><a href="#">Donate Cashback</a></li>
<li><a href="#">How Megahung Works</a></li>
<li><a href="#">Why Choose Megahunt?</a></li>
</ul>
</div>
</div>
<div class="col-xs-6 col-sm-3">
<h3>Quick Links</h3>
<div id="footnav3">
<ul>
<li><a href="#">Home</a></li>
<li><a href="#">About</a></li>
<li><a href="#">Services</a></li>
<li><a href="#">Catalog</a></li>
<li><a href="#">Blog</a></li>
<li><a href="#">Contact</a></li>
</ul>
</div>
</div>
<div class="col-xs-6 col-sm-3">
<h3>Newsletter</h3>
<div id="footnav4" class="nl_subscribe">
<form method="post">
<input type="text" name="Name" size="20" class="email_css" placeholder="Enter your name...">
<input type="text" name="Email" size="20" class="email_css" placeholder="Enter your email...">
<input type="submit" name="report" value="Subscribe" class="btn btn-subscribe"/>
</form>
</div>
</div>
</div>
</div>
</div>
<div id="copyright">
<div class="c_right"><h3 class="cp">Copyright © 2015 <span style="color:#ff6803">Megahunt</span>. All Rights Reserved.</h3></div>
<div class="c_left">
<ul class="social">
<li><a href="https://www.facebook.com/megahunt.in" target="_blank"><img src="images/facebook.png"></a></li>
<li><a href="https://twitter.com/Megahunt1" target="_blank"><img src="images/twitter.png"></a></li>
<li><a href="#"><img src="images/linkedin.png"></a></li>
<li><a href="#"><img src="images/google.png"></a></li>
<li><a href="#"><img src="images/instagram.png"></a></li>
<li><a href="http://www.pinterest.com/pin/create/button/" target="_blank"><img src="images/pinterest.png"></a></li>
<ul>
</div>
</div>
</body>
</html>
现在,当我点击“提交”按钮时,页面已加载,但它实际上是在同一页面中加载的,不会转到 subscriber.php 页面。
我也将 php 块放在 html 之前,但同样的问题仍然存在。
谁能帮我解决这个问题。
我重新打开了问题,因为 OP 似乎不理解重复问题 link 的说明是什么。
正如我在评论中所说,您在 header 之前输出并且您没有看到此警告,因为您的系统很可能没有启用错误报告。请参阅我的脚注。
修改您的代码(省略其余代码)并添加退出。
旁注:确保在开始 <?php
标记之前没有空格,并且您的文件不包含字节顺序标记。绝对没有任何东西应该超过你的开头 PHP,没有包含等
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
if (isset($_POST['report']))
{
$name = $_POST['Name'] ;
$email = $_POST['Email'] ;
header('Location: subscriber.php?key='.$name.'?key1='.$email);
exit;
}
?>
<html>
<head>
<script type="text/javascript" src="assets/bootstrap/js/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="assets/bootstrap/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="inner.css" type="text/css" />
...后面是您的其余代码。
- 还要确保您的 subscriber.php 也没有任何会在 header 之前导致输出的内容。
脚注:
将 error reporting 添加到您的文件的顶部,这将有助于查找错误。
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
// rest of your code
旁注:错误报告只能在试运行中进行,绝不能在生产中进行。
- 您还应该使用条件
!empty()
作为您的输入。