selvom dette system
http://www.phpbuilder.com/ (...) er gammelt, så tjek det ud - det virker, omend det er med gamle kald.
Og så kan bruger fx få tilsendt mail hvis adgangskode er glemt, samt skifte adgangskode.
Du fortæller ikke, hvad problemet er, hvad der skete i modsætning til hvad du forventede, og om du får nogen fejlmeldinger. Du skriver heller ikke, hvad programmeringssproget er.
Jeg går i det følgende ud fra, at det er php. I php i en tekststreng mellem dobbelt anførselstegn bliver variabler automatisk 'oversat.' Så i stedet for
"...WHERE email=".$email." AND adgangskode=".$password...
kan du forenkle til:
"...WHERE email = $email AND adgangskode = $password.."
Så et fingerpeg: I tabellen bruger er email og adgangskode sandsynligvis tekststrenge. I så fald skal du sætte variablerne i mellem anførselstegn. Det bliver så til:
"...WHERE email = '$email' AND adgangskode = '$password'.."
ja det er php ;)
jeg køre først
session_start();
$objCon = new mysqli('localhost', 'xxxxxxx', 'xxxxxx', 'xxxxxxxxx');
if ($objCon->connect_error) {
die('Kunne ikke forbinde (' . $objCon->connect_error . ') ' . $objCon->connect_error);
}
$email = $_POST['email'];
$password = $_POST['password'];
$query = "SELECT email, adgangskode FROM bruger WHERE email=".$email." AND adgangskode=".$password."";
$objResult = $objCon->query($query) or die($objCon->error);
while ($row = $objResult->fetch_assoc()){
}
if($email == $objResult['email'] && $password == $objResult['adgangskode']){
header("location:forside.php");
}
else{
$_SESSION['error'] = "du er en klaphat";
header("location:index.php");
};
Min fejl er at den ikke kan hente mine oplysninger fra databasen og sammenligne dem med de indtastede oplysninger. Så når jeg vil logge ind, bliver jeg smidt ind på code_login.php hvor der står at forbindelsen til databasen er i orden.. Den burde sende mig vider til min forside.php.
Har du prøvet med at ændre din kode som vist i #2?
jeps det er ændret nu,
hvis jeg echo email og password ud, så får jeg de rigtige oplysninger fra databasen nu.
bare hvordan jeg få dem her ned og fungere ???
if($email == $objResult['email'] && $password == $objResult['adgangskode']){
header("location:forside.php");
}
else{
$_SESSION['error'] = "du er en klaphat";
header("location:index.php");
};
Når du siger: while ($row = $objResult->fetch_assoc()){
}
hvilket er det samme som while ($row = $objResult->fetch_assoc())
{}
så afslutter du din while løkke inden den når at gøre noget. Det skal være
while ($row = $objResult->fetch_assoc())
{
[her kommer det der skal ske i while løkken]
}
ikkesandt?
Så prøv med
while ($row = $objResult->fetch_assoc())
{
if($email == $objResult['email'] && $password == $objResult['adgangskode'])
{
header("location:forside.php");
}
else
{
$_SESSION['error'] = "du er en klaphat";
header("location:index.php");
}
}
Tak for hjælpen :)
dog havde jeg lavet fejl
if($email == $objResult['email'] && $password == $objResult['adgangskode'])
Her skulle $objResult skiftes ud med $row da jeg jo gav besked før at while ($row = $objResult->fetch_assoc())
har uddelt point til Christian_Belgien