powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] В базу данных MySQL данные заносятся не полностью.
33 сообщений из 33, показаны все 2 страниц
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171947
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Когда использовал тип поля Text , то было все хорошо

А в другой таблице нужно только определенное количество символов использовать. Я выбрал (как самоучка с знанием access) тип varchar . И теперь у меня если использую кириллицу помещается символов почти в два раза меньше и в конце доставляется непонятный символ.

Читаю так $userdata = mysql_fetch_assoc($query) ;
Запись делаю так mysql_query("INSERT INTO blank SET nameblank='". mysql_real_escape_string($post_nameblank) ."', blankmaket='".mysql_real_escape_string($post_htmldata)."'")

Если с количеством символов нельзя ничего сделать путевого, то хоть как избавляться от символа последнего. Не вычислял что это за код по ASCCI.

Может другое что-то использовать чтоб определенное количество символов было и для кириллицы и для латынь. Хотя смотрел по примеру из готовых систем типа жумлы и других. Хотя там классами все сделано, сразу не разобраться...
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171949
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сдается мне, кодировка у в та
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171953
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я сделал в таблице везде в полях utf8_bin а было utf8_другое
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171966
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В основных настройках
в сопоставлении кодировки соединения с MySQL поменял на utf8_bin, в таблицах тоже самое, в полях тоже.
в шапке сайта у меня:
<head><link rel="icon" href="./favicon.ico" type="image/x-icon"><link rel="shortcut icon" href="./favicon.ico" type="image/x-icon"><title>Hello :)</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8 "></head>

Тестирую.

Пишу в поле: "Мой шаблон мой шаблон мой шаблон"
Потом мне показывает " Мой шаблон мо "
а в базе если смотрю через провайдера, значение поля вот такое "РњРѕР№ шаблон РјРѕР"

Что я упустил ?
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171971
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bin зачем?
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171976
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а вариантов других нет. Там в любом из типов кодировок после заглавия идет название кодировки_bin первым в списке, а дальше перечень. от слова binary наверное.
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171977
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
utf8_general_xx нету?
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171978
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть utf8_general_ci
сейчас попробую
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171981
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В одном посте девушка решала тоже такую проблему, она предложила ставить N перед значением.
Я попробовал:
$query = mysql_query("INSERT INTO blank SET nameblank= N '".mysql_real_escape_string($post_nameblank)."', blankmaket= N '".mysql_real_escape_string($post_htmldata)."'")

На 50% получилось. В базе текст поступает уже кириллица. Это видно из MyPHPAdmin провайдера. Но обычное чтение из $userdata = mysql_fetch_assoc($query); через $row[] показывает только непонятные значки. Тоесть нужно видимо только знать как конвертировать. Мне это неизвесно
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171983
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
utf8_general_ci не помогло. почти одинаково что и utf8_bin.
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38171990
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
никто не знает? пользуемся только joomla и html?
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172049
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Заголовки ответа сервера смотрели, там какая кодировка указана?
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172068
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я полностю решил попробовать перейти на 1251_general_ci
<head><link rel="icon" href="./favicon.ico" type="image/x-icon"><link rel="shortcut icon" href="./favicon.ico" type="image/x-icon"><title>Hello :)</title><meta http-equiv="Content-Type" content="text/html; charset=windows-1251"></head>
выводит

кроме того использовал функцию на php чтоб посмотреть кодировку в базе current character set is cp1251 выводит на странице после исполнения
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172072
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И всетаки если я научился вводить кириллицу с помощью SET НазваниеПоля=N'Значене'
и там ее вижу, а не упакованный текст двумя байтами, тогда как его читать хоть нормально. Ощущение будто что-то еще нужно ввести чтоб правильно php именно давал ответ при чтении. Выводит эроглифы
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172114
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей159Пишу в поле: "Мой шаблон мой шаблон мой шаблон"
Потом мне показывает " Мой шаблон мо "
а в базе если смотрю через провайдера, значение поля вот такое "РњРѕР№ шаблон РјРѕР"

Что я упустил ?SET NAMES есть после открытия соединения с БД ?
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172180
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleSET NAMES есть после открытия соединения с БД ?

Нет. Такого я не делал. Работаю по типа "PHP и MySQL исчерпывающее руководство" (Бретт Маклафлин) блин за 23$ книга. Там про это ничего не сказано было. Сейчас попробую . Наверное время исполнения теперь увеличится, это ж запрос как никак
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172191
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
<?php
$mybdsql=mysql_connect($dbhost, $dbuser, $dbpasswd);
$mytablsql=mysql_select_db($dbname);

$charset = mysql_client_encoding($mybdsql);
echo $charset.'<br>';

mysql_query("SET NAMES 'cp1251'");
mysql_query("SET CHARACTER SET 'cp1251'");

$charset = mysql_client_encoding($mybdsql);
echo $charset.'<br>';
?>

Результат такого запроса в бравзере уже
cp1251
cp1251
без изменений. в phpmyadmin на сайте вижу что в базе данных на русском данные внесены через =N'Value', а читать не выходит никак по нормальному. Звонил к другу. Он подтвердил что у него тоже видно в phpmyadmin все в кирилице + у него все работает, а у меня нет по какой-то причине
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172196
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему cp1251, если используете utf8
?
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172206
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
по всюду поменял на cp1251. у меня по умолчанию выдавало
$charset = mysql_client_encoding($mybdsql);
echo $charset.'<br>';
cp1251

+ колега тоже имел какие-то проблемы. нужно для украинского языка. хотя у него были проблемы с буквой і ї є, и ради этого он меня кодировку, а у меня вообще все полностью не пашет кроме латыни
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172209
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей159по всюду поменял на cp1251
1. "Повсюду" в данном случае пишется слитно.
2. Где именно?
3. А нафига?
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172262
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. изв.украинец(
2. в базе данных (было 1251, в таблице поменял на 1251 (с1251 на utf8 и обратно), в каждом поле типа text, varchar, в шапке заголовка html
3. на utf8 не было результата хоть пробовал также задавать SET NAMES. между 1251 и utf8 разница только в том что символы і ї є будут "?"

у меня любой символ который не является латынью или цифрой показывается "?????"

может я неправильно читаю...
$query = mysql_query("SELECT * FROM blank WHERE nameblank = '".$post_nameblank."' LIMIT 1")
$userdata = mysql_fetch_assoc ($query)
if (mysql_num_rows($query)>0)
$row ["nameblank"]

может вместо $row что-то другое должно быть или mysql_fetch_assoc ? я уже как дурак(((

тестирую тут
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172263
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кроме этого у меня присутствует html код в котором уже есть кириллица и она хорошо в бравзере отображается. А тут будто php не то выдает
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172269
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей1592. в базе данных (было 1251, в таблице поменял на 1251 (с1251 на utf8 и обратно), в каждом поле типа text, varchar, в шапке заголовка htmlПроверьте еще хидер Content-Type, отдаваемый вебсервером. И, не совсем понятно что с данными в базе - от простого изменения кодировки таблиц/полей данные (точнее, их кодировка) сами собой не поменяются.


Андрей159между 1251 и utf8 разница только в том что символы і ї є будут "?"Ага. Вам эти символы не нужны? ;-)
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172270
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей159может вместо $row что-то другое должно быть или mysql_fetch_assoc ?Дык в мануале же пример есть.
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172276
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,
оо... хоть на миллиметр сдвинулось. Оказывается данные поступают. А я думал что в ASCII тоже все символы будут одинаковы. Запустил Fiddler2 и проинспектировал. Закрыл хрому и открыл обыкновенный бравзер интернет экспловер. там по умолчанию стоит юникод. Поменял на 1251 и увидел свой код а юникод стал крокодилом. Теперь хоть знаю что расследовать. Теперь паинтересуюсь только какой ответ дает сервер в request header. Может там ответ кроется
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172278
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну да. вижу responser header => enity => Content-Type: char-set=UTF8
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172280
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и в настройках dreamwiewer - utf8
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172283
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle, извени что отобрал море времени
Заработало, когда дописал mysql_query("SET NAMES 'utf8'");

Несмотря на то что вся база на 1251 кодировке, по какой-то причине работает, даже следующий пример выдает два раза ответ
cp1251
cp1251

$charset = mysql_client_encoding($mybdsql);
echo $charset.'<br>';

mysql_query("SET NAMES 'utf8'");

$charset = mysql_client_encoding($mybdsql);
echo $charset.'<br>';



Хотелось бы задать в MySQL постоянную конфигурацию 'utf8'. Зачем при каждом вызове давать запрос
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172344
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей159Несмотря на то что вся база на 1251 кодировкеНе путайте кодировку данных, кодировки таблиц и кодировку соединения. Это совершенно разные вещи. При некоторых условиях различные кодировки вполне нормально уживаются, хотя то вопросики вылезут, то квадратики... Ах да, и поиск не работает.

Андрей159Хотелось бы задать в MySQL постоянную конфигурацию 'utf8'. Зачем при каждом вызове давать запросОгорчу, Вы не оригинальны в своей идее сэкономить аж целую строчку кода и два десятка микросекунд на выполнении запроса. Плохая идея, делать этого не надо. Затем что на шаред-хостинге, где сервер с дефолтовой latin1 поддерживает сотни и тысячи баз данных, лично для Вас сервер перенастраивать не будут. Хотя, вполне можете поискать и без особых проблем найти хостинг, где дефолтовая кодировка установдена в utf8 или в cp1251.
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172445
Фотография Андрей159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я думал больше времени пойдет на запрос. Все же отдельный наверное сервер, соединенный по сети, пока тот запрос отправит, пока тот ответит. Понятно. Большое спасибо
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172470
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Андрей159Все же отдельный наверное сервер, соединенный по сети, пока тот запрос отправит, пока тот ответит.Это уже проблемы сети, а не приложения. Хотите быстрее отклик - ставьте сервер рядом, а не за десятью маршрутизаторами.
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172492
Фотография Hett
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleАндрей159Все же отдельный наверное сервер, соединенный по сети, пока тот запрос отправит, пока тот ответит.Это уже проблемы сети, а не приложения. Хотите быстрее отклик - ставьте сервер рядом, а не за десятью маршрутизаторами.
Да хоть 2 карты соединить проводом, будет медленнее.
...
Рейтинг: 0 / 0
[PHP] В базу данных MySQL данные заносятся не полностью.
    #38172512
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hettvkleпропущено...
Это уже проблемы сети, а не приложения. Хотите быстрее отклик - ставьте сервер рядом, а не за десятью маршрутизаторами.
Да хоть 2 карты соединить проводом, будет медленнее.Медленнее чем что? Чем через локальный сокет - да. Чем через инет - нет (если только карты и патчкорд не полное УГ).
...
Рейтинг: 0 / 0
33 сообщений из 33, показаны все 2 страниц
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / [PHP] В базу данных MySQL данные заносятся не полностью.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]