从数据库中选择不起作用


selecting from database not working

有人能在这段代码中看到错误吗?它在我的本地主机中工作,但在实时服务器上不工作

<?
$query = "select * from mytable";
$user_result = mysql_query($query) OR die(mysql_error());
while ($user_array = mysql_fetch_assoc($user_result)) {

    echo "<table CELLPADDING=10 border =1 >";
    echo "<tr>";
    echo  "<td>".$user_array['email']."</td>";
    echo "<td>".$user_array['firstname']."</td>";
    echo "</tr>";
    echo "</table>";
}
mysql_close();
?>

它只是简单地显示文本""; echo ""; echo "".$user_array['email'].""; echo "".$user_array['firstname'].""; echo ""; echo ""; } mysql_close(); ?> "

您使用的是短标记<? ?>,因此需要在php.ini文件中启用short_open_tag。服务器可能将该变量设置为false。这是关于打开和关闭标签的文档。将其更改为

<?php    ?>

更改此-

<?  to  <?php


或者在服务器上的php.ini中设置

short_open_tag=On

解释:您的本地服务器是使用php短标记启用的。但在你的服务器上却不是。因此,您可以更改服务器上的配置,也可以避免使用短标签

似乎您没有打开short_open_tag,要查看它,请参阅phpinfo(),否则将<?更改为<?php

您将在此处找到有趣的php.ini变量定义

您必须使用

<?php
   //code
?>

而你可以使用

<?= $var ?>

打印变量(http://www.php.net/manual/en/ini.core.php#ini.short-打开标签)。