PHP代码没有在dreamweaver中运行,而使用wamp服务器


php code is not running in dreamweaver while using wamp server

我在一个网站上工作,它有HTML和PHP,当我在dreamweaver中运行PHP脚本时,它执行HTML代码,而不是PHP。它没有访问以下代码

中给出的其他HTML页面
  </p>
<form method="post" action="" >
 <p>Enter your source and destination.</p>
<p>
    From:</p>
<select name="from">
<option value="Islamabad">Islamabad</option>
<option value="Lahore">Lahore</option>
<option value="murree">Murree</option>
<option value="Muzaffarabad">Muzaffarabad</option>
</select>
<p>
    To:</p>
   <select name="To">
<option value="Islamabad">Islamabad</option>
<option value="Lahore">Lahore</option>
<option value="murree">Murree</option>
<option value="Muzaffarabad">Muzaffarabad</option>
</select>
<input type="submit" value="search" /> 
</form>
</form> </table>
<?php
if(isset($_POST['from']) and isset($_POST['To'])) {
$from = $_POST['from'] ;
$to = $_POST['To'] ;
$table = array($from, $to);
switch ($table) {
  case array ("Islamabad", "Lahore") :
  header("Location: flights.html");
 break;
  case array ("Islamabad", "Murree") :
  header("Location: hotels.html");
 break;
  case array ("Islamabad", "Muzaffarabad") :
 header("Location: videos.html");
 break;
//.....
//......
default:
echo "Your choice is nor valid !!";
}
}
?>

这么多问题!

来自PHP在线手册

请记住,header()必须在任何实际输出之前调用通过普通的HTML标记、文件中的空白行或PHP发送。使用include或require来读取代码是一个非常常见的错误,函数,或其他文件访问函数,并具有空格或空在header()被调用之前输出的行。同样的问题在使用单个PHP/HTML文件时存在。

所以基本上,如果你想让浏览器使用header()加载一个新页面,你必须在任何其他数据(HTML)发送到浏览器之前执行header()。在任何header()之后加上exit;也是一个好主意。

在你的情况下,这可能不会太难,因为在我看来,这段代码应该放在脚本的顶部,而不是在中间。