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

Форум PHP

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

 

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

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: чем проверить данные вводимые в поле формы

Сообщения:  [1-6] 

 
 автор: cheops   (27.02.2006 в 13:47)   письмо автору
 
   для: Dobryy   (27.02.2006 в 01:03)
 

Необходимо убрать else и фигурные скобки
<?php
else 
  {
?>

После блока
<?php
if(!empty($_POST["email"])) 
  { 
    if (!
preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i"$_POST["email"])) 
    { 
      
do_form("&#194;&#226;&#229;&#228;&#232;&#229; Email &#226; &#226;&#232;&#228;&#229; something@server.com"); 
      echo 
"<table align=center width=400><tr><td>\n"
      
view("$beg"); 
      echo 
"</td></tr></table>\n"
    } 
  }
?>

   
 
 автор: Dobryy   (27.02.2006 в 01:03)   письмо автору
 
   для: cheops   (27.02.2006 в 00:07)
 

проблема в том что по этому адрессу нахадится гостевая книга :)
http://metrophoto.iatp.org.ua/my/guest.php
и после того как я ввел проверку email'a

if(!empty($_POST["email"]))
  {
    if (!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $_POST["email"]))
    {
      do_form("&#194;&#226;&#229;&#228;&#232;&#229; Email &#226; &#226;&#232;&#228;&#229; something@server.com");
      echo "<table align=center width=400><tr><td>\n";
      view("$beg");
      echo "</td></tr></table>\n";
    }
  }
при корректном вводе email скрипт не записывает данные введенные в форму и невыводит саму форму
а если email не водить или ввести НЕ корректно все работает нормально
вот весь код сценария

<?
include 'functions.php';
include 
'podkl.php';
echo 
"<h2>&#195;&#238;&#241;&#242;&#229;&#226;&#224;&#255; &#202;&#237;&#232;&#227;&#224;</h2>\n";
if (!isset(
$post))
{
do_form("<br>");
echo 
"<table align=center width=400><tr><td>\n";
view("$beg");
echo 
"</td></tr></table>\n";
}
else
{
$username=$HTTP_POST_VARS['username'];
$message=$HTTP_POST_VARS['message'];
if (!
$username || !$message)
{
do_form("&#194;&#226;&#229;&#228;&#232;&#242;&#229; &#237;&#229;&#238;&#225;&#245;&#238;&#228;&#232;&#236;&#251;&#229; &#228;&#224;&#237;&#237;&#251;&#229;<font size=2 color=971630>*</font>\n");
echo 
"<table align=center width=400><tr><td>\n";
view("$beg");
echo 
"</td></tr></table>\n";
}
else
{
if(!empty(
$_POST["email"]))
  {
    if (!
preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i"$_POST["email"]))
    {
      
do_form("&#194;&#226;&#229;&#228;&#232;&#229; Email &#226; &#226;&#232;&#228;&#229; something@server.com");
      echo 
"<table align=center width=400><tr><td>\n";
      
view("$beg");
      echo 
"</td></tr></table>\n";
    }
  }
else
  {
  
$username trim($_POST["username"]);
  
$username htmlspecialchars(stripslashes($username));
  
$username substr($_POST["username"],0,32);
  
$email trim($_POST["email"]);
  
$email htmlspecialchars(stripslashes($email));
  
$email substr($_POST["email"],0,32);
  
$URL trim($_POST["URL"]);
  
$URL htmlspecialchars(stripslashes($URL));
  
$URL substr($_POST["URL"],0,60);
  
$message trim($_POST["message"]);
  
$message htmlspecialchars(stripslashes($message));
  
$message str_replace("\r\n""<br>"$message);
  
$message substr($_POST["message"],0,2048);
  
$date date('H:i:s d.m.Y');
$query "insert into gb values
    ('"
.null."','".$username."','".$email."','".$URL."','".$message."','".null."','".$date."')";
$result mysql_query($query);
if (
$result)
{
do_form("&#209;&#238;&#238;&#225;&#249;&#229;&#237;&#232;&#229; &#228;&#238;&#225;&#224;&#226;&#235;&#229;&#237;&#238;");
echo 
"<table align=center width=400><tr><td>\n";
view("$beg");
echo 
"</td></tr></table>\n";
}
}
}
}
?>

   
 
 автор: cheops   (27.02.2006 в 00:07)   письмо автору
 
   для: Dobryy   (26.02.2006 в 21:35)
 

Что-то не очень понятна проблема...

   
 
 автор: Dobryy   (26.02.2006 в 21:35)   письмо автору
 
   для: midav   (26.02.2006 в 20:54)
 

спасибо. вот еще вопрос возни вставил проверку мыла и получилось тоже что и c /' - все замерает

if(!empty($_POST["email"]))
  {
    if (!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $_POST["email"]))
    {
      do_form("&#194;&#226;&#229;&#228;&#232;&#229; Email &#226; &#226;&#232;&#228;&#229; something@server.com");
      echo "<table align=center width=400><tr><td>\n";
      view("$beg");
      echo "</td></tr></table>\n";
    }

   
 
 автор: midav   (26.02.2006 в 20:54)   письмо автору
 
   для: dobryy   (26.02.2006 в 20:38)
 


$message=str_replace("\r\n", "<br>", $message);

Вот тебе абзацы :)

   
 
 автор: dobryy   (26.02.2006 в 20:38)   письмо автору
 
 

я перед внесением данных осуществляю такую проверку

  $username = trim($_POST["username"]);
  $username = htmlspecialchars(stripslashes($username));
  $email = trim($_POST["email"]);
  $email = htmlspecialchars(stripslashes($email));
  $URL = trim($_POST["URL"]);
  $URL = htmlspecialchars(stripslashes($URL));
  $message = trim($_POST["message"]);
  $message = htmlspecialchars(stripslashes($message));


но если вводить текст с абзацами - абзаци неотображаються, а идет сплошной текст в одну строку
и еще при введении в одно из полей /' все замерает
ЗЫ проверку email еще неделал :)
http://metrophoto.iatp.org.ua/my/guest.php

   

Сообщения:  [1-6] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

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