HTML表单打开PHP脚本而不是运行它

时间:2013-07-19 10:51:24

标签: php mysql wamp

我正在使用WAMP与MySQL和PHP来运行本地服务器。 WAMP服务器在线,我使用一个简单的HTML脚本来运行连接到数据库的PHP文件,并在我在WAMP服务器上创建的表中插入数据。

问题在于,浏览器不是运行(执行)我的脚本,而是以文本模式打开它。就像我可以看到剧本一样。

现在在这个论坛上有类似的问题,其他人和人们已经解决了这个问题。然而,让我的问题与众不同的是我能够运行test.php。我可以用它来显示文本以及打开info.php所以PHP在我的服务器上运行,但是当我使用HTML表单时它拒绝运行并且只打开脚本。

我正在使用Chrome浏览器,我也在Firefox中检查了它,结果相同。

我有一个HTML文件,它是一个链接到我的PHP文件的表单,它处理WAMP服务器上表中值的连接和插入。数据库的名称是test。

form.html

<form action= "create_product.php" method= "get">
    <center>
       <table>
            <td><label><b><font size="5"> Name</label></td>
            <td><font size="5"><input type="text" name="name" /></td>
         </tr>
         <tr>
            <td><label><b><font size="5"> Description</label></td>
            <td><font size="5"><input type="text" Description="description" /></td>
        </tr>
        <tr>
            <center><td></td></center>
            <center><td><input type="submit" value="Submit"/> <input type="reset" value="reset"/>
            </tr>

       </table>
    </center>

insert_product.php

<?php
$con= mysql_connect("localhost", "admin","");
$db = mysql_select_db("test");

$name = $_GET["name"];
$description = $_GET["description"];

$query = "Insert into products('name','description')values('".$name."','".$description."')";
$result = mysql_query($query);
?>

3 个答案:

答案 0 :(得分:3)

我遇到了同样的问题,正在浏览所有已知的技术论坛。我终于找到了问题所在 - 与PHP或Apache设置无关。代码没有错(至少在我的代码上)。这是不起作用的: 我双击以从Finder(或浏览器,如果您是Windows用户)打开文件,浏览器中的URL是

  

“/文件/ XXXXX / foo.html”

。这将打开

  

/file/xxxx/bar.php“

,这不起作用!

但是,如果我在浏览器中输入了网址

  

“本地主机/〜XXX / foo.html”

,它在

时运行良好
  

“bar.php”

被调用。

也许这就是你可以尝试的。

  

“文件:///XXXX/foo.php”

不起作用,但

  

“本地主机/ XXX / foo.php”

一样。

答案 1 :(得分:1)

确保你打开它localhost / yourfile.php不像C:\ wamp \ yourfile.php

启动所有服务

或尝试xampp download

尝试了wamp和xampp,在我看来xampp更好

答案 2 :(得分:0)

这是编辑 - 如果您已经测试过PHP在本地服务器上工作,那么文本显示的最可能原因可能是缺少php结束标记(?&gt;)

另请注意,如果您将文件保存为.php以外的其他文件,则不会对其进行解析。包含PHP代码但保存为HTML或doc文件的文件会使其中的php代码无效。

&lt;&lt; - 编辑结束 - &gt;&gt;

你在表单中给了action= "create_product.php",尽管你将php文件指定为insert_product.php

另外,作为一种好的做法,始终在mysql_select_db

中提供数据库连接变量

使用$db = mysql_select_db("test",$con);

而不是$db = mysql_select_db("test");