如何隐藏“通知:使用未定义的常量”

时间:2014-11-14 06:24:48

标签: php ssms

我正在修理我教授为我提供的牙科管理系统上的错误。我一直在XAMPP上查看PHP页面。现在,我的教授使用的是旧版本,我们没有看到任何问题,但是对于当前版本,我看到了很多“通知:使用未定义的常量”通知。如果我无法修复它们,有什么方法可以至少隐藏它们吗?这是我的编码。

    $Q8 = $usertab4['Q8'];
    if($Q8 == 'No'){
      $Q8A == '';
      $Q8B == '';
      $Q8C == '';
      $Q8D == '';
      $Q8E == '';
      $Q8F == '';
    }
    else{
      $Q8A = $usertab4['Q8A'];
      $Q8B = $usertab4['Q8B'];
      $Q8C = $usertab4['Q8C'];
      $Q8D = $usertab4['Q8D'];
      $Q8E = $usertab4['Q8E'];
      $Q8F = $usertab4['Q8F'];
    }
Q8涉及询问患者是否对某些药物过敏。 Q8A到Q8F涉及询问他/她是否对此过敏。当然,默认情况下,如果患者对Q8说“不”,则不需要回答Q8A到Q8F。但是当Q8回答“否”时,我会收到错误。

             <tr>
                 <td>
                     <font face = '$font3' size = '1' color = 'Black'> <i> <b> 8. ALLERGIC TO ANY MEDICINE?: </b> </i> </font> &nbsp
                     <font face = '$font3' size = '2' color = 'Black'> <b> $Q8 </b> </font>
                 </td>
                 <td>
                     <font face = '$font3' size = '1' color = 'Black'> <i> <b> IF YES, WHAT?: </b> </i> </font> &nbsp
                     <font face = '$font3' size = '2' color = 'Black'> <b>";
                     if($Q8A != ''){
                       print "$Q8A ";
                     }
                     if($Q8B != ''){
                       print "$Q8B ";
                     }
                     if($Q8C != ''){
                       print "$Q8C ";
                     }
                     if($Q8D != ''){
                       print "$Q8D ";
                     }
                     if($Q8E != ''){
                       print "$Q8E ";
                     }
                     if($Q8F != ''){
                       print "$Q8F ";
                     }
                     print "</b> </font>
                 </td>
             </tr>

我把上面两个分开了,因为他们在不同的领域。我有很多问题,但一次只有一步。

6 个答案:

答案 0 :(得分:2)

我认为在定义常量的地方缺少那个文件。如果缺少输出,即使隐藏错误,输出也不会如预期。但您可以使用error_reporting(0)函数来隐藏错误。但我建议你看看错误的原因,而不是隐藏它。

答案 1 :(得分:0)

您可以使用以下方式关闭错误报告:

error_reporting(0);

答案 2 :(得分:0)

关闭错误报告是个坏主意。如果您仍然想要,可以使用error_reporting(0); 用于隐藏错误的功能。 您需要使用isset()empty()检查变量 喜欢: -

if($Q8A != ''){
  print "$Q8A ";
}

可以

if(!empty($Q8A)){
  print "$Q8A ";
}

$Q8 = (!empty($usertab4['Q8']) ? $usertab4['Q8'] : '');

答案 3 :(得分:0)

在页面的第一行尝试包含此内容

error_reporting(0);
@ini_set('display_errors', 0);

答案 4 :(得分:0)

我不会关闭错误处理,这很危险,因为它显然会隐藏所有错误甚至通知。它们存在是有原因的,毕竟,代码可以运行&#34;罚款&#34;,但是会产生错误的结果,因为某些变量不在那里而且改变了程序的流程。我无法在您提供的代码中看到任何常见问题,因此您可以发布完整的内容甚至可能发布所有消息 - 仅仅选择一个通知并查看该内容并不会有帮助... < / p> 顺便说一句,你的HTML代码的第三行显示$ Q8 - 你打算在那里显示那个文本,还是应该显示该变量的内容?

答案 5 :(得分:0)

我认为您应该将error_reporting on放在您的计算机上。

由于您的机器不是生产环境。

检查您是否遗漏了任何文件,包括但代码未找到该文件。

通常,通过设置&#39; error_reporting&#39;来抑制错误。 offerror_reporting不是一个好习惯,因为你没有修复错误,你只是想要它们。

如果代码移植到on为{{1}}的其他服务器上,那么这将是一个很大的问题。