SitePoint Sponsor

User Tag List

Results 1 to 4 of 4
  1. #1
    SitePoint Member
    Join Date
    Sep 2004
    Location
    Canada
    Posts
    6
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    What is a good login script

    I am trying to use Login_System_v.2.0 but I cannot seem to get the user name field not to give me the error Username field cannot be left blank! The link to it is http://www.ecbyaileen.com/main.php or http://www.ecbyaileen.com/register.php if someone could tell me what I am doing wrong it would be great or if someone knows of a script that is really good please let me know.

  2. #2
    always learning . . .
    Join Date
    Nov 2003
    Location
    UK
    Posts
    821
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    What code is in process.php ?

    Basically you are not referencing the field properly. If you were it would know it had a value.

  3. #3
    SitePoint Member
    Join Date
    Sep 2004
    Location
    Canada
    Posts
    6
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    <?
    /**
    * Process.php
    *
    * The Process class is meant to simplify the task of processing
    * user submitted forms, redirecting the user to the correct
    * pages if errors are found, or if form is successful, either
    * way. Also handles the logout procedure.
    *
    * Written by: Jpmaster77 a.k.a. The Grandmaster of C++ (GMC)
    * Last Updated: August 19, 2004
    */
    include("include/session.php");

    class Process
    {
    /* Class constructor */
    function Process(){
    global $session;
    /* User submitted login form */
    if(isset($_POST['sublogin'])){
    $this->procLogin();
    }
    /* User submitted registration form */
    else if(isset($_POST['subjoin'])){
    $this->procRegister();
    }
    /* User submitted forgot password form */
    else if(isset($_POST['subforgot'])){
    $this->procForgotPass();
    }
    /* User submitted edit account form */
    else if(isset($_POST['subedit'])){
    $this->procEditAccount();
    }
    /**
    * The only other reason user should be directed here
    * is if he wants to logout, which means user is
    * logged in currently.
    */
    else if($session->logged_in){
    $this->procLogout();
    }
    /**
    * Should not get here, which means user is viewing this page
    * by mistake and therefore is redirected.
    */
    else{
    header("Location: main.php");
    }
    }

    /**
    * procLogin - Processes the user submitted login form, if errors
    * are found, the user is redirected to correct the information,
    * if not, the user is effectively logged in to the system.
    */
    function procLogin(){
    global $session, $form;
    /* Login attempt */
    $retval = $session->login($_POST['user'], $_POST['pass'], isset($_POST['remember']));

    /* Login successful */
    if($retval){
    header("Location: ".$session->referrer);
    }
    /* Login failed */
    else{
    $_SESSION['value_array'] = $_POST;
    $_SESSION['error_array'] = $form->getErrorArray();
    header("Location: ".$session->referrer);
    }
    }

    /**
    * procLogout - Simply attempts to log the user out of the system
    * given that there is no logout form to process.
    */
    function procLogout(){
    global $session;
    $retval = $session->logout();
    header("Location: main.php");
    }

    /**
    * procRegister - Processes the user submitted registration form,
    * if errors are found, the user is redirected to correct the
    * information, if not, the user is effectively registered with
    * the system and an email is (optionally) sent to the newly
    * created user.
    */
    function procRegister(){
    global $session, $form;
    /* Convert username to all lowercase (by option) */
    if(ALL_LOWERCASE){
    $_POST['user'] = strtolower($_POST['user']);
    }
    /* Registration attempt */
    $retval = $session->register($_POST['user'], $_POST['pass'], $_POST['email']);

    /* Registration Successful */
    if($retval == 0){
    $_SESSION['reguname'] = $_POST['user'];
    $_SESSION['regsuccess'] = true;
    header("Location: ".$session->referrer);
    }
    /* Error found with form */
    else if($retval == 1){
    $_SESSION['value_array'] = $_POST;
    $_SESSION['error_array'] = $form->getErrorArray();
    header("Location: ".$session->referrer);
    }
    /* Registration attempt failed */
    else if($retval == 2){
    $_SESSION['reguname'] = $_POST['user'];
    $_SESSION['regsuccess'] = false;
    header("Location: ".$session->referrer);
    }
    }

    /**
    * procForgotPass - Validates the given username then if
    * everything is fine, a new password is generated and
    * emailed to the address the user gave on sign up.
    */
    function procForgotPass(){
    global $database, $session, $mailer, $form;
    /* Username error checking */
    $subuser = $_POST['user'];
    $field = "user"; //Use field name for username
    if(!$subuser || strlen($subuser = trim($subuser)) == 0){
    $form->setError($field, "* Username not entered<br>");
    }
    else{
    /* Make sure username is in database */
    $subuser = stripslashes($subuser);
    if(strlen($subuser) < 5 || strlen($subuser) > 30 ||
    !eregi("^([0-9a-z])+$", $subuser) ||
    (!$database->usernameTaken($subuser))){
    $form->setError($field, "* Username does not exist<br>");
    }
    }

    /* Errors exist, have user correct them */
    if($form->num_errors > 0){
    $_SESSION['value_array'] = $_POST;
    $_SESSION['error_array'] = $form->getErrorArray();
    }
    /* Generate new password and email it to user */
    else{
    /* Generate new password */
    $newpass = $session->generateRandStr(8);

    /* Get email of user */
    $usrinf = $database->getUserInfo($subuser);
    $email = $usrinf['email'];

    /* Attempt to send the email with new password */
    if($mailer->sendNewPass($subuser,$email,$newpass)){
    /* Email sent, update database */
    $database->updateUserField($subuser, "password", md5($newpass));
    $_SESSION['forgotpass'] = true;
    }
    /* Email failure, do not change password */
    else{
    $_SESSION['forgotpass'] = false;
    }
    }

    header("Location: ".$session->referrer);
    }

    /**
    * procEditAccount - Attempts to edit the user's account
    * information, including the password, which must be verified
    * before a change is made.
    */
    function procEditAccount(){
    global $session, $form;
    /* Account edit attempt */
    $retval = $session->editAccount($_POST['curpass'], $_POST['newpass'], $_POST['email']);

    /* Account edit successful */
    if($retval){
    $_SESSION['useredit'] = true;
    header("Location: ".$session->referrer);
    }
    /* Error found with form */
    else{
    $_SESSION['value_array'] = $_POST;
    $_SESSION['error_array'] = $form->getErrorArray();
    header("Location: ".$session->referrer);
    }
    }
    };

    /* Initialize process */
    $process = new Process;

    ?>

  4. #4
    SitePoint Member
    Join Date
    Sep 2004
    Location
    Canada
    Posts
    6
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    So does anyone know what the problem could be


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •