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
Форумы портала PHP.SU :: Версия для печати :: Непонятно на что ругается
Форумы портала PHP.SU » » Если скрипт не работает » Непонятно на что ругается

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

1. Uchenik - 18 Августа, 2011 - 09:51:58 - перейти к сообщению
Функция подключения к БД объявлена 1 раз в index.php, а он ругается что типа я её вызвал дважды
CODE (htmlphp):
скопировать код в буфер обмена
  1. Fatal error: Cannot redeclare dbconnect() (previously declared in Z:\home\project\www\db\config.php:16) in Z:\home\project\www\db\config.php on line 19

фот сам файл config.php
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. //корень сайта//
  3. define(SITE_DIR, $_SERVER['DOCUMENT_ROOT']);
  4.  
  5. session_name('tzLogin');
  6. //Запуск сессии//
  7. session_set_cookie_params(360*24*60*60); //длительность жизни сессии
  8. //параметры подключения к БД//
  9. define(DB_HOST, 'localhost') ;
  10.         define(DB_USER, 'root') ;
  11.         define(DB_PASS, '') ;
  12.         define(DB_NAME, 'Calls') ;
  13. // Ф-ция подключения к БД:
  14.         function dbConnect()
  15.         {       mysql_connect(DB_HOST,DB_USER,DB_PASS) ; // - подключаемся к хосту ДБ
  16.                 mysql_select_db(DB_NAME) ; // - соединение с ДБ
  17.                 mysql_query('SET NAMES UTF8') ; // - устанавливаем кодировку соединения
  18.         }
  19.        
  20.  
  21. if ($myrow['lang'] == "eng"){$langs = "project.en.lang.php";}
  22. elseif ($myrow['lang'] == "rus") {$langs = "project.ru.lang.php";}
  23. else {$langs = "project.alter.lang.php";}
  24. ?>
2. SAD - 18 Августа, 2011 - 09:54:27 - перейти к сообщению
там черным по русскому написано, невозможно переопределить функцию, которая пределена в config.php
3. Uchenik - 18 Августа, 2011 - 10:00:48 - перейти к сообщению
=)
Я тоже читать умею, я только не понял почему он ругается про переопределение функции, когда я её вызываю только 1 раз
4. SAD - 18 Августа, 2011 - 10:04:26 - перейти к сообщению
причем тут вызов, вы ее 2 раза определили
5. Uchenik - 18 Августа, 2011 - 10:06:53 - перейти к сообщению
не понял, как это? Не мог же я определить её 2 раза в одном и том же файле, к самой ошибке написано что она определена в config.php в строке 16 и в строке 19 того же файла
6. SAD - 18 Августа, 2011 - 10:09:19 - перейти к сообщению
16 начало определения, 19 конец определения
7. Uchenik - 18 Августа, 2011 - 10:11:42 - перейти к сообщению
И что теперь делать?
8. SAD - 18 Августа, 2011 - 10:15:44 - перейти к сообщению
Uchenik пишет:
Функция подключения к БД объявлена 1 раз в index.php, а он ругается что типа я её вызвал дважды

капец, вы сами ничего не замечаете? вы ее объявили в index.php и в config.php

и по видимому, инклудите config.php в index.php
9. Uchenik - 18 Августа, 2011 - 10:24:15 - перейти к сообщению
Всмысле я чуть-чуть не так выразился, в index я делаю просто вызов этой функции
10. PATCH - 18 Августа, 2011 - 10:30:58 - перейти к сообщению
выложи index.php вопрос зачем функция вызова бд? если мы все равно подрубаем файл конфиг) че то мне подсказывает или ты не правильно функцию вызываеш или ты ее 2 раза вызвал)
11. Uchenik - 18 Августа, 2011 - 10:45:36 - перейти к сообщению
И ещё одна тупая ситуация, до авторизации, условие про языки работает, а после авторизации не работает.
Спойлер (Отобразить)
12. PATCH - 18 Августа, 2011 - 10:51:52 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. include 'db/config.php' ; dbConnect(); include "auth/auth-panel.php";
а так? кстати выложи сюда скрипт авторизации)
ах да


<?require $langs;?> - что это за строка Оо
Цитата:

И ещё одна тупая ситуация, до авторизации, условие про языки работает, а после авторизации не работает.
а ты что хотел перезагрузил страницу и все твои переменые офф тут 2 варианта сохранять язык в отдельном файле как переменую или в сессии
13. Uchenik - 18 Августа, 2011 - 10:58:48 - перейти к сообщению
<?require $langs;?> смотри строки 19-21 (в зависимости от того какой язык выбрал пользователь при регистрации, весь контент будет переводиться на русский или на английский) но это почему-то работает только до авторизации, т.е. пока юзер не авторизовался он видит переод контента из дефолтного файла, а после авторизации контент должен переводиться в соответствии с языком пользователя

Спойлер (Отобразить)
14. PATCH - 18 Августа, 2011 - 11:01:01 - перейти к сообщению
ты на синтаксис глянь <?require $langs;?> вот влепи это в notepad и ты увидеш он не подсветится как php код потому что ты совсем тег определение php кода с функцией require
<? require $langs; ?> вот теперь верно Оо кстати как эт мы присоединяем)) переменую))
15. Uchenik - 18 Августа, 2011 - 11:02:57 - перейти к сообщению
не переменную, а её значение, в ней хранится имя языкового файла (я так думаю).

 

Powered by ExBB FM 1.0 RC1