|
|
|
| Здравствуйте!
Есть раздел "отзывы" и код добавления отзыва в базу данных:
header('Content-Type: text/html; charset=utf-8');
setlocale(LC_ALL,'ru_RU.65001','rus_RUS.65001','Russian_Russia.65001','russian');
session_start();
$autor = $_SESSION['login'];
$otziv = $_POST['otziv'];
$data = date('y/n/d');
include('bd.php');
$sql = mysql_query("INSERT INTO post (autor,text,data) Values ('$autor','$otziv','$data')", $conn);
|
А вот код вывода поста из базы данных посетителям:
<?php
include('bd.php');
$sqlCart = mysql_query("SELECT text FROM post WHERE autor = '$login'", $conn);
while($row = mysql_fetch_array($sqlCart))
{
$otziv = $row["text"];
echo "
<table cellpadding=5 cellspacing=0 border=0 width=500 align='center'>
<tr>
<td><div style='width:370px; overflow:auto; border: 0px solid blue;'><pre>".htmlspecialchars($otziv)."</pre></div></td>
</tr>
</table>";
}
mysql_close($conn);
?>
|
Пользователь соответственно вбивает отзывы без переноса строки. При показе какого отзыва срабатывать полоса прокрутки но это не удобно и не красиво. Как задать по настоящему фиксированный контейнер чтобы за его рамки ничего не вылезало?
Плюс ко всему вместо буквы "И" высвечивается какой-то иероглиф!?!
Можете посмотреть как это выглядит здесь: http://www.web-shpargalka.ru/otzivi.php
За ранее благодарю! | |
|
|
|
|
|
|
|
для: alex1111
(11.06.2012 в 14:48)
| | Если убрать "<pre>" и воспользоваться некоторыми из функций:
1 nl2br
2 strip_tags
3 get_meta_tags
4 get_html_translation_table
6 htmlentities
7 hebrev
8 hebrevc
9 quoted_printable_decode
то контейнер можно получить устойчивый.
А что касается "И", так это настройку соединения надо проверять SET NAMES - посмотрите в MySQL | |
|
|
|
|
|
|
|
для: Eugene77
(11.06.2012 в 18:04)
| | Соединение настроил, изменил код подключения к базе данных с:
<?php
$conn = mysql_connect("localhost", "xxx", "xxx") or die ("Could not connect: " . mysql_error());
mysql_select_db("xxx", $conn);
?>
|
на
<?php
$conn = mysql_connect("localhost", "xxx", "xxx") or die ("Could not connect: " . mysql_error());
mysql_select_db("xxx", $conn);
mysql_query('SET NAMES utf8');
?>
|
Это надо было сделать еще до записи данных в базу.
А что касается переноса строк автоматический пака еще не разобрался. | |
|
|
|
|
|
|
|
для: alex1111
(11.06.2012 в 21:29)
| | Нашел решение:
<?php
$text = htmlspecialchars($tema);
$newtext = wordwrap($text, 50, "<br />\n");
echo "$newtext";
?>
|
Значение "50" указывает на то, после какого количества символов произойдет перенос строки.
Спасибо всем! | |
|
|
|
|
|
|
|
для: alex1111
(11.06.2012 в 22:22)
| | >
<?php
>$text = htmlspecialchars($tema);
>$newtext = wordwrap($text, 50, "<br />\n");
>echo "$newtext";
>?>
|
Это самое простое решение, без переносов внутри слов.
Так сказать, наспех сделно... можно и более аккурано наковырять на основе приведённых выше функций.
Но с первым успехом поздравляю! | |
|
|
|