Как скрыть «Уведомление: использование неопределенной константы»

Я исправляю ошибки в Стоматологической Системе Управления, которую мне предоставил мой профессор. Я просматривал страницу PHP на XAMPP. Теперь мой профессор использовал более старую версию, и мы не увидели никаких проблем с ней, но в текущей версии я вижу много уведомлений «Уведомление: использование неопределенной константы». Можно ли как-нибудь спрятать их, если я не смогу их починить? Вот мое кодирование.

    $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 относятся к вопросу о том, имеет ли он аллергию на то или иное. Естественно, по умолчанию пациенту не нужно будет отвечать с Q8A на Q8F, если он ответит «Нет» на Q8. Но я получаю ошибки, когда «Нет» отвечает на вопрос 8.

             <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>

Я разделил два выше, потому что они в разных областях. У меня гораздо больше проблем, но по одному шагу за раз.

0

Решение

Отключить сообщение об ошибке — плохая идея. если вы все еще хотите, вы можете использовать error_reporting(0);
функция, чтобы скрыть ошибки.
вам нужно проверить переменную с isset() или же empty()
лайк :-

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

может быть

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

а также

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

Другие решения

Я думаю, что ваш файл отсутствует там, где определены константы. Если это отсутствует, вывод будет не таким, как ожидалось, даже если ошибка скрыта. Но вы можете использовать функцию error_reporting (0), чтобы скрыть ошибки. Но я предлагаю вам взглянуть на причину ошибки, а не скрывать ее.

2

Вы можете отключить отчеты об ошибках с помощью этого:

error_reporting(0);
0

Попробуйте включить это в первую строку вашей страницы

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

Я не отключил бы обработку ошибок, это опасно, так как очевидно, что он скрыл бы все ошибки или даже уведомления. Они существуют по какой-то причине, и, в конце концов, код может затем работать «отлично», но давать неправильные результаты, потому что какой-то переменной просто не было, и это изменило ход программы. Я не вижу никаких постоянных проблем в коде, который вы предоставили, так что вы можете опубликовать полную информацию и, возможно, даже все сообщения — это не поможет просто выбрать одно уведомление и посмотреть на это …

Кстати, третья строка вашего HTML-кода показывает $ Q8 — вы намеревались показать этот текст там, или он должен отображать содержимое этой переменной?

0

Я думаю, что вы должны поставить error_reporting on на твоей машине.

Поскольку ваша машина не является производственной средой.

Убедитесь, что вы не пропустили ни одного файла, который включен, но код не находит его.

Как правило, подавление ошибок с установкой error_reporting в off Это не очень хорошая практика, так как вы не исправляете ошибки, а просто скрываете их.

Если код переносится на другой сервер, где error_reporting является on, это будет огромной проблемой тогда.

0
По вопросам рекламы [email protected]