Terug naar de voorpaginaTBForum nu ook op je mobiel!
Klik hier voor meer info en gratis link...

Home Nieuw Vraag & Aanbod Forums Artikelen Bedrijvengids Zoeken

   Dirk Kuipers, Multiwebs
7 feb 10:04 
Hoi,

Ik ben alles aan het omzetten van een php4 naar een php5 server.

Nu heb ik een loginvenster waar ik niet uitkom...

Weet iemand wat ik moet aanpassen? Ik krijg nu de hele tijd dat ik wordt doorgestuurt naar index.php?err=2 (zie script)

Op pagina waar je kunt inloggen:

<FORM NAME="loginf" method="post" action="login.php" STYLE="padding: 0px; margin: 0px;">
<INPUT TYPE="TEXT" name="login" Value=" Loginnaam" STYLE="width: 78px;" onFocus="clearThis(' Loginnaam',this)" onBlur="fillThis(' Loginnaam',this)">  <INPUT name="code" type="password" Value=" Wachtwo" STYLE="width: 78px;" onFocus="clearThis(' Wachtwo',this)" onBlur="fillThis(' Wachtwo',this)">  
<input ALIGN="ABSMIDDLE" type="image" src="ima/ok.gif" name="B1" value='Controleer'>
</FORM>


Login.php

<? // Kijken wat er na het inloggen gebeuren moet. Check of dus alles goed is.

include("config.php");

$login = $_POST['login'];
$code = $_POST['code'];

if($login != "" && $code != "") {
$login_object = mysql_fetch_object(mysql_query("SELECT wachtwoord FROM gebruikers WHERE gebruiker='$login'"));

if($code == $login_object->wachtwoord) {
setCookie("Domein",$login);
header("Location: welkom.php");
} else {
header("Location: index.php?err=1");
} } else {
header("Location: index.php?err=2");
}

mysql_close()
?>

     Aangepast op 07-02-2010 10:06 door Dirk Kuipers
   Ramon Fincken, CreativePulses.nl / WebsiteFreel
7 feb 10:28 
login.php begint die met <? of zit daar nog witregel voor zoals in je copy paste?

Idem voor je config.php ?

Doe dit eens?

$login = mysql_real_escape_string($login); // Safety first!
$login_object = mysql_fetch_object(mysql_query("SELECT wachtwoord FROM gebruikers WHERE gebruiker='$login'"));

var_dump($login_object);
die();



en daarnaast.. waarom vraag je enkel het WW op ? Weet je nu wie er is ingelogged? (Neen je weet enkel dat er ergens een gebruiker is met dat wachtwoord en dat zouden er meer dan 1 kunnen zijn ).



Update, als je bij err=2 uitkomt gaat er wat mis bij de post.
Doe eens onder je include een
print_r($_POST); die();
?

     Aangepast op 07-02-2010 10:29 door Ramon Fincken
   Erwin de Bruijn, Double Media v.o.f.
7 feb 10:37 
WHERE gebruiker = '" . $login . "'

   Dirk Kuipers, Multiwebs
7 feb 10:49 
Argh...

Ik had hem eerst zonder de POST wat ik later heb toegevoegd:
$login = $_POST['login'];
$code = $_POST['code'];

Maar ik bleek uit het verkeerde mapje te uploaden....
Ja, dan doet hij het nooit natuurlijk...

Oftewel: hij doet het gewoon..
Mijn excuses...

Naar de veiligheid zal ik hierna eens kijken ja..
In principe kijk ik of het wachtwoord juist is bij de opgegeven user. Dan weet ik dus ook welke user er is. Deze user zet ik weg in een cookie nadat hij heeft aangegeven het juiste wachtwoord te geven..

Bedankt voor jullie reacties!

   Richard O., Particulier
7 feb 11:28 
Dus als je een andere naam in het cookie zet, word je die andere gebruiker, zonder dat je daar het wachtwoord van hoeft te weten.

Handig hoor!

Kijk eens naar sessies... (en naar mysql_real_escape_string())

   Erwin de Bruijn, Double Media v.o.f.
7 feb 11:32 
Zou het login systeem zo aanpassen dat er een hash in de cookie gezet wordt welke account en IP gebonden is. Komt de gebruiker terug dan kan er gecontroleerd of de hash en het IP in de database overeen komen.

In ons systeem controleren we op useragent, host en ip.




 
© Copyright TargetMedia 2001-2010 | Mobile | Premium SMS | Micropayments | Muziek downloaden | Ringtones Bekijk bezoekers statistieken RSS feed