Forum » Server-Side scripting » Sql in href
Berichten: 894
avatar
Offline Stuur privebericht
Hoi leden van CP,

Ik heb een klein vraagje, ik het mogelijk om Sql uit te voeren in een hyperlink?

Zoja hoe zou dit dan moeten worden toegepast
Laatst gewijzigd door Jasper op 2011-03-24 21:05:27
24-03-2011 20:55
Dit topic is 305 keer bekeken door 45 verschillende leden
Reacties op: "Sql in href"
1 | 2 Volgende pagina
Berichten: 830
avatar
Offline Stuur privébericht
Hoe bedoelt u precies ?
24-03-2011 20:58
lvfeo = wijsheid
Berichten: 336
avatar
Offline Stuur privébericht
ja via php get tags
dus zoiets
http://www.voorbeeld.nl/iets.html?hoi=nieuwlid
en de pagina met php (iets.html):
Code | Selecteer Alles
minimaliseren
1
2
3
4
if($_GET['hoi'] == nieuwlid)
{
mysql_query("insert bla bla");
}
24-03-2011 20:59
Berichten: 894
avatar
Offline Stuur privébericht
zoals ismail zegt, dankjewel
24-03-2011 21:01
lvfeo = wijsheid
Berichten: 336
avatar
Offline Stuur privébericht
ps. je moet .htaccess maken als je .html extensie gebruikt.
Of je doet simpelweg een .php van maken dus .php?hoi=nieuwlid

opgelost?
zoja zet er een slotje op
24-03-2011 21:03
Berichten: 894
avatar
Offline Stuur privébericht
Het zijn allemaal php bestanden
24-03-2011 21:05
Webdeveloper & Programmeu
Berichten: 1000
avatar
Offline Stuur privébericht
Om eerlijk te zijn vind ik dit ook niet echt een heel net voorbeeld, ik kan zo een sql injectie sturen naar je en je site ligt down.

Je zou op meer dingen moet checken als je een $_GET gebruikt en verder is het wel echt nodig om die query daar uit voeren?
24-03-2011 22:57
Berichten: 894
avatar
Offline Stuur privébericht
Nou wat ik dus wil is dat als je op een link klikt je bericht verwijderd word uit de database.
25-03-2011 07:37
Berichten: 491
avatar
Offline Stuur privébericht
Wat ze ermee bedoelen. Als jij een ID ontvangt van een topic of een bericht via een $_GET.

Filter deze dan, bv door een (int) ervoor zodat er alleen getallen inkunnen komen.

of is_numeric. Dan controleer je of de string alleen nummers bevat.

Dit zijn kleine dingentjes waardoor er geen injecties mogelijk zijn in je DB.
25-03-2011 15:05
Berichten: 2123
avatar
Offline Stuur privébericht
@NielsB: Dat voorbeeld zit geen SQL-injection in...

@Extreme: Inderdaad, maar een voorbeeld lijk te wel nodig:

Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
7
8
<?php


if(isset($_GET['delete_id'])) {
   
mysql_query("DELETE FROM test WHERE id = "intval($_GET['id]));
}

?>


Vaak zou je niet willen dat een lid iets met ieder willekeurig ID kan verwijderen, maar ik weet niet hoe jouw situatie is.

Ps. Niet in iedere database tabel hoeft een ID te zitten! Maar dat is weer een andere kwestie.
25-03-2011 18:13
Rapifia Europe
Berichten: 3716
avatar
Offline Stuur privébericht
@Killingdevil,
Daarmee maak je toch alleen een mogelijk(e) INT van de input?
Je moet dan toch alsnog checken op een INT? Daarom zou ik het zo doen:
Code | Selecteer Alles
minimaliseren
1
2
3
4
5
6
<?php
// Aanroepen met script.php?delete_id={id}
if(isset($_GET['delete_id']) && is_numeric($_GET['delete_id'])){
   
mysql_query("DELETE FROM test WHERE id = ".intval($_GET['id']));
}
?>
25-03-2011 18:20
Reageer op: "Sql in href"
1 | 2 Volgende pagina
Je kan niet reageren omdat je niet bent ingelogd. Inloggen of Aanmelden