Xwab
Форумыnavigate_nextНебольшие вопросы по PHP/MySQL

Топ: Небольшие вопросы по PHP
Сообщения
Анархист

Маньяк,я не себе,а автору выше.

30 Окт 2012, 11:50
Pisatel

Мастера, вопрос возник. База в windows-1251, страницы- в utf-8. Само собой, квадраты при выводе из базы. Реально ли поправить положение, не меняя кодировку страниц?

30 Окт 2012, 14:05
Анархист

Pisatel,менять кодировку данных,только для вывода.Именно данных,а не страницы в целом.

30 Окт 2012, 14:10
Pisatel

Так?
@mysql_query('set character_set_client="utf8"');
@mysql_query('set character_set_results="utf8"');
@mysql_query('set collation_connection="utf-8_general_ci"');

30 Окт 2012, 14:12
Маньяк

Pisatel, ALTER TABLE `table` CONVERT TO CHARACTER SET utf8 и если нужно можешь добавить COLLATE utf8_general_ci

30 Окт 2012, 14:14
Pisatel

Маньяк, там всю базу надо. Сайт- веб, в вин1251 для него пда версию делаю, и когда уже почти всё сделал- такая вот проблема всплыла

30 Окт 2012, 14:17
Анархист

Pisatel,сделай дамп бд и измени кодировку.

30 Окт 2012, 14:27
Pisatel

Анархист, и переписать веб под пда? Не вариант Будем думать...

30 Окт 2012, 15:12
BloodStarsz

есть функция:
[php:1:94813beb6e]function edit_text ($text, $type='s'){
switch ($type){
case 's': return $mysqli->real_escape_string(htmlspecialchars(trim($text)));
case 'i': return intval(abs($text));
}
}[/php:1:94813beb6e]
при обращении к данной функции (к примеру $question=edit_text($_POST['question']) выдает ошибку Fatal error: Call to a member function real_escape_string() on a non-object
но если написать $question=$mysqli->real_escape_string(htmlspecialchars(trim($_POST['question']))); (тоже самое что и возвращает функция) то никакой ошибки нет. Можете сказать почему так и как это исправить?

30 Окт 2012, 21:39
Okula

BloodStarsz, читай про области видимости переменной.

30 Окт 2012, 22:28
Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.