Форма за регистрация ?

confiscate

Registered
Здравейте ,

Почнах да уча mysql и php и стигнах как да си направим форма за регистрация. Направих си една доста проста форма за регистрация , с няколко проверки , като една от тях е дали всички полета са попълнени. Ако попълня само няколко и дам формата да се изпрати , ми минава проверката , че не е попълнено всичко, но попълнените неща се изтриват. Как мога да избегна това и всичко попълнено да си остане и да трябва само да допопълня?

Ето примеерен код на формата ми:
Код:
<?php
        if(isset($_POST['registration']))
        {
              if ($username==NULL || $password==NULL || $mail == NULL) {
                     echo '<p>Не сте попълнили всички полета!</p>';
              }
               else {
              $username= trim($_POST ['username']);
              $password= md5(trim($_POST ['password']));
              $mail=($_POST ['mail']);

              $check = mysql_query("SELECT user_name FROM users WHERE user_name='$username' "); //Проверка за съществуващ потребител
              $num = mysql_num_rows ($check); // Променлива съдържаща броя на откритите резултати

              if ($num >0) {
                     echo '<p>Такъв потребител вече съществува!</p>';
              }

              else {
                     mysql_query("INSERT INTO users(user_name , password, mail) VALUES( '$username', '$password' , '$mail' )" );
                     echo '<p>Вие се регистрирахте успешно!</p>';
              }
              }
        }

        ?>

Благодаря предварително !
 
с jQuery и Ajax ще стане, другия вариант е при $_POST да слагаш стойността на всяко поле ако я има
 
Формата трябва да ти стане.

PHP:
<form method='post'>
 
/** Example. */
<input type="text" name="username" <?php if(isset($_POST['username'])) {echo ' value="'.htmlspecialchars($_POST['username']).'" '; } ?> />
</form>
 
заявката си оправи.
Код:
"INSERT [b]INTO users(user_name , password, mail) [/b]VALUES( '$username', '$password' , '$mail' )"

да стане :
Код:
"INSERT INTO `users` (`user_name` , `password`, `mail`) VALUES( '$username', '$password' , '$mail' )"

понякога това е грешката, понякога е зареди някоя запазена дума, в който и да е случай сложи or die(mysql_error()) след заявката за да видим какъв е пробмела :) :?:
 

Back
Горе