[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Касаемо кодировки
Okulo
всем доброго дня.
возникала следующая проблема -
заполняю форму и отправляю данные в БД MySQL.

если таблицы созданы с кодировкой cp1251_general_ci то данные на русском языке вообще не записываются. если же сделать utf8 то кракозябры.

отправляю след. кодом
$db = mysql_connect("localhost","root","");
mysql_select_db("mailer",$db);

$resultat = mysql_query("INSERT INTO `table` ( `name_user`, `email`, `website`, `text`) VALUES ( '$name', '$email', '$subject ', '$message')",$db);


подскажите плиз в чем дело



Спустя 5 минут, 57 секунд (15.02.2012 - 10:41) Панч написал(а):
проверь какая кодировка у каждого поля в таблице стоит
и посмотри какая кодировка у страницы, с которой данные отсылаешь

Спустя 1 минута, 33 секунды (15.02.2012 - 10:42) Okulo написал(а):
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
это на странице
а это кодировка - cp1251_general_ci

Спустя 3 минуты, 22 секунды (15.02.2012 - 10:46) Панч написал(а):
а в какой кодировке файл сохранен?
и возвращает ли какую нибудь ошибку при записи?

Спустя 2 минуты, 47 секунд (15.02.2012 - 10:48) Okulo написал(а):
сори, но не понял о каком файле речь?

ошибку не возвращает никакую.

Спустя 2 минуты, 17 секунд (15.02.2012 - 10:51) Панч написал(а):
файл скрипта и формы
т.е. вообще не делает новую запись в базе или делает но с пустыми полями?

Спустя 5 минут, 19 секунд (15.02.2012 - 10:56) Okulo написал(а):
файл индекс на ктором форма 1251 (ANSI кириллица)

запись вообще в БД не делает. если англ. пишу - записывает без проблем.

Спустя 1 минута, 28 секунд (15.02.2012 - 10:57) Панч написал(а):
выложи код обработки данных формы

Спустя 14 минут (15.02.2012 - 11:11) Ulan написал(а):
может кодировка соединения не установлена?

Спустя 2 минуты, 30 секунд (15.02.2012 - 11:14) Okulo написал(а):
Свернутый текст
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<
html>
<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<
title>Web</title>
<
link href="style.css" rel="stylesheet" type="text/css" />
</
head>
<
body>
<
div id="contentForm">
<?php
$error = ''; // сообщение об ошибке
$name = ''; // имя отправителя
$email = ''; // email отправителя
$subject = ''; // тема
$message = ''; // сообщение

if(isset($_POST['send']))
{
$name = $_POST['name'];
$email = $_POST['email'];
$subject = $_POST['subject'];
$message = $_POST['message'];

$db = mysql_connect("localhost","root","");
mysql_select_db("mailer",$db);

$resultat = mysql_query("INSERT INTO `table` ( `name_user`, `otdel`, `website`, `text`) VALUES ( '$name', '$email', '$subject ', '$message')",$db); }?>

<form method="post" name="contFrm" id="contFrm" action="">
<
label><span class="required">*</span>Полное имя:</label>
<
input name="name" type="text" class="box" id="name" size="30" value="<?=$name;?>" />
<
label><span class="required">*</span> Email: </label>
<
input name="email" type="text" class="box" id="email" size="30" value="<?=$email;?>" />
<
label><span class="required">*</span> Тема: </label>
<
input name="subject" type="text" class="box" id="subject" size="30" value="<?=$subject;?>" />
<
label><span class="required">*</span> Сообщение: </label>
<
textarea name="message" cols="40" rows="3" id="message"><?=$message;?></textarea>
<
input name="send" type="submit" class="button" id="send" value="" />
</
form>
</
div>
</
body>
</
html>

Спустя 1 минута, 49 секунд (15.02.2012 - 11:16) Winston написал(а):
В каждом файле вверху пропиши
header("Content-Type: text/html; charset=windows-1251");

А после mysql_select_db() напиши
mysql_query('SET NAMES cp1251');

Спустя 9 минут, 26 секунд (15.02.2012 - 11:25) Okulo написал(а):
всем огромное спасибо.
получилось!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.