176

Re: Смена кодировки базы в phpMyAdmin

Я наверное попытаюсь рассказать всю схему того как данные вытаскиваются с помощью скрипта.
Попозже напишу.

177

Re: Смена кодировки базы в phpMyAdmin

Pashkevich сказал:

Такая строка у меня стоит

Тогда подробно, с примерами опишите вашу ситуацию.
1) Кодировка страниц.
2) Как данные выглядят в phpMyAdmin.
3) Как данные выглядят на странице.

178

Re: Смена кодировки базы в phpMyAdmin

Hanut сказал:
Pashkevich сказал:

Такая строка у меня стоит

Тогда подробно, с примерами опишите вашу ситуацию.
1) Кодировка страниц.
2) Как данные выглядят в phpMyAdmin.
3) Как данные выглядят на странице.

Без проблем, я даже пример дам.
Сейчас пока занят дома.
Как освобожусь, всё выложу.

179

Re: Смена кодировки базы в phpMyAdmin

Собственно вот.
Ссылка для работы:
http://itcity-mgn.ru/test/zayavka.php
При заполнении полей, автоматически появляется выпадающий список значений, вытащенных из базы JavaScript'ом.
Это как выглядят кракозябры (на платном хостинге):
http://s017.radikal.ru/i433/1203/99/1cf405d2c543t.jpg
http://s004.radikal.ru/i205/1203/1f/d4cec0aad56dt.jpg
http://s017.radikal.ru/i433/1203/da/fc797e4d1530t.jpg
http://s017.radikal.ru/i412/1203/54/80aaf5a65d9et.jpg

А это как должно быть на самом деле:
Т.е. не кракозябры у меня показываются на локальной машине:
http://s018.radikal.ru/i513/1203/3f/743ca12db6adt.jpg
http://i049.radikal.ru/1203/1a/a8d016322c91t.jpg
http://s017.radikal.ru/i439/1203/da/48963eae67a9t.jpg
http://s018.radikal.ru/i513/1203/94/6cf7d9fd0c3dt.jpg

180

Re: Смена кодировки базы в phpMyAdmin

Здесь можно скачать все исходные файлы и PHP и JavaScript
http://itcity-mgn.ru/test/test.rar

181

Re: Смена кодировки базы в phpMyAdmin

У вас страница в windows-1251, а данные в БД в utf-8. В остальном проблем нет.

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

182

Re: Смена кодировки базы в phpMyAdmin

Hanut сказал:

У вас страница в windows-1251, а данные в БД в utf-8. В остальном проблем нет.

<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">

Поменял в файле zayavka.php эту строчку на
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
Не помогло.
Может что-то еще нужно сделать?

183

Re: Смена кодировки базы в phpMyAdmin

Pashkevich сказал:

Может что-то еще нужно сделать?

Конечно. Надо поменять кодировку скрипта, самого файла zayavka.php. Откройте его в редакторе и сохраните в UTF8. Проще всего это сделать в Notepad++, где в статусной строке пишется кодировка ANSI или UTF8.

184

Re: Смена кодировки базы в phpMyAdmin

Hanut сказал:
Pashkevich сказал:

Может что-то еще нужно сделать?

Конечно. Надо поменять кодировку скрипта, самого файла zayavka.php. Откройте его в редакторе и сохраните в UTF8. Проще всего это сделать в Notepad++, где в статусной строке пишется кодировка ANSI или UTF8.

Сделал.
Стало еще хуже  smile
Посмотрите результат: http://itcity-mgn.ru/test/zayavka.php

185

Re: Смена кодировки базы в phpMyAdmin

Уже лучше. Теперь создайте в корне хоста файл .htaccess и добавьте в него строку:

PHP_VALUE default_charset utf-8

186

Re: Смена кодировки базы в phpMyAdmin

Hanut сказал:

Уже лучше. Теперь создайте в корне хоста файл .htaccess и добавьте в него строку:

PHP_VALUE default_charset utf-8

Это просто невероятно.
Помогло.
Результат можете посмотреть тоже сами.
Спасибо большое.
Сегодня попробую всё тоже самое проделать на основном сайте.

187

Re: Смена кодировки базы в phpMyAdmin

Сделал точно такие же операции на основном сайте: http://itcity-mgn.ru/index.php

1. В файл .htaccess и добавил строку: PHP_VALUE default_charset utf-8.
2. Поменял кодировку скрипта, самого файла index.php

Теперь вместо кракозябр отображаются вопросики.
Поможете еще раз? smile

188

Re: Смена кодировки базы в phpMyAdmin

Pashkevich сказал:

Сделал точно такие же операции на основном сайте: http://itcity-mgn.ru/index.php

1. В файл .htaccess и добавил строку: PHP_VALUE default_charset utf-8.
2. Поменял кодировку скрипта, самого файла index.php

Теперь вместо кракозябр отображаются вопросики.
Поможете еще раз? smile

Я сам немного затупил.
Вроде работает.
Но только некоторые страницы работают, а некоторые нет.
Например: http://itcity-mgn.ru/entersite.php неправильно работает
а http://itcity-mgn.ru/index.php - теперь правильно.

189

Re: Смена кодировки базы в phpMyAdmin

Pashkevich сказал:
Pashkevich сказал:

Сделал точно такие же операции на основном сайте: http://itcity-mgn.ru/index.php

1. В файл .htaccess и добавил строку: PHP_VALUE default_charset utf-8.
2. Поменял кодировку скрипта, самого файла index.php

Теперь вместо кракозябр отображаются вопросики.
Поможете еще раз? smile

Я сам немного затупил.
Вроде работает.
Но только некоторые страницы работают, а некоторые нет.
Например: http://itcity-mgn.ru/entersite.php неправильно работает
а http://itcity-mgn.ru/index.php - теперь правильно.

Вроде нормально.
Поправил страницу http://itcity-mgn.ru/entersite.php.
Смысл я понял.
Буду дальше поправлять.
Спасибо за помощь.

P.S. Скажите как помочь Вашему сайту финансово? Я готов отблагодарить Вас.

190

Re: Смена кодировки базы в phpMyAdmin

Еще небольшая проблема с сессией.

Есть файл: zayavka.php

<?php session_start();?>
<HTML>
<HEAD>
<TITLE>Заявки</TITLE>
</HEAD>
<BODY>
            <?php
              $sav = $_REQUEST['sav'];
              if ($sav == 1){ include("insert_zayavka.php"); }

    include("ConnectBD.php");

    $proizvod = "";
    $poluchat = "";
    if ($_SESSION["ZayavID"] == -1)
    {
      $today = date("Y-m-d H:i:s");
      $query = "INSERT INTO tzayav (isNew, UserID, ProizvodID, PoluchatID, DatZ) values (1, 1, -1, -1, '$today')";
      $ver = mysql_query($query, $dbcnx);
      if(!$ver) {echo "<p>Ошибка в запросе $query</p>"; exit();}
      $newid = mysql_insert_id($dbcnx);
      $_SESSION["ZayavID"] = $newid;
    }else
    {
      echo "3proizvod=".$_SESSION["proizvod"];
      echo "<br> 3poluchat=".$_SESSION["poluchat"];

      $proizvod = $_SESSION["proizvod"];
      $poluchat = $_SESSION["poluchat"];
    }

                ?>

</BODY>
</HTML>

Есть файл insert_zayavka.php:

<?php
  $userid = $_SESSION["UserID"];
  $proizvod = trim($_POST["proizvod"]);
  $poluchat = trim($_POST["poluchat"]);
  $tovar = trim($_POST["tovar"]);
  $edizm = trim($_POST["edizm"]);
  $kolvo = trim($_POST["kolvo"]);
  echo "proizvod=$proizvod";
  echo "<br> poluchat=$poluchat";
  $_SESSION["proizvod"] = $proizvod;
  $_SESSION["poluchat"] = $poluchat;
  echo "2proizvod=".$_SESSION["proizvod"];
  echo "<br> 2poluchat=".$_SESSION["poluchat"];
?>

Результат выполнения такой:

proizvod=Челябинский колбасный завод
poluchat=ИП Смирнов
2proizvod=Челябинский колбасный завод
2poluchat=ИП Смирнов
3proizvod=
3poluchat=

Почему значения двух этих переменных стерлись?

191

Re: Смена кодировки базы в phpMyAdmin

На локальной машине всё работает без проблем.
И значения из сессии вытаскиваются.

192

Re: Смена кодировки базы в phpMyAdmin

Pashkevich сказал:

На локальной машине всё работает без проблем.
И значения из сессии вытаскиваются.

Я наверное эту тему уже замучил сообщениями.
В общем сам поправил.
не знаю почему, но проблема была в том, что при перезаписи переменных:
$proizvod
$poluchat

почему то перезаписывались значения:
$_SESSION["proizvod"]
$_SESSION["poluchat"]

Я дал этим переменным различные имена и всё прокатило.

193

Re: Смена кодировки базы в phpMyAdmin

Pashkevich сказал:

Скажите как помочь Вашему сайту финансово?

От помощи мы не отказываемся.

Если будут вопросы, создавайте отдельные темы, чтобы в них было удобнее разбираться.

194 (изменено: henry, 2012-07-05 21:24:44)

Re: Смена кодировки базы в phpMyAdmin

при попытке импортировать дамп бд я получаю ошибку -

syntax to use near 'CREATE TABLE `dle_subscribe` (   `id` int(11) NOT NULL auto_increment,   `user_i' at line 2 (256)


дамп сделан sympex dumper и импорт производится им же . помогите,пожалуйста. до этого несколько таблиц импортировались удачно на 1 гб ++

195

Re: Смена кодировки базы в phpMyAdmin

henry сказал:

при попытке импортировать дамп бд я получаю ошибку

Ошибки не вижу, предполагаю, что перед импортом просто не были удалены старые таблицы из БД.

196 (изменено: henry, 2012-07-07 00:36:47)

Re: Смена кодировки базы в phpMyAdmin

Hanut сказал:
henry сказал:

при попытке импортировать дамп бд я получаю ошибку

Ошибки не вижу, предполагаю, что перед импортом просто не были удалены старые таблицы из БД.

Не всё скопировал , вот полный текст ошибки

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CREATE TABLE `dle_subscribe` (   `id` int(11) NOT NULL auto_increment,   `user_i' at line 2 (256)

197

Re: Смена кодировки базы в phpMyAdmin

henry сказал:

вот полный текст ошибки

Когда вы импортируете дамп таблица dle_subscribe в базе данных уже существует?

198

Re: Смена кодировки базы в phpMyAdmin

Импортирую на чистую базу.

199

Re: Смена кодировки базы в phpMyAdmin

henry сказал:

Импортирую на чистую базу.

Странно. Не могу понять причину ошибки. Попробуйте открыть дамп и импортировать из него данные вручную, например разделив его на несколько частей. Надо найти хотя бы ту часть дампа, которая вызывает ошибку и попробовать с ней разобраться.

200

Re: Смена кодировки базы в phpMyAdmin

Как разделить дамп? Он весит 800 мегабайт.