adelante
Guest
Не могу разобраться с кодировкой
Раньше стоял у меня apache1.3.1, MySQL не помню какой и PHP4.3
Посавил сегодня apache2.?, MySQL? и php5.0.5 (все ставил вместе сразу из пакета xampp2.1 от apachefriends.org)
Взялся делать один пройстенький скрипт и появилась проблема: в БД не записываются русские буквы и из нее не достаются, если даже они там есть, а не знак "?" вместо них.
Скрипт получает данные таким образом:
<form action="thisscript.php" method="get">
<input type="text" name="title">
<textarea name="body" cols="20" rows="5"></textarea>
<input type="submit" name="submit">
</form>
После чего добавляет в данные текущую дату-время и записывает в БД:
(при вводе в форму русских букв они в базе превращаются в вопросики.)
Затем другой скрипт подключается к базе, вытаскивает данные и вставляет их в html:
И вот тут, даже если я вручную в БД постирал вопросики и написал русские буквы, все равно выводятся вопросики.
Не пойму в чем проблема.
ЗЫ. Раньше писал такой же скрипт на предыдущей кофигурации софта - все работало нормально, насколько я помню.
ЗЗЫ. Вот структура таблицы экспортом:
#
# Table structure for table
#
CREATE TABLE `table` (
`date` datetime NOT NULL default '0000-00-00 00:00:00',
`title` text,
`body` text,
PRIMARY KEY (`date`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
Раньше стоял у меня apache1.3.1, MySQL не помню какой и PHP4.3
Посавил сегодня apache2.?, MySQL? и php5.0.5 (все ставил вместе сразу из пакета xampp2.1 от apachefriends.org)
Взялся делать один пройстенький скрипт и появилась проблема: в БД не записываются русские буквы и из нее не достаются, если даже они там есть, а не знак "?" вместо них.
Скрипт получает данные таким образом:
<form action="thisscript.php" method="get">
<input type="text" name="title">
<textarea name="body" cols="20" rows="5"></textarea>
<input type="submit" name="submit">
</form>
После чего добавляет в данные текущую дату-время и записывает в БД:
PHP:
$timestamp=getdate();
$date = $timestamp['year'].
"-".$timestamp['mon'].
"-".$timestamp['mday'].
" ".$timestamp['hours'].
":".$timestamp['minutes'].
":".$timestamp['seconds'];
$link=mysql_connect($serv,$user,$pass);
mysql_select_db( $db );
$query="INSERT INTO table VALUES ('".$date."','".$_GET['title']."','".$_GET['body']."')";
mysql_query($query);
mysql_close($link);
Затем другой скрипт подключается к базе, вытаскивает данные и вставляет их в html:
PHP:
$link=mysql_connect($serv,$user,$pass);
mysql_select_db($db);
$query='SELECT * FROM table ORDER BY date DESC LIMIT 0,5';
$result=mysql_query($query);
while($row=mysql_fetch_array($result))
{
echo 'типа хтмл'.$row['date'].'типахтмл'.$row['title'].'типахтмл'.$row['body'].'типа хтмл';
mysql_free_result($result);
mysql_close($link);
Не пойму в чем проблема.
ЗЫ. Раньше писал такой же скрипт на предыдущей кофигурации софта - все работало нормально, насколько я помню.
ЗЗЫ. Вот структура таблицы экспортом:
#
# Table structure for table
#
CREATE TABLE `table` (
`date` datetime NOT NULL default '0000-00-00 00:00:00',
`title` text,
`body` text,
PRIMARY KEY (`date`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;