PHP代码突然出现在我的网页中而不是执行 - 之前没有这样做过吗?

时间:2012-07-10 00:05:29

标签: php mysql html apache

我的网页中突然显示了一段或几块PHP代码,好像它们没有被识别为PHP代码一样。我之前找到它工作,我想不出任何我已经改变或完成的任何会阻止它工作的东西!我花了这么长时间才开始让Apache,MySQL和PHP一起工作,现在这个。我准备把头发撕掉!!

示例1: Example 1 示例1代码: (请注意,网页中会显示一个php代码块,而另一个则不会!)

<fieldset>
    <legend>Enter SELECT statement:</legend>
    <textarea name="select" style="width: 100%; margin-bottom: 10px;">
        <?php
            if (isset($_POST['select'])
                echo $_POST['select'];
        ?>
    </textarea>
    <input type="submit" value="Search" />
    <!-- display any sql errors here -->
    <?php
        echo "hello world!";
        if (isset($_POST['select']) {
            if (!$results = mysql_query($_POST['select']))
                die("Error: " . mysql_error());
        }
    ?>
</fieldset>

示例2: Example 2

示例2代码:

<fieldset>
    <legend>Tags:</legend>
    <table class="tagstable">
        <tr class="tagsrow">

        </tr>
        <?php
            $query = "SHOW COLUMNS FROM recipes LIKE 'Tags'";
            if (!($ret = mysql_query($query)))
                die("Error - could not show columns: " . mysql_error());

            if(mysql_num_rows($ret)>0){
                $row=mysql_fetch_row($ret);
                $options=explode("','",preg_replace("/(enum|set)\('(.+?)'\)/","\\2",$row[1]));
            }

            foreach ($options as $tag) {
                echo '<script type="text/javascript">addTag("' . $tag . '", false)</script>';
            }
        ?>
    </table>
    <br>
    <input type="text" id="addtag"><input type="submit" value="Add">
</fieldset>

故障排除:

  • 我的phpinfo();页面按预期工作
  • 包含php.exe的文件夹包含在我的PATH
  • 尝试重启Apache
  • 按照this question
  • 的答案中的所有步骤操作
  • 使用Apache 2.2.22,MySQL Server 5.5.24,PHP 5.4.3,Windows 7

Apache httpd.conf包含:

LoadModule php5_module "c:/websites/php/php5apache2_2.dll"
<IfModule dir_module>
  DirectoryIndex index.html index.htm index.php
</IfModule>
AddType application/x-httpd-php .php
PHPIniDir "C:/websites/php"

我还没有想到的任何事情?

谢谢!

1 个答案:

答案 0 :(得分:4)

phpinfo()页面的路径是什么?将其与您用于访问脚本的路径进行比较。我的猜测(当你说“php.exe包含在我的PATH中”时)是你没有访问web根目录中的文件,而是试图通过文件系统直接访问它。您需要通过Web服务器访问它。如果你这样做,它可能看起来像:

http://localhost/myscript.php