Правила форума Гаранты форума
Размещение рекламы AMX-X компилятор

Здравствуйте, гость Вход | Регистрация

Наши новости:

14-дек
24-апр
10-апр
11-апр

2 страниц V   1 2

MySQLi вывод данных в кодировке UTF-8

[РЕШЕНО]
Статус пользователя FruityServer
сообщение 24.7.2015, 7:46
Сообщение #1
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

Вывожу данных из БД через mysqli, данные в БД - русские слова и арабские цифры.
Кодировка БД utf8_general_ci.
PHP скрипт вывода
Код
if ($tarifs = $mysqli->query('SELECT * FROM `services`')) {


    if($tarifs->num_rows > 0) {
    while($row = $tarifs->fetch_assoc()){
    echo '<div class="col-lg-3 col-xs-6">
              <!-- small box -->
              <div class="small-box bg-'.$row['color'].'">
                <div class="inner">
                  <h3>'.$row['title'].'</h3>
                  <p>'.$row['text'].'</p>
                  <p>'.$row['price'].'</p>
                </div>
                <div class="icon">
                  <i class="ion ion-'.$row['icon'].'"></i>
                </div>
                <a href="'.$row['link'].'" class="small-box-footer">Купить <i class="fa fa-arrow-circle-right"></i></a>
              </div>
            </div>';
}
} else {
echo '<div class="col-xs-12"><div class="alert alert-info alert-dismissable">
<i class="fa fa-ban"></i>
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<b>Информация!</b> В данный момент мы ещё не добавили услуги, подождите пару лет =D
</div></div>';
}
}

Код
<meta charset="UTF-8">

В наличии.
Пытался использовать $mysqli->set_charset('utf-8'); - не помогло.
Структура БД

В итоге данные выводятся в не правильной кодировке, а точнее вместо русский слов - вопросительные знаки (скрин ниже).

P.S Гугл не помог.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   Цитировать сообщение
Статус пользователя sergggzi
сообщение 24.7.2015, 8:56
Сообщение #2
Иконка группы

Стаж: 13 лет

Сообщений: 6536
Благодарностей: 6222
Полезность: 807

сделать сравнение для таблицы cp1251_general_ci
либо юзать iconv
iconv -- Преобразовывает символы строки в другую кодировку

Отредактировал: sergggzi, - 24.7.2015, 8:57
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 8:57
Сообщение #3
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

Цитата(sergggzi @ 24.7.2015, 9:51) *
сделать сравнение для таблицы cp2151_general_ci

Не помогло.
Сейчас попробую iconv.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 9:04
Сообщение #4
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

Код
iconv("cp1251", "UTF-8", $row['text'])

Не спасает sad.gif
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 9:28
Сообщение #5
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

UPD: Готов финансово отблагодарить вечером.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя onotole
сообщение 24.7.2015, 9:33
Сообщение #6


Иконка группы

Стаж: 13 лет

Сообщений: 1572
Благодарностей: 1119
Полезность: 1550

Меценат Меценат

Кодировку файла скрипта проверь
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 9:36
Сообщение #7
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

onotole, UTF-8 без BOM.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя onotole
сообщение 24.7.2015, 12:02
Сообщение #8


Иконка группы

Стаж: 13 лет

Сообщений: 1572
Благодарностей: 1119
Полезность: 1550

Меценат Меценат

У компа буду только во вторник. Если не решишь до этого времени, напиши, помогу
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 12:10
Сообщение #9
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

onotole, спасибо, буду иметь ввиду.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя jtiq
сообщение 24.7.2015, 12:17
Сообщение #10


Иконка группы

Стаж: 18 лет

Сообщений: 1717
Благодарностей: 767
Полезность: 979

Меценат Меценат

скинь структуру таблицы, а не поля содержащиеся в нём
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 12:26
Сообщение #11
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

jtiq,
Структура БД
Код
-- phpMyAdmin SQL Dump
-- version 3.5.7
-- http://www.phpmyadmin.net
--
-- Хост: localhost
-- Время создания: Июл 24 2015 г., 13:22
-- Версия сервера: 10.0.11-MariaDB
-- Версия PHP: 5.3.29

SET SQL_MODE="NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

--
-- База данных: `user4051_booster`
--

-- --------------------------------------------------------

--
-- Структура таблицы `services`
--

CREATE TABLE IF NOT EXISTS `services` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `color` varchar(32) CHARACTER SET utf8 NOT NULL,
  `link` varchar(255) CHARACTER SET utf8 NOT NULL,
  `title` varchar(32) CHARACTER SET utf8 NOT NULL,
  `text` varchar(255) CHARACTER SET utf8 NOT NULL,
  `price` varchar(32) CHARACTER SET utf8 NOT NULL,
  `icon` varchar(255) CHARACTER SET utf8 NOT NULL DEFAULT 'bag',
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=13;

--
-- Дамп данных таблицы `services`
--

INSERT INTO `services` (`id`, `color`, `link`, `title`, `text`, `price`, `icon`) VALUES
(1, 'gray', 'http://www.oplata.info/asp2/pay_wm.asp?id_d=1781130', 'BOOST-1', '!пта', '20 рублей', 'bag'),
(2, 'blue', 'http://www.oplata.info/asp2/pay_wm.asp?id_d=1781150', 'BOOST-2', '2 круга', '40 рублей', 'bag'),
(3, 'navy', 'http://www.oplata.info/asp2/pay_wm.asp?id_d=1781163', 'BOOST-3', '3 круга', '60 рублей', 'bag'),
(4, 'purple', 'http://www.oplata.info/asp2/pay_wm.asp?id_d=1781173', 'BOOST-4', '4 круга', '80 рублей', 'bag'),
(5, 'maroon', 'http://www.oplata.info/asp2/pay_wm.asp?id_d=1781202', 'BOOST-5', '5 кругов', '100 рублей', 'bag'),
(6, 'teal', 'http://www.oplata.info/asp2/pay_wm.asp?id_d=1781226', 'BOOST-8', '8 кругов + 2 бесплатно', '160 рублей', 'bag'),
(7, 'orange', 'http://www.oplata.info/asp2/pay_wm.asp?id_d=1857008', 'BOOST-25', '25 кругов + 5 бесплатно', '500 рублей', 'bag'),
(8, 'aqua', 'http://www.oplata.info/asp2/pay_wm.asp?id_d=1857013', 'BOOST-XXL', '100 кругов', '1900 рублей', 'key'),
(9, 'red', 'http://www.oplata.info/asp2/pay_wm.asp?id_d=1781230', 'TOP', '1 месяц', '200 рублей', 'bag'),
(10, 'green', '/', 'VIP', '1 месяц', '100 рублей', 'bag'),
(11, 'olive', '/', 'GameMenu', '7 дней', '150 рублей', 'key'),
(12, 'black', '/', 'Randome', 'Рандомный ключ', '50 рублей', '');

/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя jtiq
сообщение 24.7.2015, 12:38
Сообщение #12


Иконка группы

Стаж: 18 лет

Сообщений: 1717
Благодарностей: 767
Полезность: 979

Меценат Меценат

кодировку таблицы и полей попробуй поменять на utf-8
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 12:44
Сообщение #13
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

jtiq,
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя jtiq
сообщение 24.7.2015, 12:54
Сообщение #14


Иконка группы

Стаж: 18 лет

Сообщений: 1717
Благодарностей: 767
Полезность: 979

Меценат Меценат

FruityServer, у полей тоже
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 13:03
Сообщение #15
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

jtiq,
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя jtiq
сообщение 24.7.2015, 13:11
Сообщение #16


Иконка группы

Стаж: 18 лет

Сообщений: 1717
Благодарностей: 767
Полезность: 979

Меценат Меценат

и всё равно также?
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 13:12
Сообщение #17
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

jtiq, всё так и стояло.
Да, всё равно так же как на скрине в 1 посте.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
umprex
сообщение 24.7.2015, 13:29
Сообщение #18


Иконка группы

Стаж: 16 лет
Город: Киев

Сообщений: 2909
Благодарностей: 4781
Полезность: 2197

FruityServer, могу в teamviewer сделать.


Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя FruityServer
сообщение 24.7.2015, 13:31
Сообщение #19
Стаж: 10 лет

Сообщений: 202
Благодарностей: 113
Полезность: 142

umprex, ближе к вечеру отпишу в скайп.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
   + Цитировать сообщение
Статус пользователя Orty_Hart
сообщение 24.7.2015, 17:54
Сообщение #20
Стаж: 14 лет

Сообщений: 1399
Благодарностей: 408
Полезность: 725

FruityServer,
не советую использовать iconv(), это во 1.
2. Если данные, внести в БД, с phpmyadmin - будет кирилица (как у вас)
3. Файл ***.php должен иметь кодировку utf-8 без BOM (желательно)
4. В HTML коде (между HEAD) сайта, должен быть:
<meta http-equiv="content-type" content="text/html; charset=utf-8"/> - для XHTML
<meta http-equiv="content-type" content="text/html; charset=utf-8"> для HTML.
5. В БД кодировка нормальная.

P.S. - по скрину вижу, что данные внесены при помощи PhpMyAdmin. Попробуй внести данные через отдельный php файл.
Перейти в начало страницы         Просмотр профиля    Отправить личное сообщение
Поблагодарили 1 раз
   + Цитировать сообщение
2 страниц V   1 2
 
Тема закрытаНачать новую тему
 
0 пользователей и 1 гостей читают эту тему: