Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Разве собака не должна глушить ошибки?

Сообщения:  [1-8] 

 
 автор: cheops   (05.02.2007 в 00:16)   письмо автору
 
   для: tAleks   (04.02.2007 в 12:01)
 

notice является своеобразным советом и выводится, когда выставлена максимальная чувствительность PHP к ошибкам - её следует понизить, как это сделано на всех хостингах, иначе они не дадут работать. Для этого, следует выставить соответствующее значение для директивы error_reporting http://www.softtime.ru/info/articlephp.php?id_article=23, в конфигурационном файле php.ini
error_reporting = E_ALL & ~E_NOTICE

Так же можно изменить уровень обработки ошибок локально, для этого в начало скрипта следует поместить функцию
<?php 
Error_Reporting
(E_ALL & ~E_NOTICE); 
?>

В качестве параметра, которой передать соответствующий уровень обработки ошибок.

http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=4985

   
 
 автор: Trianon   (04.02.2007 в 15:14)   письмо автору
 
   для: tAleks   (04.02.2007 в 11:56)
 

>Разве собака перед несуществующей переменной не должна глушить все ошибки?
Не должна.
Собака глушит ошибки при исполнении функций, перед вызовами которых её поместили.

   
 
 автор: bronenos   (04.02.2007 в 14:29)   письмо автору
 
   для: tAleks   (04.02.2007 в 14:10)
 

Зачем собаками?
<? 
foreach ($rus_months as $i => $month

    
$select = ($f['stop_year'] == $i) ? 'selected' ''
    echo 
"<option value=\"$i\" $select>$month</option>\r\n"

?>

   
 
 автор: tAleks   (04.02.2007 в 14:10)   письмо автору
 
   для: Poison   (04.02.2007 в 13:55)
 


<?php
foreach ($rus_months as $i => $month)
{
    @
$f['stop_year'] == $i $select ' selected' $select '';
    echo 
"<option value=\"$i\"".$select.">$month</option>\r\n";
}
?>

   
 
 автор: Poison   (04.02.2007 в 13:55)   письмо автору
 
   для: tAleks   (04.02.2007 в 12:01)
 

А что выше этой сроки?

   
 
 автор: tAleks   (04.02.2007 в 12:01)   письмо автору
 
   для: cheops   (04.02.2007 в 11:59)
 

Так:

[04-фев-2007 13:54:57] PHP Notice: Uninitialized string offset: 0 in x:\home\site\www\users\orders.php on line 298


Строка 298:

@$f['stop_year'] == $i ? $select = ' selected' : $select = ''; 


Если ее закоментирую, то ошибку не выдает...

   
 
 автор: cheops   (04.02.2007 в 11:59)   письмо автору
 
   для: tAleks   (04.02.2007 в 11:56)
 

А как точно выглядит сообщение об ошибке?

   
 
 автор: tAleks   (04.02.2007 в 11:56)   письмо автору
 
 

Такой код:

@$f['stop_year'] == $i ? $select = ' selected' : $select = '';


$f['stop_year'] когда не определена, т.е. $f вобше нет, то PHP ругается про какие-то строки:

Uninitialized string offset: 0 in ..... в таком-то файле....

Разве собака перед несуществующей переменной не должна глушить все ошибки?

Странно... в других случаях, когда переменная не определена, и речь не идет о массивах этот работает... собака глушит ошичку... а когда массив то почему-то нет.....

   

Сообщения:  [1-8] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования