op is juist maar toch fout?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Php knipper

php knipper

18/04/2012 16:59:33
Quote Anchor link
ik gebruik gegevens uit de database om een soort van inlogsysteem te laten werken,
het werkt met een aantal sleutels ( ongeveer 20 tekens 6 sleutels )

nu controleer ik of het ip adres van de ingelogde gebruiker klopt
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
$ip = $_SERVER['REMOTE_ADDR'];
if($token['ip'] == $ip) {


ik heb al eens een echo gedaan op $ip en op $token['ip'] en dat is hetzelfde,
waarom is het dan niet gelijk?

Toevoeging op 18/04/2012 17:00:33:

oeps het moet ip is juist maar toch fout? zijn
 
PHP hulp

PHP hulp

24/04/2024 04:54:45
 
Mebus  Hackintosh

Mebus Hackintosh

18/04/2012 17:18:53
Quote Anchor link
Iets wat meer informatie wat betreft de opbouw van je MySQL tabel zou handig zijn om te kunnen zien hoe je je data opslaat. Gebruik voor de zekerheid ook eens trim.
 
Php knipper

php knipper

18/04/2012 17:21:38
Quote Anchor link
ip is gewoon text er zijn geen error's
waarvoor moet ik trim gebruiken
 
Jens erd

Jens erd

18/04/2012 17:22:29
Quote Anchor link
Post eens wat meer relevante code, ik neem aan dat je zelf ook wel begrijpt dat niemand hier iets van kan maken.
 
Php knipper

php knipper

18/04/2012 17:25:17
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?php
$token_ophaal
= "SELECT gebruiker_id, ip FROM token WHERE sleutel1='".mysql_real_escape_string($_GET['s1'])."' and sleutel2='".mysql_real_escape_string($_GET['s2'])."' and sleutel3='".mysql_real_escape_string($_GET['s3'])."' and sleutel4='".mysql_real_escape_string($_GET['s4'])."' and sleutel5='".mysql_real_escape_string($_GET['s5'])."' and sleutel6='".mysql_real_escape_string($_GET['s6'])."'";

if(!$token = mysql_query($token_ophaal))
{

    echo '<div id="error">Sorry, Er is een foutje verschenen.<div id="log">'.mysql_error().'<br />In query: '.$token_ophaal.'</div></div>';
}

elseif(mysql_num_rows($token) == 0)
{

    //inlog hack melden ( sql uitvoeren )
}
else
{
$token = mysql_fetch_assoc($token);
$ip = $_SERVER['REMOTE_ADDR'];
if($token['ip'] == $ip) {
?>
 
Mebus  Hackintosh

Mebus Hackintosh

18/04/2012 17:31:07
Quote Anchor link
Zet eens in je laatste stukje van je if-elseif-else (else) statement eens dit neer:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
print_r($token);
 
Php knipper

php knipper

18/04/2012 17:34:30
Quote Anchor link
Array ( [gebruiker_id] => (klopt) [ip] => ++.+++.+++.+++ )
 
Jacco Brandt

Jacco Brandt

18/04/2012 17:46:53
Quote Anchor link
Die output klopt van geen kant meer. Geef gewoon de complete, onveranderde, waarde.
 
Php knipper

php knipper

18/04/2012 18:22:15
Quote Anchor link
sorry, ik probeer het ip te beschermen en ga dus een ander opgeven

Array ( [gebruiker_id] => 2 [ip] => 98.156.369.198 )
 
Aad B

Aad B

18/04/2012 19:08:30
Quote Anchor link
waarom wordt toch steeds met het ip gewerkt?? Het is vandaag de dag niet meer zeker of je gebruiker vanaf hetzelfde ip inlogt. Je gebruiker kan op school zijn en via het school ip inloggen, je gebruiker kan in de tram zitten en met zijn smartphone ip inloggen en je gebruiker kan thuis zijn en met zijn home-peeceetje en ip inloggen. Het is en blijft onlogisch om het ip op te slaan en ook bijvoorbeeld om een ip te bannen.
 
Php knipper

php knipper

18/04/2012 19:52:46
Quote Anchor link
maar het is juist de bedoeling dat het maar vanaf 1 plaats kan.
op school moet het werken en verder nergens.
 
B a s
Beheerder

B a s

18/04/2012 19:57:17
Quote Anchor link
IP van je school regelen in checken of het IP adres klopt?
 
Jacco Brandt

Jacco Brandt

18/04/2012 20:00:15
Quote Anchor link
Omdat er nog geen beter alternatief is.

Kun je eens var_dump($token['ip'], $ip); doen?
 
Php knipper

php knipper

18/04/2012 20:10:20
Quote Anchor link
Bas Kreleger op 18/04/2012 19:57:17:
IP van je school regelen in checken of het IP adres klopt?


dat heb ik al en dat klopt met hetgeen in de database, maar toen ik het daarstraks opstarten gaf hij een error dat het ip niet klopte

Toevoeging op 18/04/2012 20:13:10:

string(15) "98.156.369.198 " string(13) "98.156.369.198"

ik begin een foutje te zien ( kan die spatie een probleem geven ( zal hem maar verwijderen, kan wel niet controleren tot morgen ))
 
Mebus  Hackintosh

Mebus Hackintosh

18/04/2012 20:15:39
Quote Anchor link
Waarom moet je trim gebruiken dan? Zorg er ook voor dat data zonder voor of eind spaties de database in gaat ;)

Zoals je kan zien geef ik dus eigenlijk al de oplossing in het eerste bericht. Dus ja, een string van 15 tekens is niet hetzelfde als string met 13 tekens.
Gewijzigd op 18/04/2012 20:17:13 door Mebus Hackintosh
 
Php knipper

php knipper

18/04/2012 20:17:19
Quote Anchor link
a, daarvoor die trim
ik had die gegevens handmatig ingevoerd maar ik zal die trim er eens inbouwen ( om die fout te vermijden )

Toevoeging op 18/04/2012 20:18:03:

ik kon niet echt de functie achterhalen ( ik dacht iets van alle tekens omzetten naar spatie )
 
Mebus  Hackintosh

Mebus Hackintosh

18/04/2012 20:19:51
Quote Anchor link
Dat doet nl2br. Ik had anders verder ook niet duidelijk gemaakt wat trim precies doet, dus mijn excuus.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.