mysql_real_escape_string toepassen
Op iedere echo of alleen als je iets uit de database haalt of alleen als je iets in de database opslaat.
is dit bijvoorbeeld goed gescript?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
$naam = mysql_real_escape_string($_POST['naam']);
$gebruikersnaam = mysql_real_escape_string($_POST['gebruikersnaam']);
$email = mysql_real_escape_string($_POST['email']);
$wachtwoord = mysql_real_escape_string($_POST['wachtwoord']);
$wachtwoord2 = mysql_real_escape_string($_POST['wachtwoord']);
$geslacht = mysql_real_escape_string($_POST['geslacht']);
$leeftijd = mysql_real_escape_string($_POST['leeftijd']);
$type = mysql_real_escape_string($_POST['type']);
$spirit = mysql_real_escape_string($_POST['spirit']);
$landcode = mysql_real_escape_string($_POST['landcode']);
$telefoon = mysql_real_escape_string($_POST['telefoon']);
en is dit goed opgeslagen via een inert into?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
mysql_query("bla bla bla je kent het wel"(blablabla)
values(
'".mysql_real_escape_string($data['id'])."',
'".mysql_real_escape_string($naam)."',
'".mysql_real_escape_string($lv)."',
'".mysql_real_escape_string($aanval)."',
'".mysql_real_escape_string($verdediging)."',
'".mysql_real_escape_string($snelheid)."',
'".mysql_real_escape_string($monster_item)."',
'".mysql_real_escape_string($type)."',
'".mysql_real_escape_string($monster['id'])."',
'".mysql_real_escape_string($lvup)."',
'".mysql_real_escape_string($gevangendoor)."',
'Niet zeldzaam'
)");
values(
'".mysql_real_escape_string($data['id'])."',
'".mysql_real_escape_string($naam)."',
'".mysql_real_escape_string($lv)."',
'".mysql_real_escape_string($aanval)."',
'".mysql_real_escape_string($verdediging)."',
'".mysql_real_escape_string($snelheid)."',
'".mysql_real_escape_string($monster_item)."',
'".mysql_real_escape_string($type)."',
'".mysql_real_escape_string($monster['id'])."',
'".mysql_real_escape_string($lvup)."',
'".mysql_real_escape_string($gevangendoor)."',
'Niet zeldzaam'
)");
Gewijzigd op 17/07/2012 13:22:38 door Eeyk Vd noot
Gewijzigd op 17/07/2012 13:29:29 door - Ariën -
Overigens dient er ook nog bij gezegd te worden dan mysql_real_escape_string alleen te gebruiken is bij het gebruik van de mysql_ functies. Gebruikt je PDO of mysqli (allebei aan te raden boven mysql_) dan kan je gebruik maken van prepared statements wat op zich al beter is.
Ze zijn alleen voor de database en dus altijd alleen binnen QUERIES gebruiken. En op ELKE variabele die je in die queries stopt gebruik je hem, vertrouw nooit een waarde van een variabele, ook al kan je er alleen zelf bij.
en niet op iedere echo?
dus bijvoorbeeld
dat hoef dus niet zo :
Een banaan schil je immers ook niet met een dunschiller ;-)
Gewijzigd op 17/07/2012 13:46:01 door - Ariën -
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
$pascodatiecook = base64_encode(md5(md5(md5($salt_keyhash.$_POST['pass'].$cookie_ultra_hash))));
extra_cookie_hashing($pascodatiecook.$random_passwordhash);
$naamcodatielos = base64_encode($_POST['login']);
setcookie("pocketmonsters_gebruikersnaam" ,$naamcodatielos, time() + 3600 * 124,"/","pocketmonsters.nl");
setcookie("pocketmonsters_passhash_security" ,$pascodatiecook, time() + 3600 * 124,"/","pocketmonsters.nl");
setcookie("pocketmonsters_onthouden_security",$_POST['cookies'], time() + 3600 * 124,"/","pocketmonsters.nl");
}
extra_cookie_hashing($pascodatiecook.$random_passwordhash);
$naamcodatielos = base64_encode($_POST['login']);
setcookie("pocketmonsters_gebruikersnaam" ,$naamcodatielos, time() + 3600 * 124,"/","pocketmonsters.nl");
setcookie("pocketmonsters_passhash_security" ,$pascodatiecook, time() + 3600 * 124,"/","pocketmonsters.nl");
setcookie("pocketmonsters_onthouden_security",$_POST['cookies'], time() + 3600 * 124,"/","pocketmonsters.nl");
}
Hoe doe ik eigenlijk op phphulp code met kleurtjes van php toepassen?
Gewijzigd op 17/07/2012 13:53:19 door Eeyk Vd noot
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?php
$pascodatiecook = base64_encode(md5(md5(md5($salt_keyhash.$_POST['pass'].$cookie_ultra_hash))));
extra_cookie_hashing($pascodatiecook.$random_passwordhash);
$naamcodatielos = base64_encode($_POST['login']);
setcookie("pocketmonsters_gebruikersnaam" ,$naamcodatielos, time() + 3600 * 124,"/","pocketmonsters.nl");
setcookie("pocketmonsters_passhash_security" ,$pascodatiecook, time() + 3600 * 124,"/","pocketmonsters.nl");
setcookie("pocketmonsters_onthouden_security",$_POST['cookies'], time() + 3600 * 124,"/","pocketmonsters.nl");
}
?>
$pascodatiecook = base64_encode(md5(md5(md5($salt_keyhash.$_POST['pass'].$cookie_ultra_hash))));
extra_cookie_hashing($pascodatiecook.$random_passwordhash);
$naamcodatielos = base64_encode($_POST['login']);
setcookie("pocketmonsters_gebruikersnaam" ,$naamcodatielos, time() + 3600 * 124,"/","pocketmonsters.nl");
setcookie("pocketmonsters_passhash_security" ,$pascodatiecook, time() + 3600 * 124,"/","pocketmonsters.nl");
setcookie("pocketmonsters_onthouden_security",$_POST['cookies'], time() + 3600 * 124,"/","pocketmonsters.nl");
}
?>
tussen php-tag open en php-tag sluiten..
Eeyk Vd noot op 17/07/2012 13:42:17:
alleen in de mysql_query en de $_POST en $_GET waardes toepassen?
en niet op iedere echo?
en niet op iedere echo?
Bij het genereren van de sql string moet je ze gebebruiken, rond de $_POST en $_GET waardes.
Niet om te echo'en, niet om coockies te maken, ...
Wel bij dingen als
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
$res = mysql_query("SELECT username
FROM users
WHERE email = '" . mysql_real_escape_string($_POST['email']) . "'
");
...
?>
$res = mysql_query("SELECT username
FROM users
WHERE email = '" . mysql_real_escape_string($_POST['email']) . "'
");
...
?>
Wat die kleuren betreft:
Als je php-code hebt, zet je die tussen <?php en ?>.
Gewijzigd op 17/07/2012 14:04:54 door Kris Peeters
oké bedankt voor jullie hulp :)