Registreer FAQ Berichten van vandaag


Ga terug   Scholieren.com forum / Technologie / Software & Hardware
Reageren
 
Topictools Zoek in deze topic
Oud 01-08-2003, 16:21
Megadeth
Avatar van Megadeth
Megadeth is offline
Hey,

Zouden de echte PHP kenners eens hun mening over het script willen geven?

PHP-code:
<?

//verbinding maken met db

$user = ("****");
$pass = ('********");
$host = ("localhost");
$db = ("ipcheck");

mysql_connect($host, $user, $pass);
mysql_select_db($db);

//vars

$ip = array('192.168.0.2');
$host = gethostbyaddr($_SERVER['REMOTE_ADDR']);
$tijd = date("H:i");
$date = date ("d-m-Y");

//Checken of ip in DB bestaat

$ip2 = mysql_query("SELECT * FROM ip where ip ='".$_SERVER['REMOTE_ADDR']."'") or die (mysql_error());
$tel = mysql_num_rows($ip2);
if($tel == 0) {
    $insert1 = mysql_query("INSERT into ip (ip, host, datum, tijd) VALUES ('".$_SERVER['REMOTE_ADDR']."', '".$host."', '".$date."', '".$tijd."')") or die (mysql_error());
}else{
    $insert1 = mysql_query("INSERT into ip (ip, host, datum, tijd) VALUES ('".$_SERVER['REMOTE_ADDR']."', '".$host."', '".$date."', '".$tijd."')") or die (mysql_error());
}

//Ip check

if(in_array($_SERVER['REMOTE_ADDR'],$ip)) {
    echo "Je wordt over 5 seconden doorgestuurd naar de juiste map :P";
    echo "<meta http-equiv=\"Refresh\" content=\"5;url=./1dsadf_22@_+)/\">";

}else{

    echo "Erm, jou ip staat niet in het lijstje 'toegang tot de webserver' dus ik snap niet wat je hier doet?<br><br>";
    echo "Even een aantal gegevens van je (die worden opgeslagen in de database en voor iedereen te zien is) :<br><br>";
    echo "<b>Ip</b> : ".$_SERVER['REMOTE_ADDR']."<br>";
    echo "<b>Hostname</b> : ".$host."<br>";
    echo "<b>Datum</b> : ".$date."<br>";
    echo "<b>Tijd</b> : ".$tijd."<br><br>";
    echo "<b>Ben jij er ff gloeiend bij!</b><br><br>";

    echo "<hr><center><font size=\"2\" face=\"verdana\">Mensen die je voor gingen :<hr>";
    echo "<table width=\"500\" align=\"center\" border=\"1\" bordercolor=\"#000000\" cellpadding=\"3\" style=\"border-collapse: collapse; border:1px; font-family: verdana; font-size: 12\">";
    echo "<tr>";
    echo "<td align=\"center\">IP adres</td>";
    echo "<td align=\"center\">Hostname</td>";
    echo "<td align=\"center\">Datum</td>";
    echo "<td align=\"center\">Tijd</td>";
    echo "</tr>";
    $select = mysql_query("SELECT * FROM ip ORDER BY `id` DESC  LIMIT 0 , 10 ") or die (mysql_error());
    while($lees = mysql_fetch_object($select)) {
    echo "<tr>";
    echo "<td align=\"center\">".$lees->ip."</td>";
    echo "<td align=\"center\">".$lees->host."</td>";
    echo "<td align=\"center\">".$lees->datum."</td>";
    echo "<td align=\"center\">".$lees->tijd."</td>";
    echo "</tr>";
        
    }

echo "</table>";
echo "<hr>Laatste 10 bezoekjes..<hr>";

    
}
Ik wil graag weten of ik zo een beetje netjes script en zo niet wat ik dan fout doe.

Tnx

Oh ja.. dat stukje met $tel enz dat moet nog ff een andere query worden maar goed het gaat om het idee.. als ip bestaat dan..
__________________
What you put me through, fucking wooptiedoo.
Met citaat reageren
Advertentie
Oud 01-08-2003, 16:27
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Ziet er prima uit lijkt me. Ik zou wel alle strings variabelen die je in een query gebruikt voor de zekerheid escapen.

Dus niet
$insert1 = mysql_query("INSERT into ip (ip, host, datum, tijd) VALUES ('".$_SERVER['REMOTE_ADDR']."'

Maar:
$insert1 = mysql_query("INSERT into ip (ip, host, datum, tijd) VALUES ('".mysql_escape_string($_SERVER['REMOTE_ADDR'])."'

Nu zal het met REMOTE_ADDR niet veel uitmaken, maar het is een goede gewoonte om dit altijd te doen. En als iets een nummer is kun je een type cast doen:

(int)$variabele is altijd een integer dan
'667blaaah' wordt '667' integer dus.
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 01-08-2003, 16:29
Tofke_H
Avatar van Tofke_H
Tofke_H is offline
Ik ben geen PHP-kenner. Nouja, der zullen er zeker zijn die het veel beter kunnen dan mij. Maar ik heb een stukje van je code hieronder gezet zoals ik het doe met de echo" "; Ik weet niet of dat netter is, misschien zelfs slechter... zullen we wel zien aan de reactie's van de PHP-kenners

PHP-code:
echo "<tr>
          <td align=\"center\">"
.$lees->ip."</td>
          <td align=\"center\">"
.$lees->host."</td>
          <td align=\"center\">"
.$lees->datum."</td>
          <td align=\"center\">"
.$lees->tijd."</td>
          </tr>
"

__________________
Liefde: Het pokerspel van het Leven. Je begint met een paar en je eindigt met een full house.
Met citaat reageren
Oud 01-08-2003, 16:42
Enlightenment
Avatar van Enlightenment
Enlightenment is offline
Resultaat is hetzelfde, alleen wat overzichtelijkere code.

Je kunt ook een PHP escape gebruiken:

Code:
?>
<tr>
 <td align=\"center\"><?=$lees->ip?></td>
 <td align=\"center\"><?=$lees->host?></td>
 <td align=\"center\"><?=$lees->datum?></td>
 <td align=\"center\"><?=$lees->tijd?></td>
</tr>
<?
__________________
Per undas adversas (tegen de stroom in)
Met citaat reageren
Oud 01-08-2003, 17:55
Tofke_H
Avatar van Tofke_H
Tofke_H is offline
Citaat:
Enlightenment schreef op 01-08-2003 @ 17:42:
Resultaat is hetzelfde, alleen wat overzichtelijkere code.
Daarvoor doe ik het
__________________
Liefde: Het pokerspel van het Leven. Je begint met een paar en je eindigt met een full house.
Met citaat reageren
Oud 01-08-2003, 18:55
Verwijderd
Citaat:
Tofke_H schreef op 01-08-2003 @ 17:29:
Ik ben geen PHP-kenner. Nouja, der zullen er zeker zijn die het veel beter kunnen dan mij. Maar ik heb een stukje van je code hieronder gezet zoals ik het doe met de echo" "; Ik weet niet of dat netter is, misschien zelfs slechter... zullen we wel zien aan de reactie's van de PHP-kenners
*knip*
Als je het op die manier doet, kun je beter enkele quotes gebruiken. Een string met dubbele quotes wordt nameljik geintrepeteerd door de parser (PHP in dit geval)
Met citaat reageren
Oud 04-08-2003, 19:07
Megadeth
Avatar van Megadeth
Megadeth is offline
Citaat:
Enlightenment schreef op 01-08-2003 @ 17:27:
Ziet er prima uit lijkt me. Ik zou wel alle strings variabelen die je in een query gebruikt voor de zekerheid escapen.

Dus niet
$insert1 = mysql_query("INSERT into ip (ip, host, datum, tijd) VALUES ('".$_SERVER['REMOTE_ADDR']."'

Maar:
$insert1 = mysql_query("INSERT into ip (ip, host, datum, tijd) VALUES ('".mysql_escape_string($_SERVER['REMOTE_ADDR'])."'

Nu zal het met REMOTE_ADDR niet veel uitmaken, maar het is een goede gewoonte om dit altijd te doen. En als iets een nummer is kun je een type cast doen:

(int)$variabele is altijd een integer dan
'667blaaah' wordt '667' integer dus.
Ik zal het onthouden voor een volgend script Veiligheid voor alles

Tofke_H -> Die manier is idd wel overzichtelijker en scheelt weer wat typen qua echo's enzo

Enlightenment -> Die manier van scripten deed ik toen ik voor het eerst een PHP script maakte.. ik vind het minder overzichtelijk maar dat verschilt natuurlijk per persoon

Tnx allen
__________________
What you put me through, fucking wooptiedoo.
Met citaat reageren
Oud 05-08-2003, 00:48
Manuzhai
Avatar van Manuzhai
Manuzhai is offline
Overigens is

PHP-code:
$user = ("gebruiker"); 
natuurlijk pure poep. Het werkt wel, maar die haakjes slaan nergens op.

En misschien is het ook niet zo netjes om zomaar de IP's van bezoekers aan Jan en alleman te laten zien.
__________________
Slechts beschikbaar via naamzoek/privebericht.
Met citaat reageren
Oud 05-08-2003, 10:03
Megadeth
Avatar van Megadeth
Megadeth is offline
Citaat:
Manuzhai schreef op 05-08-2003 @ 01:48:
Overigens is

PHP-code:
$user = ("gebruiker"); 
natuurlijk pure poep. Het werkt wel, maar die haakjes slaan nergens op.

En misschien is het ook niet zo netjes om zomaar de IP's van bezoekers aan Jan en alleman te laten zien.
Mja snap eigenlijk ook niet waarom ik dat deed.. doe het normaal altijd gewoon ""

En het zijn niet echt bezoekers maar gewoon mensen die mijn adres per toeval gevonden hebben (kijk maar es op http://breezer.dyndns.org <-- ip word wel opgeslagen..) ik gebruik het puur en alleen om mensen dingen te laten downloaden (who needs ftp anyway ) en pics op forums te zetten
__________________
What you put me through, fucking wooptiedoo.
Met citaat reageren
Advertentie
Reageren


Regels voor berichten
Je mag geen nieuwe topics starten
Je mag niet reageren op berichten
Je mag geen bijlagen versturen
Je mag niet je berichten bewerken

BB code is Aan
Smileys zijn Aan
[IMG]-code is Aan
HTML-code is Uit

Spring naar

Soortgelijke topics
Forum Topic Reacties Laatste bericht
Software & Hardware [PHP] login check
mboy
17 12-11-2004 17:13
Software & Hardware [PHP] Cookies checken met database
mboy
8 09-11-2004 10:23
Software & Hardware [PHP] Statistiekenscript
Martin
7 22-12-2003 11:23
Software & Hardware [PHP & MAIL] Error 503
dd666
7 28-09-2003 11:08
Software & Hardware [PHP] Poll
Dr_KlawChi
5 05-01-2003 17:54
Software & Hardware mail 2 savedir..
Verwijderd
31 26-02-2002 16:17


Alle tijden zijn GMT +1. Het is nu 22:11.