Корректная работа базы данных в моей сборке

Разделы:

Мне часто задают такой вопрос:

Здравствуйте. Я скачал скрипт магазина и установил его, вроде все нормально, но почему-то некоторые шрифты не отображаются коректно. Вместо слов знаки вопросов...

Знаки вопросов (битая кодировка) могут появляться если ваш сервер не настроен на корректную работу c cp1251 (windows-1251). Часто такое бывает на зарубежных хостингах.

Давайте рассмотрим как это поправить...

В таких случаях вам может помочь небольшая правка в коде 2-х файлов
includes\functions\database.php И аналогичный файл в админке.

Найдите в них строку
//mysql_query("SET NAMES cp1251");

Расскоментируйте ее, убирав слеши в начале, чтобы получилось:
mysql_query("SET NAMES cp1251");

Затем вам возможно потребуется очистка созданной базы и переустановка скрипта, чтобы данные были внесены в базу корректно.

Так же убедительная просьба, прежде чем задавать вопрос - не забывайте читать файл Install.txt, что входит в архив со скриптом магазина.

И все-таки, почему Вы не используйте UTF-8, cp1251 вроде бы как не актуально уже?

Возможно перевел бы все в utf-8, но в ближайшие месяц-два выложу более мощный скрипт магазина. Он будет в utf-8.

Магазин osCommerce слишком много работы "напильником" требует - это не нормально, особенно для тех кто ищет бесплатные скрипты и с программированием не дружит.

Все поменял, строки раскоментировал, вопросы остальсь...

"Затем вам возможно потребуется очистка созданной базы и переустановка скрипта, чтобы данные были внесены в базу корректно" - это делали?

Если не поможет, то без ручного вмешательства в настройки базы или импортирования через phpMyAdmin в корректной кодировке не обойтись.

Очистил и переустановил...
Не работает :(

Тогда вручную или используйте русский хостинг с базой данных настроенной на работу с кодировкой win 1251

Если есть доступ по SSH (Putty), то можно не переустанавливая ничего, запустить из папки, где находится файл oscommerce.sql:

===
mysql --default-character-set=cp1251 -u USER -pPASSWORD -hlocalhost BAZA < oscommerce.sql
===

USER, PASSWORD, BAZA соответственно задаются свои

Среди пользователей бесплатных версий таких скриптов совсем не много тех, кто знает что такое SSH ;)

А так, тем кто хотя бы слышал об SSH, будет повод попробовать на практике.

Столкнулся с проблемой. Установил скрипт, все работает, в том числе админская часть, начал настраивать. Как и написано исправил файл "configure" в админской папке, изменил название самой папки на такоеже.... но при попытке входа в админскую чать теперь выдается ошибка:
"Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /home/u55272/domosed-vrnru/www/admin/includes/functions/database.php on line 19
Unable to connect to database server!"
Ничего не понимаю - все делал по инструкции, помогите плиз!

Давайте перенесем этот вопрос в личку. Тем более, вопрос не относится к теме кодировки базы данных.

Ответил вам по e-mail.

У меня такая же проблема, поскажите пожалуйста в каком файле настроить конекшн к Базе?

"Warning: mysql_connect() [function.mysql-connect]: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in /home/u55272/domosed-vrnru/www/admin/includes/functions/database.php

Так же как и предыдущему автору комментария - с такими вопросами пишите в личку! через контакты сайта.

Для того чтобы мне легче было вам помочь сразу прикладывайте ваши конфигурационные файлы /www/admin/includes/configure.php и /www/includes/configure.php

При это обязательно рассказывате подробно что конкретно делали, меняли что-либо в файлах, работал ли магазин до того как внесли изменения и т.п.

И если приводите код ошибки, то приводите весь код целиком именно вашей ошибки.

Касательно вашей ошибки - обратитесь к хостеру, у вас проблема в соединении с MySQL через PHP

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'OEM'@'localhost' (using password: NO) in Z:\home\localhost\www\includes\functions\database.php on line 19
Unable to connect to database server!

столкнулся с ошибкой, что делать?

Ответил вам в личку. У вас неверно указаны параметры соединения с базой данных. Такое встречается часто у начинающих, при использовании локального сервера. Внимательно озучайте руководство к локальному серверу который используете, ну и погуглить не забывайте. Многие решения уже описаны в сети.

как то непонятно, почему то вхожу с паролем своим и своей почтой, выдаёт: ОШИБКА: Неверный 'E-Mail Адрес' и/или 'Пароль'., попробовал поменять пароль в базе данных, проверил там же и почту, все равно такая же ошибка. Что делать?

Попробуйте в файл .htaccess добавить строку с параметром:

php_value register_globals 1

Либо, если есть доступ, в настройках php включите register globals

"Если не поможет, то без ручного вмешательства в настройки базы или импортирования через phpMyAdmin в корректной кодировке не обойтись."

Расскажите пожалуйста как это сделать? У меня такая же проблема.

Index of /моя папка
Parent Directory
Public files of shop

Такая страница вываливается при переходе "http://ваш-сайт.ру/папка_магазина" после распаковки на мой сайт.
Что делать дальше? Не оставьте без ответа, я не силен в скриптах.

Все файлы из папки Public files of shop вам нужно переместить в "папка_магазина" а саму папку Public files of shop удалить

Перед установкой зашел в phpmyadmin сопоставил кодировку с cp_1251_general_ci, установил, появились в админке знаки ?????
Не пойдет!
Удалил таблицы в базе, заново инсталлировал с раскоментированными строками в 2 файлах database.php: mysql_query("SET NAMES cp1251");
Опять появились в админке знаки ?????
Не пойдет!
На этом дальнейшее использование скрипта заморозилось(((
Что делать??? Хостер у меня платный, но недорогой, потому менять не хочу!
Пока другой магазин (presta) юзаю, тоже интересный, там на utf8, проблем нет...
Но жду от Вас новых версий. Спасибо!

Ну во-первых спасибо Михаилу, за то, что терпеливо отвечал на мои письма.
Ну и по теме. Мучался с кодировками 2 дня, замучал Михаила, техпотдержку хостинга, но проблема с кодировками не решалась... Ни средствами указанными выше, ни перекодировкой в ср1251 базы уже на сервере через phpmyadmin.
Проблема решилась неожиданно просто. Перед установкой скрипта я тупо импортировал базу данных средствами phpmyadmin, установил скрипт, всё работает на ура и нет этих ужасных ???????.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу. Если у вас есть аккаунт в Gravatar, связанный с этим e-mail адресом, то он будет использован для отображения аватара.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешённые HTML-теги: <a> <em> <b> <h2> <h3> <blockquote> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd><img>
  • Строки и параграфы переносятся автоматически.

Подробнее о форматировании текста

CAPTCHA
Небольшой тест на зрение :) шучу. Оборона от спамеров, а "шо делать"? :) такая жизнь.

Если непонятно как пользоваться, то нажмите на кнопку со знаком вопроса - откроется краткая справка