• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Mysql

  • Автор темы Student_TRTU
  • Дата начала
S

Student_TRTU

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

Проделываю те же самые операции в редакторе скриптов (имеется встроенный браузер) и вуаля! все на русском.

Вот. Подойдем к самому главному. Че за херня???
 
G

garrymax

Это не "херня", это кодировка данных в таблицах MySQL, по умолчанию latin-1, а нужно и желательно UTF-8. Можно и другие (KOI8-R, cp1251), но UTF8-R универсальная.

Самый простой способ, что бы не вникать в возможности запроса ALERT: Зайди на сайт MySQL и скачай администратора - там во второй закладки своей базы установи нужную кодировку по умолчантию. Если это на хостинге, то воспользуйся PhpMyAdnin - должны были предоставить, если база есть.
 
W

WStudio

Так в том то и дело что везде, абсолютно везде!!! стоит использование кирилицы (кои8р, пробовал утф, одна херня), я просто в ужасе! Я уже не знаю что делать, раньше просто такого бреда не было.
 
W

WStudio

2sax_ol
Не, я просто нечаяно с чужого акаунта отписался.
 
G

garrymax

А случаем не из AJAX чего подцепил? Если оно присутствует, то без iconv не чего не получиться.
 
W

WStudio

Небыло аякса и не будет, я этой дрянью и не пользовался то никогда.
 
W

WStudio

Ну народ!?!? Я думал мне хотя бы тут расскажут в чем проблема.
 
W

WStudio

Так нет, кодировку никто не менял, она как стояла кирилицей так и стоит. База вообще все еще в режиме проектирования, так что с ней пока можно делать все что душе угодно. Я про то, что из одного браузера русский язык база понимает (встроенный бразузер в phpexpert), а из другого ваще не бачет. К стати в phpmyadmin все норм работает из под любого браузера. В общем хелпми, я в ужасе.
 
H

Holger Dee Assuran

Нужно установить переменные базы данных... Не помню как конкретно называются - character_set_client и еще несколько character_set-ов... Вся проблема в том что данные хранятся в базе в одной кодировке (скорее всего в utf8), а сценарии в другой. Нужно что-бы база перекодировала данные из utf8 в cp1251 (или что ты там юзаешь в сценариях)
 
W

WStudio

Да я уже все... Спасибо за помощь. Все вылечилось запросом к базе данных в виде установки текущей кодировки.

mysql_db_query($db_name,"SET NAMES cp1251");
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!