Hallo,
Kan ik om userinput via een formulier die wordt opgeslagen in een DB te beveiligen, volstaan met mysql_real_escape_string?
Nu:
$value = $_POST['value'];
Straks:
$value = mysql_real_escape_string($_POST['value']);
- PHP mysql_real_escape_string
-
13-07-2010, 12:33 #1
- Berichten
- 451
- Lid sinds
- 16 Jaar
PHP mysql_real_escape_string
-
In de schijnwerper
Lokale links uit je regio/stad | Blogs - Regionale bekendheid & Sterke linksOverige dealsLinkvada.com Linkbuilding Platform: Direct Linkbuilden op 77.000+ premium domeinenLinkpartnersOpzoek naar extra werkzaamheden tarief -> €18,50 per uurFreelance / WerkProduct feed grid V1.7 - Creer een affiliate shop in 2 min - WP plugin - V1.7 NU LIVEPHP scripts -
13-07-2010, 12:36 #2gast19806 Guest
Voor zover ik weet wel ja.
-
13-07-2010, 12:37 #3
- Berichten
- 1.001
- Lid sinds
- 17 Jaar
-
13-07-2010, 12:38 #4
- Berichten
- 203
- Lid sinds
- 16 Jaar
Je kan om meerdere manieren beveiligen,
als je iets opslaat in de database gebruik je altijd mysql_real_escape_string.
In dit geval zou je ook nog kunnen controleren wat erin komt, als je bijvoorbeeld alleen cijfers wilt:
PHP Code:<?php
if(ctype_digit($_POST['value'])){
// ... bekijk php.net voor meer ctype types
}
?>
gebruik je meestal htmlspecialchars(), maar dit moet je pas doen als je het uit de database haalt.
PHP Code:<?php
htmlspecialchars($value);
?>Laatst aangepast door RubenP : 13-07-2010 om 12:47
-
13-07-2010, 12:40 #5
- Berichten
- 451
- Lid sinds
- 16 Jaar
Deze had ik idd gevonden en hier mn info ook uitgehaald, ik wist alleen niet of ik het goed toepaste. Voordat ik alle formulieren fout aan ga passen :-)
-
15-07-2010, 01:27 #6
- Berichten
- 491
- Lid sinds
- 17 Jaar
ALTIJD mysql_real_escape_string! nooit zonder, of addslashes, alleen mysql_real_escape_string is echt veilig! Daarnaast kan je ook nog dit doen:
if ( $_SERVER['REQUEST_METHOD'] == 'POST' &&
isset($_POST['string'], $_POST['string2']))
{
ter beveiliging van het uitvoeren van het script door bots
-
15-07-2010, 14:55 #7
- Berichten
- 750
- Lid sinds
- 15 Jaar
Veilige web applicaties heb je zelf in de hand.
Standaard geen invoer van de gebruiker vertrouwen zelfs de $_SERVER array niet, heeft wat waardes die je niet kan vertrouwen aangezien die veranderd kunnen worden door gebruikers.
Verder moet je nog oppassen met session riding, cross site scripting en remote php includes.
-
15-07-2010, 15:03 #8
- Berichten
- 289
- Lid sinds
- 16 Jaar
Of je stapt gewoon over naar PDO, hoef je ook geen mysql_real_escape_string(); te gebruiken. En handig voor als je naar een andere type database overstapt. Hoef je alleen de Query aan te passen i.p.v. code te moeten herschrijven.
Tags voor dit bericht
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic