Joomla - проблема имени базы

Материал из 1GbWiki.

(Различия между версиями)
Перейти к: навигация, поиск
Версия 03:43, 5 августа 2008 (править)
76.123.121.168 (Обсуждение)
(psbjVBRELin)
← К предыдущему изменению
Версия 05:35, 5 августа 2008 (править) (отменить)
81.1.243.193 (Обсуждение)

К следующему изменению →
Строка 1: Строка 1:
-http://diaries-35.newsbloga.com Diaries http://operatori-5.newsbloga.com Operatori http://coconut-23.newsbloga.com Coconut http://santangelo-46.newsbloga.com Santangelo http://baviera-47.newsbloga.com Baviera http://cavallotti-46.newsbloga.com Cavallotti http://ginnasio-14.newsbloga.com Ginnasio http://creditizia-11.newsbloga.com Creditizia http://uscire-9.newsbloga.com Uscire http://cartacei-52.newsbloga.com Cartacei http://binary-8.newsbloga.com Binary http://facilities-99.newsbloga.com Facilities http://corrado-50.newsbloga.com Corrado http://puglia-86.newsbloga.com Puglia http://venatorio-76.newsbloga.com Venatorio http://centrale-76.newsbloga.com Centrale http://hydraulic-15.newsbloga.com Hydraulic http://disneyland-41.newsbloga.com Disneyland http://francisco-60.newsbloga.com Francisco http://research-3.newsbloga.com Research http://medioevale-76.newsbloga.com Medioevale http://naturally-8.newsbloga.com Naturally http://antonacci-28.newsbloga.com Antonacci http://parodi-39.newsbloga.com Parodi http://romana-88.newsbloga.com Romana http://archive-95.newsbloga.com Archive http://nascondere-74.newsbloga.com Nascondere http://interior-3.newsbloga.com Interior http://plastici-33.newsbloga.com Plastici http://bonfiglio-74.newsbloga.com Bonfiglio http://serena-28.newsbloga.com Serena http://davanti-72.newsbloga.com Davanti http://reiter-52.newsbloga.com Reiter http://windsor-74.newsbloga.com Windsor http://flavio-4.newsbloga.com Flavio http://sezionali-97.newsbloga.com Sezionali http://cartaceo-40.newsbloga.com Cartaceo http://ucciso-40.newsbloga.com Ucciso http://cloner-48.newsbloga.com Cloner http://addiction-85.newsbloga.com Addiction http://svizzere-24.newsbloga.com Svizzere http://marziale-5.newsbloga.com Marziale http://syberia-97.newsbloga.com Syberia http://allure-86.newsbloga.com Allure http://iglesias-84.newsbloga.com Iglesias http://impreza-89.newsbloga.com Impreza http://francis-66.newsbloga.com Francis http://comandi-33.newsbloga.com Comandi http://polymer-5.newsbloga.com Polymer http://episode-16.newsbloga.com Episode+== Неудобство решено ==
 +В системе хостинга 1Gb решено называть базы без префикса 1.
 +Теперь базы, создаваемые системой, совместимы с требованием Joomla.
 + 
 +== Для истории ==
 +В Joomla версии 1.5 (проблема точно есть на версии 1.5.2) присутствует
 +проблема связанная с тем, что эта "CMS" считает будто имя БД не может начинаться с цифры, при указании имени БД с префиксом "1gb_" пользователи получают сообщение
 + 
 + "Имя базы данных MySQL должно начинаться с латинской буквы и может содержать только латинские буквы,
 + цифры или символ подчёркивания (A-Z,a-z,0-9,_)"
 + 
 +К сожалению разработчики Joomla в этом отношении не правы, так как имя базы данных для mySQL '''может''' содержать первым символом цифру, о чём имеется многолетняя беспроблемная практика как с нашей стороны, так и со стороны любых других CMS и систем которые как либо вообще работают с СУБД mySQL.
 + 
 +Для того что бы обойти указанное огарничение нужно внести изменение в код Joomla с целью снять проверку правильности ввода имени БД, для этого нужно отредактировать два файла:
 + 
 +* /installation/installer/models/model.php, найти в нём следующий код (ориентиром может служить переменная 'MYSQLDBNAMEINVALIDCHARS':
 + 
 + if (!preg_match( '#^[a-zA-Z]+[a-zA-Z0-9_]*$#', $DBname )) {
 + $this->setError(JText::_('MYSQLDBNAMEINVALIDCHARS'));
 + $this->setData('back', 'dbconfig');
 + $this->setData('errors', $errors);
 + return false;
 + }
 + 
 +и удалить его - просто стереть эти 6 строчек.
 + 
 + 
 +* /installation/template/tmpl/dbconfig.html, ориентир тот же:
 + 
 + } else if (!regex.test(DBname.value)) {
 + alert('<jtmpl:translate key="MYSQLDBNAMEINVALIDCHARS" escape="yes">The MySQL Database Name must ...
 + return;
 + 
 +и так же их удалить
 + 
 +[[Категория:Системы Управления Сайтом]]

Версия 05:35, 5 августа 2008

Неудобство решено

В системе хостинга 1Gb решено называть базы без префикса 1. Теперь базы, создаваемые системой, совместимы с требованием Joomla.

Для истории

В Joomla версии 1.5 (проблема точно есть на версии 1.5.2) присутствует проблема связанная с тем, что эта "CMS" считает будто имя БД не может начинаться с цифры, при указании имени БД с префиксом "1gb_" пользователи получают сообщение

"Имя базы данных MySQL должно начинаться с латинской буквы и может содержать только латинские буквы, 
цифры или символ подчёркивания (A-Z,a-z,0-9,_)"

К сожалению разработчики Joomla в этом отношении не правы, так как имя базы данных для mySQL может содержать первым символом цифру, о чём имеется многолетняя беспроблемная практика как с нашей стороны, так и со стороны любых других CMS и систем которые как либо вообще работают с СУБД mySQL.

Для того что бы обойти указанное огарничение нужно внести изменение в код Joomla с целью снять проверку правильности ввода имени БД, для этого нужно отредактировать два файла:

  • /installation/installer/models/model.php, найти в нём следующий код (ориентиром может служить переменная 'MYSQLDBNAMEINVALIDCHARS':
if (!preg_match( '#^[a-zA-Z]+[a-zA-Z0-9_]*$#', $DBname )) {
	$this->setError(JText::_('MYSQLDBNAMEINVALIDCHARS'));
	$this->setData('back', 'dbconfig');
	$this->setData('errors', $errors);
	return false;
}

и удалить его - просто стереть эти 6 строчек.


  • /installation/template/tmpl/dbconfig.html, ориентир тот же:
} else if (!regex.test(DBname.value)) {
	alert('<jtmpl:translate key="MYSQLDBNAMEINVALIDCHARS" escape="yes">The MySQL Database Name must ...
	return;

и так же их удалить

Личные инструменты