Gå til innhold

Hva er galt i koden?


Anbefalte innlegg

Holder på med ett innloggingssystem.. Er ikke så god på php! Noen som vet hva som er galt her?

 

Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING on line 20

 

Klikk for å se/fjerne innholdet nedenfor

<?php

include("config.php");

echo '<center>';

if (isset($_POST['signup'])) {

if($_POST['username'] == '') 
{
   echo "<div style=\"border:1px #cccccc solid;background-color:#008800;padding:10px;\">Skriv inn et brukernavn</div>";
exit;
   }
if($_POST['password'] == '') 
{
   echo "<div style=\"border:1px #cccccc solid;background-color:#008800;padding:10px;\">Skriv inn ett passord</div>";
exit;
   }

$CheckUsernameExistance = mysql_fetch_array(mysql_query("SELECT `username` from login WHERE `username` = "'.$_POST['username'].'" LIMIT 1");

if(mysql_num_rows($CheckUsernameExistance) <= '1')
{
echo "<div style=\"border:1px #cccccc solid;background-color:#008800;padding:10px;\">Brukernavnet er allerede i bruk.</div>";
exit;
}

$AdduserToDatabase = mysql_query("INSERT INTO `login` (`username`, `password`) VALUES ('".$_POST['username']."', '".md5(preg_replace("/(\/|\\\)++/','/", $_POST['password']))."') ");

if(!$AdduserToDatabase)	{ echo '<div style=\"border:1px #cccccc solid;background-color:#008800;padding:10px;\">Det ble en feil med å legge deg til i databasen. Prøv igjen!</div>';	
} else { echo '<div style=\"border:1px #cccccc solid;background-color:#008800;padding:10px;\">Da ble du registrert. Logg inn</div>';	}

} else {

echo "
<div style=\"border:1px #cccccc solid;background-color:#008800;padding:10px;\">
<b>Registrer</b>
<br />
<form action=\"signup.php\" method=\"post\" name=\"signup\">
Brukernavn: <input type=\"text\" size=\"30\" name=\"username\">
<br />
Passord: <input type=\"password\" size=\"30\" name=\"password\">
<br />
<br />
<input type=\"submit\" value=\"Registrer\" name=\"signup\">
</form> 
";

}
?>

Lenke til kommentar
Videoannonse
Annonse
Du mangler en parantes.

Og:

"SELECT `username` from login WHERE `username` = "'.$_POST['username'].'" LIMIT 1"

7270821[/snapback]

Må vel heller bli:
"SELECT `username` from login WHERE `username` = '".$_POST['username']."' LIMIT 1"

Enkeltfnuttene kan ikke stå utenfor dobbeltfnuttene.

Eventuelt kan det skrives:

"SELECT `username` from login WHERE `username` = '{$_POST['username']}' LIMIT 1"

Lenke til kommentar
"SELECT `username` from login WHERE `username` = '".$_POST['username']."' LIMIT 1"

Enkeltfnuttene kan ikke stå utenfor dobbeltfnuttene.

Eventuelt kan det skrives:

"SELECT `username` from login WHERE `username` = '{$_POST['username']}' LIMIT 1"

7270876[/snapback]

Det skal ikke være noen forskjell mellom de to, men igjen så ser jeg sikkerheten gir man en stor lang beng i. (refererer da til trådstarter, dere andre jobber jo kun på det han har oppgitt)

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...