Автор Тема: MCF - форма за регистрация 2  (Прочетена 34925 пъти)

0 Потребители и 1 Гост преглежда(т) тази тема.

Ludjov

  • Sr. Member
  • ****
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 312
Отг:MCF - форма за регистрация 2
« Отговор #15 -: 23 Декември 2009, 21:45:34 »
Проблем със кода за регистрация..


Ето го и кода

Цитат
<?php
include( ' function.php ' );
if(!$_SESSION[ ' is_logged ' ]==true)
{

     my_header( ' Регистрация ' );
   
     if(isset($_POST[ ' submit ' ]))
     {
        $login = trim($_POST[ ' login ' ]);
      $pass = trim($_POST[ ' pass ' ]);
      $pass2 = trim($_POST[ ' pass2 ' ]);
      $email = trim($_POST[ ' email ' ]);
      $real_name = trim($_POST[ ' real_name ' ]);
      
          if(strlen($login)<4)
         {
           $error_array[ ' login ' ]=true;
         }
         
          if(strlen($pass)<4)
         {
           $error_array[ ' pass ' ]=true;
         }         
         
         if($pass != $pass2)
         {
           $error_array[ ' pass_not ' ]=true;
         }      
         
         if(!eregi( " ^[[:alnum:]][[a-z0-9_.-]*@[a-z0-9.-]+\\.[a-z]{2,4}$ " , $email))
         {
           $error_array[ ' email ' ]=true;
         }
         
         if(!ereg( " ^[a-zA-Z]{3,16}$ " , $real_name))
         {
           $error_array[ ' real_name ' ]=true;
         }
         
         if(!count($error_array)>0)
         {
            cnf();
            $sql =  ' SELECT COUNT(*) as cnt FROM users WHERE login= "  ' .addslashes($login). '  " 
            OR email= "  ' .addslashes($email). '  "  ' ;
           $res = mysql_query($sql) or die (mysql_error());
           $row = mysql_fetch_assoc($res);
           if($row[ ' cnt ' ]==0)
           {
             mysql_query( ' INSERT INTO users (login, pass, real_name, email, date_registered)
            VALUES ( "  ' .addslashes($login). '  " ,  "  ' .md5($pass). '  " ,  "  ' .addslashes($real_name). '  " ,  "  ' .addslashes($email). '  " ,
             ' .time(). ' ) ' );
            
            if(mysql_error())
            {
              echo  ' <h1> Грешка. Моля опитайте отново!</h1> ' ;
            }
            else
            {
              header( ' Location: index.php ' );
              exit;
            }
           }
           else
           {
             $error_array[ ' logins ' ]=true;
            $error_array[ ' emails ' ]=true;
           }
         }
      
     }
?>
<form method= " POST "  action= " register.php "  />
Потребител:

<input type= " text "  name= " login "  /><?php
if($error_array[ ' login ' ])
{
  echo  '  - Потребителското име трябва да е по дълго от 4 символа! ' ;
}

if($error_array[ ' logins ' ])
{
  echo  '  - Името или е-майла са заети! ' ;
}
?>


Парола:

<input type= " password "  name= " pass "  /><?php
if($error_array[ ' pass ' ])
{
  echo  '  - Паролата име трябва да е по дълга от 4 символа! ' ;
}
?>

Повтори парола:

<input type= " password "  name= " pass2 "  /><?php
if($error_array[ ' pass_not ' ])
{
  echo  '  - Паролите не съвпадат! ' ;
}
?>

Е-майл:

<input type= " text "  name= " email "  /><?php
if($error_array[ ' email ' ])
{
  echo  '  - Невалиден и-майл адрес! ' ;
}

if($error_array[ ' emails ' ])
{
  echo  '  - Името или е-майла са заети! ' ;
}
?>

Име:

<input type= " text "  name= " real_name "  /><?php
if($error_array[ ' real_name ' ])
{
  echo  '  - Невалидно име! ' ;
}
?>

<input type= " submit "  name= " submit "  value= " Регистрация "  />

</form>

<?php

footer();

}
else
{
  header( ' Location: index.php ' );
  exit;
}
« Последна редакция: 02 Декември 2010, 22:36:36 от borovaka »

NoBBy

  • Sr. Member
  • ****
  • Благодарности
  • -Казани: 4
  • -Получени: 38
  • Публикации: 309
Отг:MCF - форма за регистрация 2
« Отговор #16 -: 23 Декември 2009, 21:49:35 »
Виж си полетата в базата, да не са всичките от числов тип

Ludjov

  • Sr. Member
  • ****
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 312
Отг:MCF - форма за регистрация 2
« Отговор #17 -: 23 Декември 2009, 21:59:04 »
Не! Всичко е наред в бд...

misq

  • Гост
Отг:MCF - форма за регистрация 2
« Отговор #18 -: 23 Декември 2009, 22:27:37 »
<?php
define 
(PATH dirname(__FILE__));
include (
PATH. &#39; /config.php &#39; );
include (PATH. &#39; /template/header.php &#39; );
$ime=addslashes(trim($_POST[ &#39; ime &#39; ]));
$familia=addslashes(trim($_POST[ &#39; familia &#39; ]));
$user=trim($_POST[ &#39; user &#39; ]);
$pass=trim($_POST[ &#39; pass &#39; ]);
$pass_c=trim($_POST[ &#39; pass_c &#39; ]);

if (strlen($ime)>=and strlen($familia)>=4)
{
    if (
strlen($user)>=4)
      {
                if(
strlen($pass)>=4)
             {
                 if (
strcmp($pass,$pass_c)==0)
                 {
                     
$result=mysql_query( &#39; SELECT user FROM users WHERE user= "  &#39; .addslashes($user). &#39;  "  &#39; );
                     
if (mysql_num_rows($result)==0)
                 {
                     
$rez=true;
                 }
                 else
                 {
                
$greshka= &#39; Името вече съществува! &#39; ;
                
echo  &#39; <span class= " error " > &#39; .$greshka. &#39; </span> &#39; ;
                
include (PATH. &#39; /registration.php &#39; );
                 
}
                 }
                 else
                 {
                
$greshka= &#39; Паролата за потвърждение не съвпада! &#39; ;
                
echo  &#39; <span class= " error " > &#39; .$greshka. &#39; </span> &#39; ;
                
include (PATH. &#39; /registration.php &#39; );
                 
}
             }
             else
                 {
                
$greshka= &#39; Паролата трябва да е на-малко 4 символа! &#39; ;
                
echo  &#39; <span class= " error " > &#39; .$greshka. &#39; </span> &#39; ;
                
include (PATH. &#39; /registration.php &#39; );
                 
}
      }
    else
      {
             
$greshka= &#39; Потребителското име трябва да е най малко 4 символа &#39; ;
        
echo  &#39; <span class= " error " > &#39; .$greshka. &#39; </span> &#39; ;
        
include (PATH. &#39; /registration.php &#39; );
      
}
}
else
{
        
$greshka= &#39; Неправилно въведени Име или Фамилия &#39; ;
    
echo  &#39; <span class= " error " > &#39; .$greshka. &#39; </span> &#39; ;
    
include (PATH. &#39; /registration.php &#39; );
}

if(
$rez==true)
{
    
$sql= &#39; INSERT INTO users(ime,familia,user,pass) values ( "  &#39; .$ime. &#39;  " , "  &#39; .$familia. &#39;  " , "  &#39; .addslashes($user). &#39;  " , "  &#39; .md5($pass). &#39;  " ) &#39; ;
    
$zaiavka=mysql_query($sql);
    
mkdir (PATH. &#39; /users/ &#39; .$user,0755);
    
mkdir (PATH. &#39; /users/ &#39; .$user. &#39; /clips &#39; );
}
if (
$zaiavka)
{
    echo  &
#39; <center><div id= " reg_complete " >Поздравления <span class= " username " > &#39; . $ime .  &#39; .</span>
Вашият акаунт е създаден!
Можете да се логнете от
    
<a href" login.php " >ТУК</a></div></center>. &#39; ;

}
include (
PATH. &#39; /template/footer.php &#39; );
?>



При мен така си работи перфе ...
« Последна редакция: 02 Декември 2010, 22:36:44 от borovaka »

deyan4

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 18
Отг:MCF - форма за регистрация 2
« Отговор #19 -: 30 Януари 2010, 13:30:36 »
[Решено]Здравейте, наскоро намерих един готов скрипт за регистриране, напаснах го по моята база данни и работи перфектно. Когато изгледах уроците на @gatakka ми направи впечатление, че при въвеждане на парола му се изписва самата парола, което знаете къв е ефекта. Като изпълня моя скрипт се появяват точки. Декларирам променливата password по същия начин като него, при създаването на формата за паролата също не виждам нещо, което да казва, че трябва или не трябва да се появят точки. Това не разбирам, кога става номера с точките. Ако трябва ще постна и самия код.

SocialEvil

  • Sr. Member
  • ****
  • Благодарности
  • -Казани: 3
  • -Получени: 4
  • Публикации: 463
Отг:MCF - форма за регистрация 2
« Отговор #20 -: 30 Януари 2010, 13:47:40 »
Това е от html формата
<input type= " password " ...
« Последна редакция: 02 Декември 2010, 22:36:49 от borovaka »
Please allow me to introduce myself
I'm a man of wealth and taste
I've been around for a long, long year
Stole many a man's soul and faith

deyan4

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 18
Отг:MCF - форма за регистрация 2
« Отговор #21 -: 30 Януари 2010, 14:09:51 »
Тъкмо постнах тука и го забелязах... Благодаря все пак!

Avalanche

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 65
  • -Получени: 275
  • Публикации: 2602
  • meow
Отг:MCF - форма за регистрация 2
« Отговор #22 -: 05 Март 2010, 15:44:02 »
Здравейте.
Имам следният проблем. Не мога да се свържа към базата от данни.
 
 function db_init() {
    mysql_connect( ' localhost ' , ' avalanche ' , ' qwerty ' ) or die ( ' грешкЪ ' );
    mysql_select_db( ' mcf ' );
 }


Значи като попълня полетата за регистрация се изпраща информация, но не отива в базата данни. Include-нал съм functions.php, поставил съм там session_start, направих всички проверки и заявки към SQL и просто нямам идея защо не се свързва :dry:
"Компютрите не правят каквото искаме, а каквото им кажем." Ако разбереш какво значи това няма да имаш големи проблеми, нито с никоя ОС, нито език, или софтуер.
Аз не съм програмист между другото!

kerkenez

  • Hero Member
  • *****
  • Благодарности
  • -Казани: 2
  • -Получени: 14
  • Публикации: 1205
Отг:MCF - форма за регистрация 2
« Отговор #23 -: 05 Март 2010, 16:46:43 »
Ква грешка ти вади ?

Avalanche

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 65
  • -Получени: 275
  • Публикации: 2602
  • meow
Отг:MCF - форма за регистрация 2
« Отговор #24 -: 05 Март 2010, 17:02:43 »
kerkenez написа:
Цитат
Ква грешка ти вади ?

Ами никъде не ми изписва грешка, кода си работи. Изпраща се информацията, но не отива в базата данни. Полетата се reset-ват и не ме изпраща към индекса. D:
"Компютрите не правят каквото искаме, а каквото им кажем." Ако разбереш какво значи това няма да имаш големи проблеми, нито с никоя ОС, нито език, или софтуер.
Аз не съм програмист между другото!

kerkenez

  • Hero Member
  • *****
  • Благодарности
  • -Казани: 2
  • -Получени: 14
  • Публикации: 1205
Отг:MCF - форма за регистрация 2
« Отговор #25 -: 05 Март 2010, 17:38:02 »
Къде се изпраща информация ? Как реши, че не може да се свърже с базата след като не вади грешки ?
Покажи си кода.

Avalanche

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 65
  • -Получени: 275
  • Публикации: 2602
  • meow
Отг:MCF - форма за регистрация 2
« Отговор #26 -: 05 Март 2010, 17:48:57 »
kerkenez написа:
Цитат
Къде се изпраща информация ? Как реши, че не може да се свърже с базата след като не вади грешки ?
Покажи си кода.

Аааа извинявайте за неудобството, намерих си сам грешката. Всичко идва от my_header, бях я поставил на грешно място. Все пак мерси за бързият отговор! :)
"Компютрите не правят каквото искаме, а каквото им кажем." Ако разбереш какво значи това няма да имаш големи проблеми, нито с никоя ОС, нито език, или софтуер.
Аз не съм програмист между другото!

Avalanche

  • Administrator
  • Hero Member
  • *****
  • Благодарности
  • -Казани: 65
  • -Получени: 275
  • Публикации: 2602
  • meow
Отг:MCF - форма за регистрация 2
« Отговор #27 -: 16 Март 2010, 22:07:57 »
Ludjov написа:
Цитат
Проблем със кода за регистрация..


Ето го и кода

Цитат
<?php
include( ' function.php ' );
if(!$_SESSION[ ' is_logged ' ]==true)
{

     my_header( ' Регистрация ' );
   
     if(isset($_POST[ ' submit ' ]))
     {
        $login = trim($_POST[ ' login ' ]);
      $pass = trim($_POST[ ' pass ' ]);
      $pass2 = trim($_POST[ ' pass2 ' ]);
      $email = trim($_POST[ ' email ' ]);
      $real_name = trim($_POST[ ' real_name ' ]);
      
          if(strlen($login)<4)
         {
           $error_array[ ' login ' ]=true;
         }
         
          if(strlen($pass)<4)
         {
           $error_array[ ' pass ' ]=true;
         }         
         
         if($pass != $pass2)
         {
           $error_array[ ' pass_not ' ]=true;
         }      
         
         if(!eregi( " ^[[:alnum:]][[a-z0-9_.-]*@[a-z0-9.-]+\\.[a-z]{2,4}$ " , $email))
         {
           $error_array[ ' email ' ]=true;
         }
         
         if(!ereg( " ^[a-zA-Z]{3,16}$ " , $real_name))
         {
           $error_array[ ' real_name ' ]=true;
         }
         
         if(!count($error_array)>0)
         {
            cnf();
            $sql =  ' SELECT COUNT(*) as cnt FROM users WHERE login= "  ' .addslashes($login). '  " 
            OR email= "  ' .addslashes($email). '  "  ' ;
           $res = mysql_query($sql) or die (mysql_error());
           $row = mysql_fetch_assoc($res);
           if($row[ ' cnt ' ]==0)
           {
             mysql_query( ' INSERT INTO users (login, pass, real_name, email, date_registered)
            VALUES ( "  ' .addslashes($login). '  " ,  "  ' .md5($pass). '  " ,  "  ' .addslashes($real_name). '  " ,  "  ' .addslashes($email). '  " ,
             ' .time(). ' ) ' );
            
            if(mysql_error())
            {
              echo  ' <h1> Грешка. Моля опитайте отново!</h1> ' ;
            }
            else
            {
              header( ' Location: index.php ' );
              exit;
            }
           }
           else
           {
             $error_array[ ' logins ' ]=true;
            $error_array[ ' emails ' ]=true;
           }
         }
      
     }
?>
<form method= " POST "  action= " register.php "  />
Потребител:

<input type= " text "  name= " login "  /><?php
if($error_array[ ' login ' ])
{
  echo  '  - Потребителското име трябва да е по дълго от 4 символа! ' ;
}

if($error_array[ ' logins ' ])
{
  echo  '  - Името или е-майла са заети! ' ;
}
?>


Парола:

<input type= " password "  name= " pass "  /><?php
if($error_array[ ' pass ' ])
{
  echo  '  - Паролата име трябва да е по дълга от 4 символа! ' ;
}
?>

Повтори парола:

<input type= " password "  name= " pass2 "  /><?php
if($error_array[ ' pass_not ' ])
{
  echo  '  - Паролите не съвпадат! ' ;
}
?>

Е-майл:

<input type= " text "  name= " email "  /><?php
if($error_array[ ' email ' ])
{
  echo  '  - Невалиден и-майл адрес! ' ;
}

if($error_array[ ' emails ' ])
{
  echo  '  - Името или е-майла са заети! ' ;
}
?>

Име:

<input type= " text "  name= " real_name "  /><?php
if($error_array[ ' real_name ' ])
{
  echo  '  - Невалидно име! ' ;
}
?>

<input type= " submit "  name= " submit "  value= " Регистрация "  />

</form>

<?php

footer();

}
else
{
  header( ' Location: index.php ' );
  exit;
}

Ровейки се за решение на моя проблем, мисля че ти открих грешката пич. Нямаш скрито поле във формата
<input type= " hidden "  name= " form_submit "  value= " 1 " >Знам, че си го постнал преди повече от два месеца, но това трябва да ти оправи проблема. Успех  :cheer:
« Последна редакция: 02 Декември 2010, 22:37:09 от borovaka »
"Компютрите не правят каквото искаме, а каквото им кажем." Ако разбереш какво значи това няма да имаш големи проблеми, нито с никоя ОС, нито език, или софтуер.
Аз не съм програмист между другото!

dj_ee3

  • Newbie
  • *
  • Благодарности
  • -Казани: 0
  • -Получени: 0
  • Публикации: 3
Отг:MCF - форма за регистрация 2
« Отговор #28 -: 28 Април 2010, 12:32:36 »
странно вчера писах тук днеска ми го няма мнението някой го изтри или?

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home/evgeni/public_html/mcf/register.php on line 39

Warning: Cannot modify header information - headers already sent by (output started at /home/evgeni/public_html/mcf/register.php:39) in /home/evgeni/public_html/mcf/register.php on line 51
Тази грешка получавам 
ето ми го кода
<?php
session_start();
include  ' functions.php ' ;
if(!$_SESSION[ ' is_logged ' ]==true)
{
   
    if ($_POST[ ' form_submit ' ]==1)   
    {
        $login=trim($_POST[ ' login ' ]);
        $pas=trim($_POST[ ' pass ' ]);
        $pas2=trim($_POST[ ' pass2 ' ]);
        $email=trim($_POST[ ' mail ' ]);
        $name=trim($_POST[ ' name ' ]);
        if(strlen($login)<4)
        {
            $error_array[ ' login ' ]= ' Invalid Name ' ;
        }
        if(strlen($pas)<4)
        {
            $error_array[ ' pass ' ]= ' Short Password ' ;
        }
        if($pas!=$pas2)
        {
            $error_array[ ' pass ' ]= ' Password do not match ' ;
        }
        if(!eregi( " ^[a-z0-9_.-]*@[a-z0-9.-]+\\.[a-z]{2,4}$ " , $email ))
      {
            $error_array[ ' mail ' ]= ' Invalid e-mail address ' ;
        }
        if (!ereg( " ^[a-zA-Z]{3,16}$ " ,$name))
        {
            $error_array[ ' name ' ]= ' Invalid name ' ;
      }
        if (!count($error_array)>0)
        {
            db_init();
            $sql= ' SELECT COUNT(*) as cnt FROM users WHERE login= "  ' .addslashes($login). '  "  OR email "  ' .addslashes($email). '  "  ' ;
            $res=mysql_query($sql);
            $row=mysql_fetch_assoc($res);
            if($row[ ' cnt ' ]==0)
         {
            mysql_query( ' INSERT INTO users (login, pass, real_name, email, date_registered)
            VALUES( "  '  .addslashes($login). '  " , "  ' .md5($pas). '  " , "  '  .addslashes($name). '  " ,  "  '  .addslashes($email). '  " , ' .time(). ' )  ' );
            if(mysql_error())
            {
               echo  ' <h1>Error, please try again</h1> ' ;
               echo mysql_error();
            }
            else
            {
               header( ' Location: index.php ' );
               exit;
            }
         }   
         else
         {
            $error_array[ ' login ' ]=  ' Name or address are already in use ' ;
            $error_array[ ' mail ' ]=  ' Name or address are already in use ' ; 
         }
        }
      }
    my_header( ' registration ' );
    ?>
    <form action= " register.php "  method= " post " >
    Login: <input type= " text "  name= " login "  value= "  "  />
    <?php
    if($error_array[ ' login ' ])
    {
        echo  ' Invalid Login ' ;
    }
    ?> 

    Password: <input type= " text "  name= " pass "  value= "  "  />
    <?php
    if($error_array[ ' pass ' ])
    {
        echo  ' Invalid Password ' ;
    }
    ?>

    Repeat Password: <input type= " text "  name= " pass2 "  value= "  "  />

    Email:  <input type= " text "  name= " mail "  value= "  "  />
    <?php
    if($error_array[ ' email ' ])
    {
        echo  ' Invalid E-mail ' ;
    }
    ?> 

    Real name: <input type= " text "  name= " name "  value= "  "  />
    <?php
    if($error_array[ ' name ' ])
    {
        echo  ' Invalid Name ' ;
    }
    ?>

    <input type= " hidden "  name= " form_submit "  value= " 1 "   />
    <input type= " submit "  name= " submit "  value= " Register yourself "  />

    </form>
    <?php
    footer();
   
}
else
{
    header( ' Location= index.php ' );
    exit;
}
?>
« Последна редакция: 02 Декември 2010, 22:37:20 от borovaka »

echeveria

  • Hero Member
  • *****
  • Благодарности
  • -Казани: 72
  • -Получени: 93
  • Публикации: 4836
Отг:MCF - форма за регистрация 2
« Отговор #29 -: 28 Април 2010, 14:16:00 »
Странното е че и отговора ми го няма към теб?!
Не помня какво беше ама видях няколко грешки.

header( ' Location= nau4i.me/index.php ' );
това как ще стане?

Заявката ти е объркана някъде или получава грешка при получаване на данни и не може да ги обработи.

$sql= ' SELECT COUNT(*) as cnt FROM users WHERE login= "  ' .addslashes($login). '  "  OR email "  ' .addslashes($email). '  "  ' ;

това addslashes при заявка селект и каунт за какво ти е?
Днес Печатарите използват парите за да купят мозъците на онези, които ги превъзхождат, за да ги накарат да им служат и така да се превърнат в жертва на посредствеността. Това ли е причината, поради която ги наричате благо?
<iframe src="http://www.corbindavenport.com/ubuntu/widget.html" style="width: