j210868k Δημοσ. 6 Απριλίου 2011 Δημοσ. 6 Απριλίου 2011 Εχω τον παρακάτω κώδικα σε php ----login.php---------- <html> <head /> <body> <form action="auth.php" method=POST> <fieldset > <legend>Login</legend> <label for='Username'> UserName*: </label> <input type='text' autocomplete='off' name='Username' /> <label for='Password'> Password*: </label> <input type='text' autocomplete='off' name='Password' /> <input type='submit' name='Submit' value='Submit' /> </form> </body> </html> -----auth.php------------- <?PHP $user=$_POST['Username']; $pass=$_POST['Password']; if (($user=="admin") && ($pass="greekdevils")) header("location:index.htm"); else echo "Wrong username and password"; <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="generator" content="CoffeeCup HTML Editor (www.coffeecup.com)"> <meta name="created" content="Τρι, 05 Απρ 2011 14:17:16 GMT"> <meta name="description" content=""> <meta name="keywords" content=""> <title></title> </head> <body> </body> </html> Είναι μια login form. Το πρόβλημα που έχω είναι ότι αν στο πεδίο username δώσω τιμή "admin" ότι τιμή και να δώσω στο πεδίο password ακόμα και το αφήσω κενό καλεί κανονικά την σελίδα success.html Δηλαδή ο έλεγχος γίνεται μόνο για το πεδίο username. Αν δώσω λάθος username τότε δεν με αφήνει να προχωρήσω. Εχει κανείς καμιά ιδέα;
Επισκέπτης Δημοσ. 6 Απριλίου 2011 Δημοσ. 6 Απριλίου 2011 Άλλαξε το: if (($user=="admin") && ($pass="greekdevils")) Σε: if (($user=="admin") && ($pass=="greekdevils")) Το μονό = δηλώνει assignment και όχι comparison.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.