Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.09.2009, 14:14   #1
Андрей79
Пользователь
 
Регистрация: 15.02.2009
Сообщений: 63
По умолчанию Помогите с удалением пробелов при вводе данных в форму

Всем привет!

Помогите разобраться, куда воткнуть функцию trim, для того, что бы при случайном вводе пользователем инфы в форму, случайные пробелы вначале и в конце строки убирались... Всю голову сломал, никак не въеду.
Вот код формы и отправки данных в БД:

Код:
<html>
<head>
<title>Получение, проверка и обработка данных на PHP</title>
</head>
<body>

<?php
include $DOCUMENT_ROOT."/tpl/config.php";
$table = "news";
$idnews = mysql_escape_string( $_POST['razdel'] );
$title = mysql_escape_string( $_POST['title'] );
$desc = mysql_escape_string( $_POST['desc'] );

$t="";
$title="";
$error=false;
$on_submit=false;
$razdel="";

$razdel_1="";
$razdel_2="";
$razdel_3="";
$mas_razdel=array ("1"=>"Новости СДЦ","2"=>"Новости ВООВ ББ","3"=>"Новости рок-группы");
$selected=" selected='selected' ";

$desc="";

if (!empty($_POST["onsubmit"]))
{


//форма была отправлена, проверим данные
$on_submit=true;
if (empty($_POST["title"]))
{
$t.="<div>Вы не указали заголовок новости!</div>";
$error=true;
}
else
$title=trim($_POST["title"]);

if (empty($_POST["razdel"]) || $_POST["razdel"]=="none")
{
$t.="<div>Укажите раздел!</div>";
$error=true;
}
else
{
$razdel=$_POST["razdel"];
switch ($razdel)
{
case ("1"):$razdel_1=$selected;break;
case ("2"):$razdel_2=$selected;break;
case ("3"):$razdel_3=$selected;break;
}
}
if (empty($_POST["desc"]))
{
$t.="<div>Вы не написали текст новости!</div>";
$error=true;
}
else
$desc=$_POST["desc"];


}

if ($on_submit && !$error)
{
/*если форма была отправлена и ошибок при заполнении нет, то Выполняем скрипт дальше*/
/* Составляем запрос для вставки информации в таблицу
news...title, desc - название конкретных полей в базе;
в $_POST["title"]... $_POST["desc"] - в этих переменных содержатся данные, полученные из формы */

$title = mysql_escape_string( $_POST['title'] );
$desc = mysql_escape_string( $_POST['desc'] );
$query = "INSERT INTO $table VALUES (NULL, '".$razdel."', NOW(), '".$title."', '".$desc."')";

/* Выполняем запрос. Если произойдет ошибка - вывести ее. */
mysql_query($query) or die(mysql_error());
/* Закрываем соединение */
mysql_close();
/* В случае успешного сохранения выводим сообщение и пустую форму */
echo "Данные успешно сохранены!";
echo "<html><head>
    <meta  http-equiv='Refresh' content = '0; URL =text.php'>
 </head></html>";
exit ();

}


else
{
//если форма не отправлялась или была отправлена, но при заполнении полей были допущены ошибки, то выводим форму
//причем, если форма была отправлена (с некорректным заполнением полей), то выводим ее с теми данными, которые ввел пользователь
$t.="<form action='text.php' method='post'>

Заголовок новости<br/>
<input type='text' name='title' value='".htmlspecialchars($title,ENT_QUOTES)."'><br/>
Раздел новости<br/>
<select name='razdel'>
<option value='none'>выберите...</option>
<option value='1' ".$razdel_1.">Новости СДЦ</option>
<option value='2' ".$razdel_2.">Нововсти ВООВ ББ</option>
<option value='3' ".$razdel_3.">Новости рок-группы</option>
</select>
<br/>
Напишите текст новости<br/>
<textarea name='desc'>".htmlspecialchars($desc,ENT_QUOTES)."</textarea>
<br/>
<input type='submit' value='Отправить'>
<input type='hidden' name='onsubmit' value='on'>
</form>";
}
echo $t;

?>

</body>
</html>
Андрей79 вне форума Ответить с цитированием
Старый 22.09.2009, 00:05   #2
Artificial
Пользователь
 
Аватар для Artificial
 
Регистрация: 03.11.2007
Сообщений: 91
По умолчанию

$title = trim(mysql_escape_string( $_POST['title'] ));
http://lv.php.net/manual/en/function.trim.php

--
<?php
include $DOCUMENT_ROOT."/tpl/config.php";
$table = "news";
$idnews = mysql_escape_string( $_POST['razdel'] );
$title = mysql_escape_string( $_POST['title'] );
$desc = mysql_escape_string( $_POST['desc'] );


Трим ставь тут, в самом начале.
Artificial вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как убрать пробел между строчками при вводе данных в ячейке? pisani Microsoft Office Excel 2 20.04.2010 05:51
Кодировка при вводе данных через php-myadmin и sql запросы serg-php PHP 4 27.09.2009 17:03
Ошибка при вводе данных с ограниченной структурой pav-pas БД в Delphi 4 17.07.2009 16:53
Написать программу, которая бы определяла при вводе данных в список, симметричен ли он WhyBeNormal Паскаль, Turbo Pascal, PascalABC.NET 3 03.12.2008 00:04
преобразование массивов при вводе данных greenkat Microsoft Office Excel 4 28.02.2008 19:21