1

Тема: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Здравствуйте у меня проблема, мне нужно поменять  Сопоставление кодировки соединения с MySQL по умолчанию стоит: utf8mb4_bin, а мне нужно поменять на utf8_general_ci. Меняя это в консолди не меняется, выдает сообщение:" Ваши настройки будут сохранены только для текущей сессии. Для постоянного хранения требуется подключение модуля хранения настроек phpMyAdmin."  Посылает в инструкции  там не чего конкретно не написанно как подключить (или я что то не понимаю).
Подскажите как это испаравить!?
Заранее всем спасибо!

P.S

    Сервер: Localhost via UNIX socket
    Тип сервера: MariaDB
    Версия сервера: 5.5.37-MariaDB - MariaDB Server
    Версия протокола: 10
    Пользователь: pma@localhost
    Кодировка сервера: UTF-8 Unicode (utf8)

Apache/2.4.9 (Fedora) OpenSSL/1.0.1e-fips PHP/5.5.11 mod_perl/2.0.9-dev Perl/v5.18.2
Версия клиента базы данных: libmysql - mysqlnd 5.0.11-dev - 20120503 - $Id: bf9ad53b11c9a57efdb1057292d73b928b8c5c77 $
PHP расширение: mysqli

Информация о версии: 4.1.11, последняя стабильная версия: 4.2.0

2

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Для PHP скриптов достаточно сразу после функции соединения, выполнить запрос: SET NAMES utf8
Это должно исправить кодировку.

Как вариант, прописать установку кодировки в конфигурационный файл MySQL.

[mysqld]
init_connect='SET NAMES utf8;'

3 (изменено: Olga_Bos, 2014-05-13 10:49:03)

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Hanut сказал:

Для PHP скриптов достаточно сразу после функции соединения, выполнить запрос: SET NAMES utf8
Это должно исправить кодировку.

Как вариант, прописать установку кодировки в конфигурационный файл MySQL.

[mysqld]
init_connect='SET NAMES utf8;'

конфигурационный файл MySQL это: my.cnf?
если да то все равно не работает.

4

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Где вы смотрите Сопоставление кодировки соединения с MySQL?

5

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Hanut сказал:

Где вы смотрите Сопоставление кодировки соединения с MySQL?

в консоли phpmyadmin основные настройки

6

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

В phpMyAdmin указано сравнение для работы самого phpMyAdmin. Глобальные значения кодировок можно смотреть запросом: SHOW GLOBAL VARIABLES LIKE 'char%';

7 (изменено: Olga_Bos, 2014-05-14 10:50:09)

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Hanut сказал:

SHOW GLOBAL VARIABLES LIKE 'char%'

Вот что выдал
character_set_client     latin1
character_set_connection     latin1
character_set_database     latin1
character_set_filesystem     binary
character_set_results     latin1
character_set_server     latin1
character_set_system     utf8
character_sets_dir     /usr/share/mysql/charsets/

подскажите где и как можно изменить кодировку или в самом коде. у меня поиск и когда посылаешь на mysql  кодировка другая и от этого он у меня и  не работает не ищет инфу.  не как не могу разобраться. Заранее спасибо.

8

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Olga_Bos сказал:

как можно изменить кодировку или в самом коде.

Найдите функцию соединения с MySQL и сразу после нее выполните запрос SET NAMES utf8. Напрмер:

mysql_query('SET NAMES utf8');

9

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Hanut сказал:

mysql_query('SET NAMES utf8');

все равно не работает может что я не так делаю?

<?php 
   
        $bd=mysql_connect("localhost", "root","****")or die("Не могу подключится к серверу ");
        mysql_select_db("base")or die("Не могу подключится к базе "); 
       mysql_query('SET NAMES utf8');       
        mysql_set_charset(utf8, $bd);    
        
$res=mysql_query("select * from itog where name like '%$_GET[name]%'");

if(mysql_num_rows($res)>0){
    print "<table>";
    while($tmp=mysql_fetch_array($res)){
        print "<tr>
                    <td>$tmp[surname]</td>
                    <td>$tmp[name]</td>
                       <td>$tmp[otchestvo]</td>
                       <td>$tmp[otdel]</td>
                       <td>кабинет № $tmp[kab]</td>
                       <td>$tmp[opis]</td>
                  
               </tr>";
    }
   print "</table>";

}else print "Ни чего по вашему запросу не найдено";
?>

10

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Посмотрите в какой кодировке таблицы. Если сравнение таблиц utf8_general_ci, то проверьте запрос в phpMyAdmin.

11

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Hanut сказал:

Посмотрите в какой кодировке таблицы. Если сравнение таблиц utf8_general_ci, то проверьте запрос в phpMyAdmin.

да кодировка стоит utf8_general_ci. Запрос работает писала дома на др машине  на denwer с др кодировкой windows1251. А на работе не работает все перевила в utf8. меня интересует как и где настроить чтобы phpmyadmin сохранял свои настройки и не выдавал данную запись:"Ваши настройки будут сохранены только для текущей сессии. Для постоянного хранения требуется подключение модуля хранения настроек phpMyAdmin"

12

Re: выдает сообщение: "Ваши настройки будут сохранены только для текущей "

Как настраивать расширения для хранения настроек, смотрите здесь: http://php-myadmin.ru/learning/instrument-pma.html