Sql Log In..

  • Here is my code i have been staring at it all day and im not sure what is wrong and i left out the connect to data base part but i know its correct it works on other pages to input data into it..

    {

    $username = $_COOKIE['ID_my_site'];

    $pass = $_COOKIE['Key_my_site'];

    $check = mysql_query("SELECT * FROM users WHERE username = '$username'")or die(mysql_error());

    while($info = mysql_fetch_array( $check ))

    {

    if ($pass != $info['password'])

    {

    }

    else

    {

    header("Location: members.php");

    }

    }

    }

    if (isset($_POST['submit'])) { // if form has been submitted

    if(!$_POST['username'] | !$_POST['pass']) {

    die('You did not fill in a required field.');

    }

    if (!get_magic_quotes_gpc()) {

    $_POST['email'] = addslashes($_POST['email']);

    }

    $check = mysql_query("SELECT * FROM users WHERE username = '".$_POST['username']."'")or die(mysql_error());

    $check2 = mysql_num_rows($check);

    if ($check2 == 0) {

    die('That user does not exist in our database.');

    }

    while($info = mysql_fetch_array( $check ))

    {

    $_POST['pass'] = stripslashes($_POST['pass']);

    $info['password'] = stripslashes($info['password']);

    $_POST['pass'] = md5($_POST['pass']);

    if ($_POST['pass'] != $info['password']) {

    die('Incorrect password, please try again.');

    }

    else

    {

    $_POST['username'] = stripslashes($_POST['username']);

    $hour = time() + 3600;

    setcookie(ID_my_site, $_POST['username'], $hour);

    setcookie(Key_my_site, $_POST['pass'], $hour);

    header("Location: members.php");

    }

    }

    }

    else

    {

    ?>

    <form action="<?php echo $_SERVER['PHP_SELF']?>" method="post">

    <table border="0">

    <tr><td colspan=2><h1>Login</h1></td></tr>

    <tr><td>Username:</td><td>

    <input type="text" name="username" maxlength="40">

    </td></tr>

    <tr><td>Password:</td><td>

    <input type="password" name="pass" maxlength="50">

    </td></tr>

    <tr><td colspan="2" align="right">

    <input type="submit" name="submit" value="Login">

    </td></tr>

    </table>

    </form>

    <?php

    }

    ?>

    </body>

    </html>

  • Looks like it might be a PHP problem. Have you tried asking on a site that focuses on PHP?

    - Gus "GSquared", RSVP, OODA, MAP, NMVP, FAQ, SAT, SQL, DNA, RNA, UOI, IOU, AM, PM, AD, BC, BCE, USA, UN, CF, ROFL, LOL, ETC
    Property of The Thread

    "Nobody knows the age of the human race, but everyone agrees it's old enough to know better." - Anon

  • Not a PHP expert but it looks like you haven't properly concatenated the string in this line

    $check = mysql_query("SELECT * FROM users WHERE username = '$username'")or die(mysql_error());

    The $username should be concatenated into that select statement but instead looks to be just passed to the database as '$username' instead of the value of that variable.

    Make sense?

    Jason...AKA CirqueDeSQLeil
    _______________________________________________
    I have given a name to my pain...MCM SQL Server, MVP
    SQL RNNR
    Posting Performance Based Questions - Gail Shaw[/url]
    Learn Extended Events

Viewing 3 posts - 1 through 2 (of 2 total)

You must be logged in to reply to this topic. Login to reply