Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вывод с пробелом
 
 автор: 10100100   (19.08.2006 в 16:52)   письмо автору
 
 

есть таблица где храница информация гостевой книги, сооб, имя, датаи тд и тп. так вот - когда я вставляю информацию в поле для редактирования (инпут, текстареа) текст с пробелами бьётся, точнее бьётся имя и дата...


<?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 
"&nbsp;<a title='Первая страница' class=menuinfo href=index.php?page=1>&lt;&lt;</a>&nbsp;"; 
  if(
$page > 1) echo "&nbsp;<a title='Первая страница' class=menuinfo href=index.php?page=".($page - 1).">&lt;</a>&nbsp;"; 
  for(
$i = $str_begin; $i<=$str_end; $i++) 
  { 
    if(
$page == $i) 
      echo 
"&nbsp;$i&nbsp;"; 
    else 
      echo 
"&nbsp;<a title='Открыть страницу' class=menuinfo href=index.php?page=".$i.">$i</a>&nbsp;"; 
  } 
  if(
$page < $number) echo "&nbsp;<a title='Первая страница' class=menuinfo href=index.php?page=".($page + 1).">&gt;</a>&nbsp;"; 
  echo 
"&nbsp;<a title='Первая страница' class=menuinfo href=index.php?page=$number>&gt;&gt;</a>&nbsp;"; 
echo 
'</td></tr></table>';
}
}
else
{
echo 
'Пошёл отсюда! информация о попытке взлома направлена администратору, равно как и IP.';
}

   
 
 автор: Lelik   (19.08.2006 в 23:04)   письмо автору
 
   для: 10100100   (19.08.2006 в 16:52)
 

вообще-то нихрена не понятно. Листинг на три километра и ни одного примера как собственно текст бьется.

   
 
 автор: cheops   (20.08.2006 в 00:53)   письмо автору
 
   для: 10100100   (19.08.2006 в 16:52)
 

Не очень понятно в чём проблема?

   
 
 автор: 10100100   (20.08.2006 в 05:29)   письмо автору
 
   для: 10100100   (19.08.2006 в 16:52)
 

ы - нунапример есть имя у чувака "Last Breath" так вот мн выводится только первое слово - "Last". :)

   
 
 автор: Lelik   (20.08.2006 в 05:31)   письмо автору
 
   для: 10100100   (20.08.2006 в 05:29)
 

а как данные в БД отображены?

   
 
 автор: 10100100   (20.08.2006 в 05:36)   письмо автору
 
   для: Lelik   (20.08.2006 в 05:31)
 

корректно.... говорю ж косяк проявляется только когда вношу в INPUT. а когда осуществляю обычный вывод - всё нормально (по крайней мере на других страницах.)

   
 
 автор: Lelik   (20.08.2006 в 05:41)   письмо автору
 
   для: 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).'">';  
?>


у меня на сайте был подобный косяк - вместо имени в форме "<" выводился, я сделал как в последнем коде и заработало

   
 
 автор: 10100100   (20.08.2006 в 09:20)   письмо автору
 
   для: Lelik   (20.08.2006 в 05:41)
 

Да - заработало, спасибо.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования