Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Почему создаётся пустая строка?

Ответить
Настройки темы
Почему создаётся пустая строка?

Новый участник


Сообщения: 9
Благодарности: 0

Профиль | Отправить PM | Цитировать


есть проблема следующего плана:
открываем страницу приветствия,здесь нам предлагают ввести логин и пароль или,если не зарегистрирован, то по ссылке перейти на страницу регистрации.так вот при переходе по ссылке в базу добавляется пустая строка

Код: Выделить весь код
<html>
<head>
<title>Registration</title>
<meta http-equiv=content"Content-Type" content="text/html; charset=1251">

<link href="style%20.css" rel="stylesheet" type="text/css">
</head>
<body>
<center>
<?php

Error_Reporting(E_ALL & ~E_NOTICE);
require_once("my_func_lib.php");
//require_once("reg2.php");
$form = "
<form action=\"reg.php\" method=\"post\">
<input type=\"hidden\" name=\"seenform\" value=\"y\">
<h3><b>Введите следующие контактные сведения:!</b></h3><br>

Ник <sup>*</sup>:<br>
<input type=\"text\" name=\"nik\" size=\"20\" maxlength=\"20\" value=\"$nik\"><br>
Фамилия<sup>*</sup>:<br>
<input type=\"text\" name=\"lname\" size=\"20\" maxlength=\"20\" value=\"$lname\"><br>

Имя <sup>*</sup>:<br>
<input type=\"text\" name=\"name\" size=\"20\" maxlength=\"20\" value=\"$name\"><br>

Город<sup>*</sup>:<br>
<input type=\"text\" name=\"town\" s1ze=\"40\" maxlength=\"60\" value=\"$town\"><br>

Эл.Почта<sup>*</sup><br>
<input type=\"text\" name=\"email\" size=\"20\" maxlength=\"40\" value=\"$email\"><br>
Пароль<sup>*</sup>:<br>
<input type=\"password\" name=\"pas\" size=\"20\" maxlength=\"40\" value=\"$pas\"><br>
Ещё раз<sup>*</sup>:<br>
<input type=\"password\" name=\"pas2\" size=\"20\" maxlength=\"40\" value=\"$pas2\"><br>


<input type=\"submit\" value=\"subscribe!\">
<p>Поля помеченые звёздочкой <sup>*</sup> являются обязательными для заполнения</p>
</form>";
 echo "$form";
//Заполнялась ли форма ранее?
if ($seenform != "y"):
$error_flag = "n";
print "$form";
// Пользователь заполнил форму. Проверить введенные данные,
else :
        $error_flag = "n";
// Убедиться в том. что поле имени содержит информацию
        if ($nik == "") :
        print "<font color=\"red\">* Вы не ввели Ник!</font> <br>";
        @$error_flag = "y";
        endif;
        if ($lname == "") :
        print "<font color=\"red\">* Вы не ввели фамилию!</font> <br>";
        @$error_flag = "y";
        endif;
        if ($name == "") :
        print "<font color=\"red\">* Вы не ввели имя!</font> <br>";
        @$error_flag = "y";
        endif;
        if ($town == "") :
        print "<font color=\"red\">* Вы не указали город!</font> <br>";
        $error_flag = "y";
        endif;

// Убедиться в том. что поле адреса содержит информацию
        if ($email == "") :
        print "<font color=\"red\">* Вы не указали эл.адрес !</font><br>";
        $error_flag = "y";
        endif;
        // Преобразовать все алфавитные символы в адресе
        // электронной почты к нижнему регистру
        //$email = strtolower(trim($email));
        //проверка ника на уникальность

// Убедиться в правильности синтаксиса
// адреса электронной почты
        if (isit($nik)==true):
        print  "<font color=\"red\">* Пользователь с таким ником уже зарегестрирован!</font> <br>";
        $error_flag = "y";
        endif;
        if (! @eregi('^[0-9a-zA-Z_-]+'.'@'.'([0-9a-z-]+\.)+'.'([0-9a-z]){2,4}$', $email)) :
        print "<font color=\"red\">* Введённый электроныый адрес не коректен!</font> <br>";
        $error_flag = "y";
        endif;
        if ($pas == "") :
        print "<font color=\"red\">* Вы не ввели пароль!</font> <br>";
        @$error_flag = "y";
        endif;
//сравниваем пароли
        if ($pas!=$pas2):
        print "<font color=\"red\">* Пароли не совпадают!</font> <br>";
        @$error_flag = "y";
        endif;
/*проверка имени*/
       if (! @eregi('[a-zа-я]', $name)) :
        print "<font color=\"red\">*поле Имя может содержать только буквы!</font> <br>";
        $error_flag = "y";
        endif;

        if (! eregi('[a-zа-я]', $lname)) :
        print "<font color=\"red\">*  поле Фамилия может содержать только буквы!</font> <br>";
        $error_flag = "y";
        endif;


        if (! @eregi('[0-9a-zа-я]', $town)) :
        print "<font color=\"red\">* поле Город может содержать только буквы!</font> <br>";
        @$error_flag = "y";
        endif;

        endif;
// Если флаг ошибки @$error_flag установлен.
// заново отобразить форму

        if ($error_flag == "y") :
        print "$form";

        else :
//Добавляем данные в базу

       $r=mysql_pconnect("localhost" ,"root" ,"");
        if(!$r) :
        echo "засада";
        echo "<br>";
        else:
        $s=mysql_select_db("anketa");
        if(!$s) :
        echo "засада";
        echo "<br>";
        else:
        $q=mysql_query("insert into users(nik,familia,name,town,email,password)
              values(\"$nik\",\"$lname\",\"$name\",\"$town\",\"$email\",\"$pas\");");
        if(!$q)
        echo "упс ";
         else
     echo "у е" ;  
     // Обработать данные пользователя
      print "You entered valid form information!" ;
endif;      




?>
вот сама страница регестрации
чего так происходит не могу понять,помогите ,плиз

-------
Scio me, nihil scire


Отправлено: 22:19, 12-03-2007

 

Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Скрипт написан с предположением включенной морально устаревшей вещи - опции REGISTER_GLOBALS (не спрашивайте меня, что это. используйте поисковик и мануалы). Пройдите по коду и мысленно представьте, что все переменные упоминавшиеся в форме - в php коде == null, куда вы забредете?

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 23:50, 12-03-2007 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для XCodeR

Ветеран


Сообщения: 878
Благодарности: 53

Профиль | Сайт | Отправить PM | Цитировать


Prisoner
Цитата:
морально устаревшей вещи
это почему же?..

Отправлено: 01:10, 13-03-2007 | #3


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Хм... PHP3 - ON by default, PHP4.X - OFF by default, PHP5 - OFF by default, PHP6 - Yep. What is it? Кстати вот, тут гораздо лучше изложено, ниже по тексту.

PHP6 - это из анонсов .

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 12:20, 13-03-2007 | #4


Аватара для vadimiron

Ветеран


Сообщения: 1864
Благодарности: 120

Профиль | Отправить PM | Цитировать


Цитата:
PHP6 - это из анонсов
И уже давнийший анонс . Несколько месяцев назад читал, что уже 50% всех функций стали unicode, ждём, когда релиз выйдет....

-------
Fortes fortuna adiuvat


Отправлено: 12:55, 13-03-2007 | #5


Deadooshka


Сообщения: 2482
Благодарности: 671

Профиль | Отправить PM | Цитировать


13ghost
Цитата:
if ($error_flag == "y") : print "$form"; else :
навскидку: если у тебя форма не шлется - по идее срабатывает вставка в базу... т.е сделай проверку типа if(isset($_POST)){вставка в базу}...

Отправлено: 00:47, 20-03-2007 | #6



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » Почему создаётся пустая строка?

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - Не создаётся каталог sov44 Скриптовые языки администрирования Windows 1 05-12-2009 22:05
Разное - [решено] Командная строка- почему нельзя написать команду от C:\??? che72 Microsoft Windows 2000/XP 3 31-08-2009 15:48
Интерфейс - [решено] Установка и удаление программ - пустая строка everal-22 Microsoft Windows 2000/XP 21 12-03-2009 21:00
2008 - профиль пользователя не создаётся. exo Windows Server 2008/2008 R2 6 23-02-2009 00:42
2008 - Не создаётся пользователь в server 2008 burnway08 Windows Server 2008/2008 R2 1 17-02-2008 10:20




 
Переход