|
|
|
| Я сделал самую простую php страничку для добавления записей в базу даных.
В даный момент используется база даных - mysql 4.1.12a, cервер Apache 2.0.
Я создал БД - 'igor', таблица 'forum' с полямы (Id,Authors,Tema,Question).
Поле Id - Primary Key, auto_increment. Этой php скрипт работает, и вносит даные в БД.
Но проблема заключается в том что руских или украинских букв, после того как я вывожу записи из БД на екран - нету, вместо них сплошние '?????'! Я в БД (default-character-set в файле my.ini), и в полях назначил кодировку koi8r, но это не помогло. Еще перебирал кодировки koi8u,utf8,cp1251 - результат тот же.
Может надо еще какие то файлы править, или что то я не то сделал? Помогите разобраться. Прошу не сразу отправлять в документацию (кое что есть, но конкретного по этой проблемме ничего нету).
Спасибо!
Вот код моего маленького php скрипта:
<?
@mysql_connect("localhost", "root", "")
or die("Could not connect to MySQL server!");
@mysql_select_db("igor")
or die("Could not select Igor database!");
?>
<form action = "igor.php" method = "post">
<center><h1>Заповніть форму</h1><p></center>
<b>Автор:</b>
<input type="text" name="Author" size="20" maxlength="50" value=""><br>
<b>Тема:</b>
<input type="text" name="Tema" size="20" maxlength="50" value=""><br>
<b>Коментарі:</b><br>
<center>
<textarea name="Question" rows="10" cols="80"></textarea><br></center>
<input type="submit" value="Зберегти">
</form>
<?
if(trim($Author)!=="")
if(trim($Tema)!=="")
if(trim($Question)!=="")
{
$query = 'INSERT INTO forum (Authors, Tema, Question) VALUES ("'.$Author.'","'.$Tema.'","'.$Question.'")';
$result = mysql_query($query);
echo "<br>";
$query = 'select Authors from forum';
$result = mysql_query($query);
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
echo "<br>";
printf ("Authors: %s", $row[0]);
}
mysql_free_result($result);
}
else printf("Ви маєте заповнити поле 'Коментарі'!!!");
else printf("Ви маєте заповнити поле 'Тема'!!!");
else printf("Ви маєте заповнити поле 'Автор'!!!");
?> | |
|
|
|
|
|
|
|
для: IgorT
(12.08.2006 в 22:47)
| | На самой страничке какая кодировка стоит?
<meta http-equiv="content-type" content="text/html; charset=windows-1251"> | |
|
|
|
|
|
|
|
для: IgorT
(12.08.2006 в 22:47)
| | Это наверное надо было в MySQL раздел фоурма постить ...
Поглядите туда - там темы с "вопросами" в базе данных на каждом шагу встречаются | |
|
|
|
|
|
|
|
для: IgorT
(12.08.2006 в 22:47)
| | Добавьте после
<?php
@mysql_select_db("igor") or die("Could not select Igor database!");
?>
|
запрос, настраивающий кодировку соединения
<?php
@mysql_query("SET NAMES 'cp1251'");
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(13.08.2006 в 11:38)
| | Все заработало, всем спасибо за помощь, тема закрыта | |
|
|
|
|
|
|
|
для: cheops
(13.08.2006 в 11:38)
| | Спасибо, я тоже решил свою проблему таким образом. | |
|
|
|