PHP脚本未在HTML表单上执行';提交';

PHP脚本未在HTML表单上执行';提交';,php,mysql,html,forms,apache,Php,Mysql,Html,Forms,Apache,我正在用HTML构建一个网站表单,希望从用户那里收集信息,并将其存储在MySQL中。但是,当我在输入信息后提交表单时,PHP脚本不会执行。它只是以原始形式显示PHP脚本。在浏览器中,它下载PHP文件 起初,我被引导认为这是我的MySQL、PHP、Apache配置的问题,但在一步一步地完成之后,我仍然无法执行PHP脚本 我的表单标题如下所示: <form id="form-settings" method="post" action="file.php"> php是我希望在提交时

我正在用HTML构建一个网站表单,希望从用户那里收集信息,并将其存储在MySQL中。但是,当我在输入信息后提交表单时,PHP脚本不会执行。它只是以原始形式显示PHP脚本。在浏览器中,它下载PHP文件

起初,我被引导认为这是我的MySQL、PHP、Apache配置的问题,但在一步一步地完成之后,我仍然无法执行PHP脚本

我的表单标题如下所示:

<form id="form-settings" method="post" action="file.php">

php是我希望在提交时执行的脚本

以下是我的PHP脚本:

<?php
error_reporting(E_ALL);

$link = mysql_connect("localhost","username","password");

if (!$link) 
{
       die('Not connected : ' . mysql_error());
}

mysql_select_db("mysql", $link) or die("Unable to select database");

$var1=$_POST['var1'];
$var2=$_POST['var2'];
$var3=$_POST['var3'];
$var4=$_POST['var4'];
$var5=$_POST['var5'];

$query = "INSERT INTO table VALUES ('','$var1','$var2','$var3','$var4','$var5')";
mysql_query($query);

mysql_close($link); ?>

您确定您的Web服务器支持PHP吗

如果只是从服务器提供源代码,那么似乎无法获得PHP支持。你应该联系你的网站管理员。还可以检查其他文件扩展名


如果您有权访问配置,请为apache安装php模块。

其中一个apache配置文件应包含以下指令:

AddHandler php5-script .php
(我会将此作为评论发表,但我不能,因为我的因果报应太少了…)

查看日志文件,尤其是错误日志文件。它们可能在/var/log/apache2或其他文件中。看看有没有什么不对劲


您的phpinfo()-脚本是否与另一个脚本位于同一目录中?您是否使用相同的主机名访问脚本?(例如127.0.0.1 vs.localhost?

好的,要在PHP文件中获取这些内容:

$var1=$_POST['var1'];
$var2=$_POST['var2'];
$var3=$_POST['var3'];
$var4=$_POST['var4'];
$var5=$_POST['var5'];
您的表单必须包含以下内容:

<form method="post" action="file.php">
    <input type="text" name="var1" />
    <input type="text" name="var2" />
    <input type="text" name="var3" />
    <input type="text" name="var4" />
    <input type="text" name="var5" />
    <input type="submit" value="Submit" />
</form>


如果表单是这样,我指的是输入中的
name
属性,您得到的输出是什么?你得到的是未解析的PHP文件吗?

Little offtopic你最好不要使用
mysql\ucode>函数使用better
PDO
。PHP文件位于哪里,你如何在浏览器中访问它?你能发布
表单
标记的完整HTML内容吗?PHP文件与HTML文件位于同一目录中file@PraveenKumar我不要认为这是表单的问题,似乎只是浏览器读取php脚本我的web服务器确实支持php,因为我可以在浏览器中运行脚本。实际上,它可以工作,但这是我可以在php.ini文件中更改的,对吗?是的,可以禁用短标记。这真的很奇怪,您是否限制操作以获取或类似的内容?您是否使用.htaccess文件?如果是,请将其添加到您的问题中。由于没有使用.htaccess文件,我在访问它时遇到了问题。我应该在.conf文件中的何处添加此文件?全局添加还是在特定的目录块中添加。但实际上,如果您能够从浏览器中执行phpinfo(),这意味着已经启用了PHP。是的,表单的格式正是如此,PHP文件在浏览器中运行时会被下载,并在我的IDE中以文本形式显示,我假设浏览器无法识别PHP格式。我的php文件中是否需要一些头文件?我的phpinfo()脚本位于/Library/WebServer/Documents目录中,我通过localhost/test.php在浏览器中运行它只是为了澄清:您的HTML文件和触发错误的php脚本位于同一目录中,您也通过?hmmmm,不,不同的目录访问它,让我试试,我正在使用桌面上的一个文件夹来运行这个东西,包含所有必要的文件。我需要把它放在其他地方吗?不一定,但假设您遵循了说明,那么必要的设置(如AllowOverride指令)就不会设置在桌面上的文件夹中。您还需要为您的桌面文件夹设置它们。