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

Форум MySQL

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

 

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

вид форума:
Линейный форум Структурный форум

тема: Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}'
 
 автор: pavloff.d   (07.05.2007 в 07:58)   письмо автору
 
 

У меня, как и многих других, возникла проблема с вопросами после перехода на MySQL 4.1.
Добавил в запрос


mysql_query ("set character_set_client='cp1251'"); 
mysql_query ("set character_set_results='cp1251'"); 
mysql_query ("set collation_connection='cp1251_general_ci'");


выводит ошибку:
Parse error: syntax error, unexpected T_STRING, expecting T_OLD_FUNCTION or T_FUNCTION or T_VAR or '}' in /home/iwolru/public_html/class/database/mysqldatabase.php on line 96

Помогите.

   
 
 автор: Trianon   (07.05.2007 в 09:15)   письмо автору
 
   для: pavloff.d   (07.05.2007 в 07:58)
 

Куда добавили-то?

   
 
 автор: Pavloff.D   (07.05.2007 в 09:21)   письмо автору
 
   для: Trianon   (07.05.2007 в 09:15)
 

Добавил в файл вызова MySQL, а что, это очень важно?

   
 
 автор: Trianon   (07.05.2007 в 09:33)   письмо автору
 
   для: Pavloff.D   (07.05.2007 в 09:21)
 

как вам сказать... php-файл это не коктейль, который можно абы как взбалтывать. Да и коктейль можно далеко не всякий.
Показывайте контекст 96-й строки.

   
 
 автор: Pavloff.D   (07.05.2007 в 23:50)   письмо автору
 
   для: Trianon   (07.05.2007 в 09:33)
 

Мне посоветовали вставить
mysql_query("set names 'cp1251'");
после mysql_select_db



if (!mysql_select_db(XOOPS_DB_NAME)) {
$this->logger->addQuery('', $this->error(), $this->errno());
return false;


я вставлял и так


if (!mysql_select_db(XOOPS_DB_NAME)) {
mysql_query("set names 'cp1251'");
$this->logger->addQuery('', $this->error(), $this->errno());
return false;


и сяк


if (!mysql_select_db(XOOPS_DB_NAME)) {
$this->logger->addQuery('', $this->error(), $this->errno());
mysql_query("set names 'cp1251'");
return false;


но ничего не изменилось, как его вставить?

   
 
 автор: Trianon   (08.05.2007 в 00:20)   письмо автору
 
   для: Pavloff.D   (07.05.2007 в 23:50)
 

Вы вставили этот оператор не в ту ветвь.
У Вас первая ветвь - если выбор БД не произошел - зарегистрировать ошибку и выйти.
Если произошел - работать дальше (но этого кода уже не видно).

Вы вставили вызов как раз рядом с регистрацией ошибки.
На самом деле имело смысл вставить вызов еще до выбора базы.

mysql_query("set names 'cp1251'"); 
if (!mysql_select_db(XOOPS_DB_NAME)) { 
$this->logger->addQuery('', $this->error(), $this->errno()); 
return false; 


Контекст строки с ошибкой Вы так и не показали.

   
 
 автор: Pavloff.D   (08.05.2007 в 07:19)   письмо автору
 
   для: Trianon   (08.05.2007 в 00:20)
 

БОЛЬШОЕ СПАСИБО! Заработало!

   
Rambler's Top100
вверх

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