1

我的 ISP PHP 服务器现在正在返回

500内部服务器错误。您要查找的资源有问题,无法显示。

在我认为是有效的 php 上,即

if ( $_REQUEST[ 'some_data' ] == null )
{
  echo "<p>No data</p>";
}
else
{
  echo "<p>Some data</p>";
}

我试过打开错误报告

error_reporting(E_ALL);
if (!ini_get('display_errors')) 
{
  ini_set('display_errors', "stderr");
}

因此,虽然我可以通过将所有值检查包含在数组中来使我的代码工作

if ( isset( $_REQUEST[ 'some_data' ] ) )
{
  // ... do stuff
}

我不明白,错误的诊断现在需要很长时间。谁能给我一个线索是怎么回事?

4

3 回答 3

1

错误不在您的 PHP 脚本中,而可能在您的网络服务器配置 (.htaccess?) 或您尝试访问的路径或文件名中。

如果您不是管理员,请检查您的 ISP 的其他站点是否遇到问题。也许您的 ISP 正在他们的网络服务器上工作?

于 2009-09-10T19:40:08.457 回答
0

代码的问题是 NULL != NULL。你最好问“如果为空($somevar)......”

至于您的 500 错误,我不希望您发布的代码会影响它。

于 2009-09-10T19:41:11.063 回答
0

我看起来您的 ISP 对 PHP 配置有非常严格的控制。我建议您在本地服务器上开发所有代码,确保它使用 E_ALL(如果是 PHP5,则可能是 E_STRICT)运行,然后才将其上传到服务器。

并且不正确地检查是否设置了变量是简单且简单的错误编码。确保始终使用 isset 或array_key_exists检查数组中的值是否已设置。

于 2009-09-10T19:45:14.643 回答