Avatar billede DePlex Nybegynder
20. marts 2011 - 15:14 Der er 11 kommentarer og
1 løsning

Hvorfor virker min kode ikke.

Hvorfor virker min kode ikke? Når jeg prøver at logge ind får jeg error lige meget hvad. Har tjekket at mit pass bliver krypteret ens. Her er min kode:

<?
session_start();
$mysqli = new mysqli("xxx", "xxx", "xxx", "xxx");

if (mysqli_connect_errno()) {
    printf("Connect failed: %sn", mysqli_connect_error());
    exit();
}

$loginmail = strip_tags(htmlspecialchars($_POST['loginmail']));
$loginpass = strip_tags(htmlspecialchars($_POST['loginpass']));
$salt = md5($loginpass.'£%h¤,P2/<${]');   
    $insertpass = md5('$salt$loginpass$salt');

$sql = 'SELECT `id`, `mail`, `navn`, `pass`, `alder`, `admin` FROM user WHERE mail = ? AND pass = ?';
$stmt = $mysqli->prepare($sql);
  $stmt->bind_param("ss", $loginmail, $insertpass);
  $stmt->execute();
    $stmt->store_result();
    $stmt->bind_result($id, $mail, $navn, $pass, $alder, $admin);
      $stmt->fetch();
      $stmt->free_result();

if(!$id || !$mail || !$navn || !$pass || !$alder || !$admin){
echo 'error';
}else{
   
    $secid = $id + 860983239;
    $rand = md5('$secid$secid$secid');
   
$salt = md5($rand.'Sl!Qm?P');
$ip = md5('$salt$_SERVER["REMOTE_ADDR"]$salt');
$admintjek = 1;
$_SESSION['navn'] = $navn;
$_SESSION['mail'] = $mail;
$_SESSION['id'] = $id;
$_SESSION['ip'] = $ip;
$_SESSION['login'] = md5(323695175);
$salt2 = md5($pass.'Sl!Qm?P');
$tjekadmin = md5('$salt2$admintjek$salt2');

if($admin = $tjekadmin){
$_SESSION['admin'] = md5('589649036');
}else{
$_SESSION['admin'] = md5('733325894');   
}
header('Location: http://www.mit.deplex.dk/logged_in.php');
}
?>
Avatar billede E-Hammer-E Nybegynder
20. marts 2011 - 15:56 #1
Hvad siger fejl meddelsen den kan mange gange hjælpe ;)
Avatar billede DePlex Nybegynder
20. marts 2011 - 15:58 #2
Intet... Der kommer bare mit echo som siger error :-)
Avatar billede olebole Juniormester
20. marts 2011 - 16:54 #3
<ole>

Jeg forstår ikke dette, når du bruger mysqli:


$loginmail = strip_tags(htmlspecialchars($_POST['loginmail']));
$loginpass = strip_tags(htmlspecialchars($_POST['loginpass']));



Har du prøvet at echo'e de to variabler, lige inden du kører din query? Ellers prøv at kikke på:
    http://dk2.php.net/manual/en/mysqli.error.php

/mvh
</bole>
Avatar billede DePlex Nybegynder
20. marts 2011 - 17:23 #4
Hvid side... Der er ingen error også når jeg prøver at udskrive.
Avatar billede olebole Juniormester
20. marts 2011 - 17:29 #5
Fedt, så har du jo fundet fejlen  =)
Avatar billede DePlex Nybegynder
20. marts 2011 - 17:36 #6
Nej... For den gider ikke logge ind :P Der står bare "Error:" og så hvid side... Har tjekket sql oplysninger osv. mange gange nu...
Avatar billede DePlex Nybegynder
20. marts 2011 - 17:43 #7
Og den er sat der den skal være hvis man ikke logger ind... Så¨derfor kan jeg ikke rigtig se fejlen.
Avatar billede olebole Juniormester
20. marts 2011 - 17:46 #8
Læste du overhovedet mit forrige indlæg? Jeg prøver igen! Prøv dette:


echo "<p>Test før: ".$_POST['loginmail']." :: ".$_POST['loginpass']."</p>";

$loginmail = strip_tags(htmlspecialchars($_POST['loginmail']));
$loginpass = strip_tags(htmlspecialchars($_POST['loginpass']));

echo "<p>Test efter: ".$loginmail." :: ".$loginpass."</p>";

Avatar billede DePlex Nybegynder
20. marts 2011 - 19:15 #9
Yes fandt fejlen! Havde en fejl ved min decrypting.. Opret svar :)
Avatar billede olebole Juniormester
20. marts 2011 - 19:27 #10
Jeg samler ikke points - men jeg forstår ikke lige, hvad du mener med 'dekryptering'  =)
Avatar billede DePlex Nybegynder
20. marts 2011 - 19:33 #11
Fejl... Det skulle være kryptering =D
Avatar billede olebole Juniormester
20. marts 2011 - 19:44 #12
Arrhhhh ... ja, det kan være svært at afsløre et eller flere manglende punktum med Ekspertens højst uheldige valg af font  :o|
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