Gå til innhold

Hvorfor fungerer ikke empty koden på passord?


Anbefalte innlegg

Som emnetittelen sier:

Hvorfor fungerer ikke empty koden på passord? (<input type="password" name="password" />)

 

Her er hele koden:

Klikk for å se/fjerne innholdet nedenfor
<?php

if(isset($_POST['submit'])) {
mysql_connect("localhost", "username", "password");
mysql_select_db("database_navn");

$username = mysql_real_escape_string($_POST['username']);
$password = mysql_real_escape_string(md5($_POST['password']));
$email = mysql_real_escape_string($_POST['email']);
$rank = "Member";

if (empty($username) || empty($password) || empty($email)) {
echo 'You did not fill inn all required fields.';
echo '</div>';
echo '</body>';
echo '</html>';
die('');
}

else if (!ereg("^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$", $email)) {
echo 'This email is <b>not</b> valid.';
echo '</div>';
echo '</body>';
echo '</html>';
die('');
}

else if (!preg_match("/^[a-zA-Z0-9-_]+$/", $username)) {
echo 'Username cannot contain special letters, or spaces.';
echo '</div>';
echo '</body>';
echo '</html>';
die('');
}

$checkif = mysql_query("SELECT username FROM users WHERE username = '$username'");
if (mysql_num_rows($checkif)>=1){
echo 'This user already exists!';
echo '<br />';
echo 'Please choose another username';
die('');
}

mysql_query("INSERT INTO users (username, password, email, rank) VALUES ('$username', '$password', '$email', '$rank')");
echo 'You are registered as ';
echo htmlentities(stripslashes($_POST['username']));
}
else {
?>
<form action="" method="post">
<p>Username: *<br /><input type="text" name="username" /></p>
<p>Password: *<br /><input type="password" name="password" /></p>
<p>Email: *<br /><input type="text" name="email" /></p>
<p><input type="submit" name="submit" value="Register" /></p>
</form>
<?php
}
?>

 

Ja...noen som vet? Hvis jeg lar f. eks email stå åpen så får jeg beskjed om at jeg må fylle ut alle feltene...

Lenke til kommentar
Videoannonse
Annonse
Gjest Slettet+142

sant det grimjoey sier. md5 returnerer en 32-string hash uansett.

 

erstatt if (empty($username) || empty($password) || empty($email)) {

i koden din, med denne linjen:

if (empty($username) || empty($_POST["password"]) || empty($email)) {

 

 

 

d41d8cd98f00b204e9800998ecf8427e

 

 

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...