|
|
|
| есть таблица где храница информация гостевой книги, сооб, имя, датаи тд и тп. так вот - когда я вставляю информацию в поле для редактирования (инпут, текстареа) текст с пробелами бьётся, точнее бьётся имя и дата...
<?php
Error_Reporting(E_ALL & ~E_NOTICE);
include ('config.php');
$g = $_COOKIE['valid_user'];
if ($g == 'Admin') {
$table = 'soob';
// Число блоков на странице
$pnumber = 8;
// Число страниц справа и слева от текущей страницы < << 2 3 [4] 5 6 >> >
$linknumber = 2;
// Элемент постраничной навигации
$page = $_GET['page'];
if($page < 1) $page = 1;
if(empty($page)) $page = 1;
$begin = ($page - 1)*$pnumber;
// Формируем и выполняем SQL-запрос
$select_sql = "SELECT * FROM $table
ORDER BY id_soob DESC
LIMIT $begin, $pnumber";
$result = MYSQL_QUERY($select_sql);
if(!$result) exit(mysql_error());
// Постраничная навигация
$query = "SELECT COUNT(*) FROM $table ";
$ctg = mysql_query($query);
if(!$ctg) puterror("Ошибка при обращении к таблице");
$total = mysql_result($ctg,0);
IF ($total == 0) {
PRINT "<CENTER><P>Сообщений нет!</CENTER>";
}
ELSEIF ($total > 0)
{
echo '<table class=1 cellspacing=o cellpading=0 width=724 bgcolor=ffffff><tr><td width=100%>';
PRINT "<CENTER><P>Сообщений: $total<BR>";
echo '</td></tr></table>';
echo '<style>.1 {border: 1px dashed Silver;}
textarea {border: 1px dashed Silver;}
input {border: 1px dashed Silver; background-color:ffffff;}
a {text-decoration:none; font-size: 12pt; color: #636363; font-family: Times New Roman;}
a:hover{text-decoration; color:#000000}
</style>';
echo '<body bgcolor=D3EFFB>';
$query = 'SELECT * FROM soob ORDER BY id_soob DESC';
$ath = mysql_query($query);
echo '<a href=show.php>Вернуться в гостевую</a>';
if ($ath)
{
$recs = mysql_num_rows($ath); // количество записей в базе
for ($i=1; $i<=$recs; $i++)
{
$msg = mysql_fetch_array($ath);
$time=htmlspecialchars($msg['time']);
echo '<table class=1 bgcolor=EDF6FA cellspacing=0 cellpading=0 width=500><tr><td>';
echo '<form action=gb_update.php method=post>';
echo '<input type=text name=name value='.htmlspecialchars($msg['name']).'>';
echo '<input type=text name=email value='.htmlspecialchars($msg['email']).'>';
echo '<input type=text name=homepage value='.htmlspecialchars($msg['homepage']).'>';
echo '<input type=text name=gorod value='.htmlspecialchars($msg['gorod']).'>';
echo '<input type=text name=time value=';
echo $time;
echo '><br>';
echo '<textarea ROWS=5 COLS=40 name=soob>';
$soob = $msg['soob'];
$soob = nl2br($soob);
echo $soob;
echo '</textarea>';
echo '<textarea ROWS=5 COLS=44 name=comment>';
echo $msg['comment'];
echo '</textarea>';
echo '<input type=hidden name=id_soob value='.$msg['id_soob'].'><br />';
echo '<input type=submit value="Обновить">'; // это наша кнопочка "Обновить"
echo '<input type=reset value="Очистить">'; // это кнопочка "Очистить" (поля в форме)
echo '</form>';
echo '<form action=msg_delete.php method=post>';
echo '<input type=hidden name=id_soob value='.$msg['id_soob'].'>';
echo '<input type=submit value="Удалить">'; // Здесь кнопочка будет "Удалить"
echo '</form>';
echo '</td></tr></table>';
echo '<br>';
}
}
else {
echo "Error: '.mysql_error().";
exit();
}
$number = (int)($total/$pnumber);
if((float)($total/$pnumber) - $number != 0) $number++;
// Вычисляем начальную позицию
if($page - $linknumber < 1) $str_begin = 1;
else $str_begin = $page - $linknumber;
// Вычисляем конечную позицию
if($page + $linknumber > $number) $str_end = $number;
else $str_end = $page + $linknumber;
// Выводим ссылки на другие страницы
echo '<table class=1 cellspacing=o cellpading=0 width=724 bgcolor=EDF6FA><tr><td width=100% align=center>';
echo "Страницы: ";
echo " <a title='Первая страница' class=menuinfo href=index.php?page=1><<</a> ";
if($page > 1) echo " <a title='Первая страница' class=menuinfo href=index.php?page=".($page - 1)."><</a> ";
for($i = $str_begin; $i<=$str_end; $i++)
{
if($page == $i)
echo " $i ";
else
echo " <a title='Открыть страницу' class=menuinfo href=index.php?page=".$i.">$i</a> ";
}
if($page < $number) echo " <a title='Первая страница' class=menuinfo href=index.php?page=".($page + 1).">></a> ";
echo " <a title='Первая страница' class=menuinfo href=index.php?page=$number>>></a> ";
echo '</td></tr></table>';
}
}
else
{
echo 'Пошёл отсюда! информация о попытке взлома направлена администратору, равно как и IP.';
}
|
| |
|
|
|
|
|
|
|
для: 10100100
(19.08.2006 в 16:52)
| | вообще-то нихрена не понятно. Листинг на три километра и ни одного примера как собственно текст бьется. | |
|
|
|
|
|
|
|
для: 10100100
(19.08.2006 в 16:52)
| | Не очень понятно в чём проблема? | |
|
|
|
|
|
|
|
для: 10100100
(19.08.2006 в 16:52)
| | ы - нунапример есть имя у чувака "Last Breath" так вот мн выводится только первое слово - "Last". :) | |
|
|
|
|
|
|
|
для: 10100100
(20.08.2006 в 05:29)
| | а как данные в БД отображены? | |
|
|
|
|
|
|
|
для: Lelik
(20.08.2006 в 05:31)
| | корректно.... говорю ж косяк проявляется только когда вношу в INPUT. а когда осуществляю обычный вывод - всё нормально (по крайней мере на других страницах.) | |
|
|
|
|
|
|
|
для: 10100100
(20.08.2006 в 05:36)
| |
<?php
echo '<input type=text name=name value='.htmlspecialchars($msg['name']).'>';
?>
|
пробуй водить данные так
<?php
$user_name = htmlspecialchars($msg['name'])
echo '<input type=text name=name value="'.$user_name).'">';
?>
|
у меня на сайте был подобный косяк - вместо имени в форме "<" выводился, я сделал как в последнем коде и заработало | |
|
|
|
|
|
|
|
для: Lelik
(20.08.2006 в 05:41)
| | Да - заработало, спасибо. | |
|
|
|