powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / MySQL подключение к БД используя UTF8 кодировку
5 сообщений из 5, страница 1 из 1
MySQL подключение к БД используя UTF8 кодировку
    #39444395
elfrom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, такая проблема на страницу не выводятся русские буквы из бд с английскими все отлично
БД MySQL
в файле My в разделе
[mysql]
прописал
init-connect="SET NAMES UTF8"
default-character-set=utf8
character-set-server=utf8
default-collation=utf8_general_ci
collation-server=utf8_general_ci

так же пробовал и cp1521

создавал базу данных в кодировках UTF8, CP1521

не выводятся русские буквы на странице, в самом файле страницы указывал кодировки UTF8, CP1521

есть еще один способ это добавить:
mysql_query("SET NAMES 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
mysql_query("SET SESSION collation_connection = 'utf8_general_ci'");

но проблема в том что при добавлении получаю ошибка запроса...

подключение к бд происходит так
есть файл config.php
<?php
//define the database connection
define('DBUSERNAME', 'elf');
define('DBUSERPASSWORD', 'Ff1f2f3f4');
define('DSN', 'mysql:dbname=bryntum_gantt;host=localhost');

и файл init.php
<?php
namespace Bryntum\Gantt;
// 4hrs
ini_set('session.gc_maxlifetime', 14400);
if (!session_id()) {
session_start();
}
require 'config.php';
function autoload($class)
{
$file = dirname(__FILE__).'/'.str_replace('\\', '/', $class).'.php';
if (file_exists($file)) {
//echo "\n".$file;
require_once $file;
}
}
spl_autoload_register('Bryntum\Gantt\autoload');
$app = new Gantt(DSN, DBUSERNAME, DBUSERPASSWORD);
if (!$app) {
die('{ success: false, error : "Database connecting error" }');
}


если я добавляю mysql_query в файл config.php в самый конец, то пишет ошибка запроса, если же добавляю в файл init.php после
$app = new Gantt(DSN, DBUSERNAME, DBUSERPASSWORD); то тоже самое не могу понять как можно получить нормальное чтение русских букв подскажите пожалуйста...
...
Рейтинг: 0 / 0
MySQL подключение к БД используя UTF8 кодировку
    #39444409
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
elfromподключение к бд происходит такВ следующих строчках подключения так и не видать. Возможно, оно где-то в подключаемых файлах. Судя по 'DSN', предположу, что в коде используется PDO. Тогда, конечно, mysql_query() работать не будет.

Потому ищите в коде то место, где инициируется подключение к СУБД (вероятно, оно будет приблизительно там, где используются константы DBUSERNAME и DBUSERPASSWORD) и сразу после подключения выполняйте запрос SET NAMES.
...
Рейтинг: 0 / 0
MySQL подключение к БД используя UTF8 кодировку
    #39444412
Elfrom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
упустил момент есть еще файл который читает из бд называется read.php
<?php

try {
// initialize application
include 'init.php';

// decode request object
$request = json_decode($_GET['q'], true);

$response = array(
'success' => false,
'requestId' => $request['requestId']
);

// get request parameters for the stores
$storeParams = array();
foreach ($request['stores'] as $store) {
if (is_array($store)) {
// keep request params for the store
$storeParams[$store['storeId']] = $store;
} else {
$storeParams[$store] = $store;
}
}

// if calendar manager was requested for loading
if (isset($storeParams['calendars'])) {
// get rows
$calendars = &$app->getCalendars();
$response['calendars'] = array(
'rows' => $calendars,
// we return project calendar identifier in the metaData section for the store
'metaData' => array(
'projectCalendar' => $app->getProjectCalendarId()
)
);
}
// if resource store was requested for loading
if (isset($storeParams['resources'])) {
$response['resources'] = array(
// get rows
'rows' => $app->getResources(),
// get total number of found resources
'total' => $app->getFoundRows()
);
}
// if assignment store was requested for loading
if (isset($storeParams['assignments'])) {
$response['assignments'] = array(
// get rows
'rows' => $app->getAssignments(),
// get total number of found assignments
'total' => $app->getFoundRows()
);
}
// if dependency store was requested for loading
if (isset($storeParams['dependencies'])) {
$response['dependencies'] = array(
// get rows
'rows' => $app->getDependencies(),
// get total number of found dependencies
'total' => $app->getFoundRows()
);
}
// if task store was requested for loading
if (isset($storeParams['tasks'])) {
$response['tasks'] = array(
// get rows
'rows' => $app->getTasks()
);
}

$response['success'] = true;
// return server revision mark
$response['revision'] = $app->getRevision();
die(json_encode($response));

// handle exceptions gracefully
} catch (Exception $e) {
$response['success'] = false;
$response['message'] = $e->getMessage();
$response['code'] = $e->getCode();
die(json_encode($response));
}
...
Рейтинг: 0 / 0
MySQL подключение к БД используя UTF8 кодировку
    #39444456
Elfrom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
кажется нашел где происходит подключение
<?php
namespace Bryntum\Gantt;

use Exception;
use PDO;

define(__NAMESPACE__.'\E_APP_UPDATE_TASK', 100);
define(__NAMESPACE__.'\E_APP_ADD_TASK', 101);
define(__NAMESPACE__.'\E_APP_REMOVE_TASK', 102);
define(__NAMESPACE__.'\E_APP_GET_TASKS', 104);
define(__NAMESPACE__.'\E_APP_TASK_NOT_FOUND', 105);
define(__NAMESPACE__.'\E_APP_GET_CALENDAR_DAYS', 110);
define(__NAMESPACE__.'\E_APP_UPDATE_CALENDAR_DAY', 111);
define(__NAMESPACE__.'\E_APP_ADD_CALENDAR_DAY', 112);
define(__NAMESPACE__.'\E_APP_REMOVE_CALENDAR_DAY', 113);
define(__NAMESPACE__.'\E_APP_CALENDAR_DAY_NOT_FOUND', 114);
define(__NAMESPACE__.'\E_APP_GET_CALENDARS', 120);
define(__NAMESPACE__.'\E_APP_UPDATE_CALENDAR', 121);
define(__NAMESPACE__.'\E_APP_ADD_CALENDAR', 122);
define(__NAMESPACE__.'\E_APP_REMOVE_CALENDAR', 123);
define(__NAMESPACE__.'\E_APP_CALENDAR_NOT_FOUND', 124);
define(__NAMESPACE__.'\E_APP_CALENDAR_HAS_CALENDARS', 125);
define(__NAMESPACE__.'\E_APP_CALENDAR_USED_BY_RESOURCE', 126);
define(__NAMESPACE__.'\E_APP_CALENDAR_USED_BY_TASK', 127);
define(__NAMESPACE__.'\E_APP_UPDATE_RESOURCE', 130);
define(__NAMESPACE__.'\E_APP_ADD_RESOURCE', 131);
define(__NAMESPACE__.'\E_APP_REMOVE_RESOURCE', 132);
define(__NAMESPACE__.'\E_APP_GET_RESOURCES', 133);
define(__NAMESPACE__.'\E_APP_RESOURCE_NOT_FOUND', 134);
define(__NAMESPACE__.'\E_APP_REMOVE_USED_RESOURCE', 135);
define(__NAMESPACE__.'\E_APP_UPDATE_ASSIGNMENT', 140);
define(__NAMESPACE__.'\E_APP_ADD_ASSIGNMENT', 141);
define(__NAMESPACE__.'\E_APP_REMOVE_ASSIGNMENT', 142);
define(__NAMESPACE__.'\E_APP_GET_ASSIGNMENTS', 143);
define(__NAMESPACE__.'\E_APP_ASSIGNMENT_NOT_FOUND', 144);
define(__NAMESPACE__.'\E_APP_UPDATE_DEPENDENCY', 150);
define(__NAMESPACE__.'\E_APP_ADD_DEPENDENCY', 151);
define(__NAMESPACE__.'\E_APP_REMOVE_DEPENDENCY', 152);
define(__NAMESPACE__.'\E_APP_GET_DEPENDENCIES', 153);
define(__NAMESPACE__.'\E_APP_DEPENDENCY_NOT_FOUND', 154);
define(__NAMESPACE__.'\E_APP_UPDATE_TASK_SEGMENT', 155);
define(__NAMESPACE__.'\E_APP_ADD_TASK_SEGMENT', 156);
define(__NAMESPACE__.'\E_APP_REMOVE_TASK_SEGMENTS', 157);
define(__NAMESPACE__.'\E_APP_GET_TASK_SEGMENTS', 158);
define(__NAMESPACE__.'\E_APP_TASK_SEGMENT_NOT_FOUND', 159);

class Gantt extends \Bryntum\CRUD\BaseDAO
{

public function __construct($dsn, $dbuser, $dbpwd)
{
// call parent
parent::__construct($dsn, $dbuser, $dbpwd);

$this->initRowsHolders();
}

/**
* Initializes structures to keep mapping between phantom and real Ids
* and lists of implicitly updated and removed records dictionaries.
*/
public function initRowsHolders()
{
$this->phantomIdMap = array(
'tasks' => array(),
'calendars' => array(),
'resources' => array(),
'segments' => array()
);

$this->updatedRows = array(
'tasks' => array(),
'calendars' => array(),
'resources' => array()
);
и так далее...
...
Рейтинг: 0 / 0
MySQL подключение к БД используя UTF8 кодировку
    #39444461
Elfrom
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
разобрался спасибо!!!!!!!!!
надо было в файле config.php
написать вместо:
define('DSN', 'mysql:dbname=bryntum_gantt;host=localhost');
это
define('DSN', 'mysql:dbname=bryntum_gantt;charset=UTF8;host=localhost');
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / MySQL подключение к БД используя UTF8 кодировку
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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