Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Выдает ошибки, что делать не знаю

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
Anna
Отправлено: 16 Августа, 2007 - 05:43:40
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Авг. 2007  
Откуда: Красноярск


Помог: 0 раз(а)




Здравствуйте! При установке сайта на локалхост, выводятся след. ошибки:
Notice: Undefined index: id in z:homekrasmash.krsk.ruwwwdoc.php on line 6
Notice: Undefined offset: 2 in z:homekrasmash.krsk.ruwwwinc_header.php on line 19
Warning: Cannot modify header information - headers already sent by (output started at z:homekrasmash.krsk.ruwwwdoc.php:6) in z:homekrasmash.krsk.ruwwwinc_header.php on line 28
Notice: Undefined index: gSession in z:homekrasmash.krsk.ruwwwadminfunctions.php on line 209
Notice: Undefined variable: curDocID in z:homekrasmash.krsk.ruwwwinc_header.php on line 9

ну и все в таком духе. Как с этими ошибками спраится ума не преложу, сам сайт делала не я, а его разроботчики молчат. Заранее спасибо.
 
 Top
valenok Модератор
Отправлено: 16 Августа, 2007 - 13:18:44
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




Впишите в начало скрипта
error_reporting(0);


-----
Truly yours, Sasha.
 
My status
 Top
Devoll
Отправлено: 16 Августа, 2007 - 16:20:55
Post Id



Новичок


Покинул форум
Сообщений всего: 59
Дата рег-ции: Июль 2007  


Помог: 0 раз(а)




А лучше в php.ini откомментируй следующую строчку:


естественно закомментировав другую строчку (вероятно у тебя она выглядит так: error_reporting = E_ALL
 
 Top
UserID
Отправлено: 16 Августа, 2007 - 16:22:28
Post Id



Магистр JavaScript


Покинул форум
Сообщений всего: 151
Дата рег-ции: Авг. 2006  


Помог: 0 раз(а)




valenok
Это не решение проблемы. По крайней мере оно не профессиональное.

Anna
Во всех языках определённо сказано, что все переменные нужно инициализировать, следовательно:
Notice: Undefined index: id in z:homekrasmash.krsk.ruwwwdoc.php on line 6 означает, что у вас неизвестно откуда взялась переменная id. Впишите в начало скрипта что-то типа $id = "", либо если объявление в классе, то var $id = "". Вообще хорошо ещё задавать значение по умолчанию, тогда можно предотвратить подмену пеерменно в хидерах HTTP-запросов. Что-то типа этого:
PHP:
скопировать код в буфер обмена
  1.  
  2. if(isset($id)) {
  3.     $id = "You`re suck";
  4. } else {
  5.     $id = "";
  6. }
  7.  


Notice: Undefined offset: 2 in z:homekrasmash.krsk.ruwwwinc_header.php on line 19 что-то вроде того, что где перменная приняла недопустимую величину, или длину.
Необходимо ввести дополнительные проверки и устанавливать значения перменных по умолчанию

Всё остальное: и т.д. и т.п.
 
 Top
valenok Модератор
Отправлено: 16 Августа, 2007 - 18:08:18
Post Id



Здесь могла бы быть ваша реклама


Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006  
Откуда: Israel


Помог: 3 раз(а)




UserID
А как вы понимаете поставленную задачу?
Я так понимаю что нужно чтоб ошибки не возникали и не писало всякую чепуху.

А между тем, скорее всего там наверное чтото такое
$mail = $message . $something_else . "Form site: abc.com";
if(strlen($mail)<150) return 0;

Тоесть если просто убрать сообщения об ошибках - ничего не произойдёт.

Вообще когда отвечал я, то это единственное приемлимое решение было
учитывая предоставленную информацию.

Undefined offset это когда у массива не существует ключ по которому к нему обращаются.


-----
Truly yours, Sasha.
 
My status
 Top
Anna
Отправлено: 17 Августа, 2007 - 03:31:38
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Авг. 2007  
Откуда: Красноярск


Помог: 0 раз(а)




Дико извеняюсь, что более конкретно не описала суть проблемы сразу. Дико каюсь.:shuffle:.
PHP:
скопировать код в буфер обмена
  1.  
  2. <?PHP
  3.     require_once("config.php");
  4.     require_once("functions.php");
  5.     openDB();
  6.     $curDocID=intval($_GET['id']);
  7.     $lang = getLanguage();
  8.     include_once ($gConfig ['baseDir'] . 'dict/' . $lang . '/main.php');
  9.     if(!$curDocID)
  10.     { switch($lang)
  11.         { case 'russian' : {$root = $gConfig['pages']['root'];
  12.            break;
  13.                                   }
  14.         case 'english' : {$root = $gConfig['pages']['eng_root'];
  15.         break;          
  16.                                }
  17.         default : {$root = $gConfig['pages']['root'];
  18.                         break;
  19.                        }
  20.          }
  21.         $curDocID=intval($root);
  22.     }
  23.     $curDoc=dsLoadDocument($curDocID);
  24.     if(!$curDoc) {require_once($gConfig['baseDir']."404error.php"); die(); }
  25.     if(!$curDoc['is_published'])
  26.     {require_once($gConfig['baseDir']."404error.php"); die(); }
  27.      $parser=dsLoadDocumentParser($curDocID);
  28.      $curMap=&dsEnumDocPropertiesAsMap($curDocID);
  29.      $curPath=&dsGetDocumentPath($curDocID);
  30.      if (($curPath[1]['doc_id'] == $gConfig['pages']['root'] && !strcmp($lang, 'english')) ||
  31.            ($curPath[1]['doc_id'] == $gConfig['pages']['eng_root'] && !strcmp($lang,'russian')))
  32.         {redirect( getDocURL($curDoc) );
  33.         }
  34.     if (!publishedParent($curPath))
  35.         {require_once($gConfig['baseDir']."404error.php"); die(); }
  36.     if($parser=="parser_link")
  37.     {$url=trim($curMap["URL"]);
  38.        $code=intval($curMap["RedirectCode"]);
  39.         if(!$code) $code=302;
  40.         // Если полный URL
  41.         if(substr($url, 0, 7)=='http://')
  42.         {
  43.         }
  44.         // Если абсолютный URL
  45.  else if(substr($url, 0, 1)=='/')
  46.         {$url=$gConfig['fullBaseURL'].substr($url,1);
  47.         }
  48.         // Если относительный URL
  49.         else
  50.         {$url=$gConfig['fullBaseURL'].$url;
  51.         }
  52. header(sprintf("Location: %s",$url));
  53.         exit();
  54.     }
  55. parser
  56.     include_once("inc_header.php");
  57.     $file=$parser.'.php';
  58. if(file_exists($file)) require_once($file);
  59.         else printf("<p>Ошибка: обработчик <b>%s</b> не найден<br></p>",$parser);
  60. include_once("inc_footer.php");
  61.     closeDB();
  62. ?>
  63.  

(Добавление)
$curDocID=intval($_GET['id']) этот асоциативный массив должен браться из БД. БД - PostgreSQL. Так что, если я правильно понимаю, обяъявлением переменной дело не исправится. И там где офсеты выпадают, то же должно браться из БД.

(Добавление)
P.S. в пхп.ини у меня все именно так и настроено - error_reporting = E_ALL & ~E_NOTICE
 
 Top
Никола
Отправлено: 17 Августа, 2007 - 10:25:30
Post Id



Гость


Покинул форум
Сообщений всего: 72
Дата рег-ции: Дек. 2006  


Помог: 0 раз(а)




и вообще это не ошибка, а примечание

(Добавление)
в WEB'е этого примечания обычно невыдается (по крайней мере на моем хостинге)
 
 Top
evgenijj
Отправлено: 17 Августа, 2007 - 11:40:04
Post Id



Участник


Покинул форум
Сообщений всего: 1212
Дата рег-ции: Авг. 2006  
Откуда: Москва


Помог: 10 раз(а)




Насколько я понимаю, вся проблема в том, что не определена переменная $_GET["id"], а отсюда и все остальные ошибки. Чтобы она была определена, ссылка на эту страницу должна быть
ht tp://myserver.com/mypage.php?id=2
PHP:
скопировать код в буфер обмена
  1.  
  2. openDB();
  3. if ( !isset( $_GET["id"] ) ) $_GET["id"] = 0;
  4. $curDocID=intval($_GET['id']);
  5. $lang = getLanguage();
  6.  

Ну а дальше эта ошибка тянет за собой остальные
Warning: Cannot modify header information - headers already sent by (output started at z:homekrasmash.krsk.ruwwwdoc.php:6)
Нельзя модифицировать заголовок, потому что уже был осуществлен вывод в браузер (вывод предупреждения Undefined index: id in ... )
Notice: Undefined index: gSession in z:homekrasmash.krsk.ruwwwadminfunctions.php on line 209
Не стартанула сессия (уже был вывод в браузер - Undefined index: id in ... )
Notice: Undefined variable: curDocID in z:homekrasmash.krsk.ruwwwinc_header.php on line 9
Если не определена переменная $_GET["id"], то и переменная $curDocID тоже не определена
 
 Top
Anna
Отправлено: 20 Августа, 2007 - 14:10:06
Post Id


Новичок


Покинул форум
Сообщений всего: 3
Дата рег-ции: Авг. 2007  
Откуда: Красноярск


Помог: 0 раз(а)




Огромное всем спасибо! Наконец-то все заработало и нотисы и всякое им подобное не вылезает. Еще раз спасибо за помщьРадость
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB