array vraagje
Edit:
Het is al gelukt..... bedankt nog
Het is al gelukt..... bedankt nog
Dag mensen,
Ik wil een klein "spamfiltertje" plaatsen en een site
en wil dat doen via een array...
dit is de array
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<?php
$spam = array(
'4u',
'adipex',
'advicer',
'baccarrat',
'blackjack',
'bllogspot',
'booker',
'byob',
'car-rental-e-site',
'car-renewals-e-site',
'carisoprodol',
'casino',
'casinos',
'chatroom',
'cialis',
'coolcoolhu',
'coolhu',
'credit-card-debt',
'credit-report-4u',
'cwas',
'cyclen',
'cyclobenzaprine',
'dating-e-site',
'day-trading',
'debt-consolidation',
'debt-consolidation-consultant',
'discreetordering',
'duty-free',
'dutyfree',
'equityloans',
'fioricet',
'flowers-leading-site',
'freenet-shopping',
'freenet',
'gambling',
'hair-loss',
'health-insurancedeals-4u',
'homeequityloans',
'homefinance',
'holdem',
'holdempoker',
'holdemsoftware',
'holdemtexasturbowilson',
'hotel-dealse-site',
'hotele-site',
'hotelse-site',
'incest',
'insurance-quotesdeals-4u',
'insurancedeals-4u',
'jrcreations',
'levitra',
'macinstruct',
'mortgage-4-u',
'mortgagequotes',
'online-gambling',
'onlinegambling-4u',
'ottawavalleyag',
'ownsthis',
'palm-texas-holdem-game',
'paxil',
'penis',
'pharmacy',
'phentermine',
'poker-chip',
'poze',
'pussy',
'rental-car-e-site',
'ringtones',
'roulette',
'shemale',
'shoes',
'slot-machine',
'texas-holdem',
'thorcarlson',
'top-site',
'top-e-site',
'tramadol',
'trim-spa',
'ultram',
'valeofglamorganconservatives',
'viagra',
'vioxx',
'xanax',
'zolus');
//mijn geposte veld is $_POST['berichtveld']
?>
$spam = array(
'4u',
'adipex',
'advicer',
'baccarrat',
'blackjack',
'bllogspot',
'booker',
'byob',
'car-rental-e-site',
'car-renewals-e-site',
'carisoprodol',
'casino',
'casinos',
'chatroom',
'cialis',
'coolcoolhu',
'coolhu',
'credit-card-debt',
'credit-report-4u',
'cwas',
'cyclen',
'cyclobenzaprine',
'dating-e-site',
'day-trading',
'debt-consolidation',
'debt-consolidation-consultant',
'discreetordering',
'duty-free',
'dutyfree',
'equityloans',
'fioricet',
'flowers-leading-site',
'freenet-shopping',
'freenet',
'gambling',
'hair-loss',
'health-insurancedeals-4u',
'homeequityloans',
'homefinance',
'holdem',
'holdempoker',
'holdemsoftware',
'holdemtexasturbowilson',
'hotel-dealse-site',
'hotele-site',
'hotelse-site',
'incest',
'insurance-quotesdeals-4u',
'insurancedeals-4u',
'jrcreations',
'levitra',
'macinstruct',
'mortgage-4-u',
'mortgagequotes',
'online-gambling',
'onlinegambling-4u',
'ottawavalleyag',
'ownsthis',
'palm-texas-holdem-game',
'paxil',
'penis',
'pharmacy',
'phentermine',
'poker-chip',
'poze',
'pussy',
'rental-car-e-site',
'ringtones',
'roulette',
'shemale',
'shoes',
'slot-machine',
'texas-holdem',
'thorcarlson',
'top-site',
'top-e-site',
'tramadol',
'trim-spa',
'ultram',
'valeofglamorganconservatives',
'viagra',
'vioxx',
'xanax',
'zolus');
//mijn geposte veld is $_POST['berichtveld']
?>
moet ik nu hiervoor de
gebruiken of moet dat anders ?
Kan iemand mij een zetje geven
bedankt
Gewijzigd op 01/01/1970 01:00:00 door Beezz
http://www.sitemasters.be/?pagina=scripts/scripts&cat=17&id=410
Je kan nu kiezen dat woord te veranderen in bv. ***, of het gewoon afkappen.
Ik ben hier geen held in.
preg_match()
Edit
Hoe heb je het dan opgelost? Handig voor andere.
Je kan nu kiezen dat woord te veranderen in bv. ***, of het gewoon afkappen.
Ik ben hier geen held in.
preg_match()
Edit
Hoe heb je het dan opgelost? Handig voor andere.
Gewijzigd op 01/01/1970 01:00:00 door Dennis Mertens
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
if(preg_match($_POST['orderinfo'], $spam) >= 1)
{
echo 'Je probeert te spammen';
}
else
{
//post
}
?>
if(preg_match($_POST['orderinfo'], $spam) >= 1)
{
echo 'Je probeert te spammen';
}
else
{
//post
}
?>
Ik weet niet of dit werkt dit is ff snel uit mijn hoofd.
Jurgen schreef op 13.01.2009 10:11:
Ik weet niet of dit werkt dit is ff snel uit mijn hoofd.
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
<?php
if(preg_match($_POST['orderinfo'], $spam) >= 1)
{
echo 'Je probeert te spammen';
}
else
{
//post
}
?>
if(preg_match($_POST['orderinfo'], $spam) >= 1)
{
echo 'Je probeert te spammen';
}
else
{
//post
}
?>
Ik weet niet of dit werkt dit is ff snel uit mijn hoofd.
nope:
int preg_match ( string $pattern , string $subject )
2 maal een string.
als je wilt preg matchen kan je een loop maken
Code (php)
Bovenstaand is niet netjes nog, maar het idee mogen duidelijk zijn.
Ook kan je een array_walk() gebruiken, doch is die langzamer.
Dennis Mertens schreef op 13.01.2009 10:36:
Of combineren met array_filter() ;)
Uit eindelijk doe je dan hetzelfde zoals je doet met de for-loop.
Uit eindelijk doe je dan hetzelfde zoals je doet met de for-loop.
En als de array_walk(), alleen gooit array_filter() een setje arrays terug, die beez denk ik niet nodig heeft, en is het langzamer dan een for loop. zie post #2 hier
Ik zit nu net even de boel te testen en kom erachter dat de if(in_array()) niet afdoende is omdat nu al het geposte in het berichtveld wordt (naar mijn idee) gezien als 1 geheel.. Dus als ik in een zin het woord xanax zet dan ziet de in_array het niet...
Kan ik daarvoor de preg_match functie gebruiken en is het beter een array_walk() daarvoor te gebruiken.
Edit:
Nu ik dit net aan het typen zie ik dat het nergens op slaat... Ik moet niet de array controleren maar de $_POST['berichtveld']......
Bedankt alvast voor de reacties.....
Bedankt alvast voor de reacties.....
Gewijzigd op 01/01/1970 01:00:00 door Beezz