有人能在这段代码中看到错误吗?它在我的本地主机中工作,但在实时服务器上不工作
<?
$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-打开标签)。