Avatar billede jomi83 Nybegynder
29. januar 2009 - 18:16 Der er 9 kommentarer og
1 løsning

Fejl i script!

Hej eksperter,
Jeg får fejlen:
Parse error: syntax error, unexpected '}' in /customers/danish-gaming.dk/danish-gaming.dk/httpd.www/nletter/login.php on line 13

for nedenstående kode... Nogle som kan finde fejlen? Meningen er at den skal tjekke i databasen om brugernavnet og kodeordet som er indtastet på forrige side er korrekt, hvis det er det skal den udskrive "Du er nu logget ind" og hvis det er forkert skal den udskrive "Brugernavn eller kodeord var forkert".

Koden:
<?
include("opencon.php");

$username = $_POST['username'];
$password = $_POST['password'];

if(mysql_query("SELECT * FROM admin WHERE username = '$username' AND password = '$password'")) {
echo "Du er nu logget ind";

}
else
}

echo "Brugernavn eller kodeordet var forkert";
}

include("closecon.php");
?>
Avatar billede Slettet bruger
29. januar 2009 - 18:18 #1
<?
include("opencon.php");

$username = $_POST['username'];
$password = $_POST['password'];

if(mysql_query("SELECT * FROM admin WHERE username = '$username' AND password = '$password'")) {
echo "Du er nu logget ind";

}
else
{

echo "Brugernavn eller kodeordet var forkert";
}

include("closecon.php");
?>

- Den "{" efter "else" var vendt forkert.
Avatar billede Dan Nim Seniormester
29. januar 2009 - 18:19 #2
Du har en } istedet for en { efter else:


<?
include("opencon.php");

$username = $_POST['username'];
$password = $_POST['password'];

if(mysql_query("SELECT * FROM admin WHERE username = '$username' AND password = '$password'")) {
echo "Du er nu logget ind";
} else {
echo "Brugernavn eller kodeordet var forkert";
}
include("closecon.php");
?>
Avatar billede showsource Seniormester
29. januar 2009 - 18:21 #3
Men den skal vel heller ikke logge ind blot hvis query udføres ?
Så kan man jo skrive hvad som helst, eller ingenting i formen :O)
Avatar billede jomi83 Nybegynder
29. januar 2009 - 18:24 #4
Nej det er jo det...

Hvad er forskellen på de tegn: { eller } og hvad gør de?

Nu logger den stadig ind hvis man skriver noget forkert i username/password :(
Avatar billede showsource Seniormester
29. januar 2009 - 18:28 #5
<?php

include("opencon.php");

$username = $_POST['username'];
$password = $_POST['password'];

$row = mysql_query("SELECT * FROM admin WHERE username = '$username' AND password = '$password'") or die (mysql_error());

if(mysql_num_rows($row) == 1) {
echo "Du er nu logget ind";
} else {
echo "Brugernavn eller kodeordet var forkert";
}
include("closecon.php");
?>
Avatar billede jomi83 Nybegynder
29. januar 2009 - 18:32 #6
Super... Det virker helt som det skal :-)

Hvis du lige opretter et svar får du nogle point...

Kan du forklare mig hvad disse "strings" gør?
Avatar billede showsource Seniormester
29. januar 2009 - 18:53 #7
hmm, lidt kringlet at forklare synes jeg :O)
http://dk.php.net/manual/en/control-structures.if.php

Men indhold af {} ved en if bliver afviklet hvis if opfyldes

Bruges også hvis du vil lave en funktion

function noget($var) {

echo $var;

}
Avatar billede jomi83 Nybegynder
29. januar 2009 - 19:14 #8
Super :) Mange tak... Vil du ikke have pointene siden du ikke har oprettet et svar? :D
Avatar billede showsource Seniormester
29. januar 2009 - 19:20 #9
ehh, jo, men din fejl var jeg jo ikke den første til at rette, så det må blive en deler :O)
Avatar billede Slettet bruger
29. januar 2009 - 19:35 #10
Jeg springer over.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester