---
title: "word ban"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/147055-word-ban"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "dea"
published: "2006-05-18T14:00:32.000Z"
updated: "2006-06-05T11:04:37.000Z"
replies: 21
views: 2476
page: 1
pages: 2
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/147055-word-ban"
---

# word ban

_Sida 1 av 2._

## #1 — dea, 2006-05-18T14:00Z

Hej, jag skulle vilja veta hur man gör en wordban funktion som säger:
om texten innehålller ordet viagra så skicka inte till databasen.

Just nu har jag en wordbanner som ser ut så här:

```php
$blocked_word = array ('viagra');
och
if(in_array($text, $blocked_word)) {
	die('Får inte skriva in de orden!');
}
```

och då om man skriver viagra + mer text så går det fram ändå.

Permalänk: https://www.webforum.nu/p/147055

## #2 — Sjodahl, 2006-05-18T14:49Z

Den kontrollerar väl bara ord i en array, inte i en text?

Permalänk: https://www.webforum.nu/p/1818264

## #3 — Pedda, 2006-05-18T16:05Z

```php
if( preg_match('~('. implode('|', $blocked_word) .')~i', $text) ) {
     echo 'Texten innehåller ett eller flera otillåtna ord.';
}
```

Permalänk: https://www.webforum.nu/p/1818290

## #4 — adamsdotter, 2006-05-30T08:10Z

:r

Permalänk: https://www.webforum.nu/p/1821569

## #5 — Pedda, 2006-05-30T08:19Z

> **adamsdotter skrev:**
>
> Vari php koden skall detta in? \*kan inget om php  :r \*

Laddade ner Åsas gästbok och gjorde ändringen åt dig. 
Har inte testat, men det bör fungera. Byt ut filen mot den du har på servern nu.

<http://member.webforum.nu/643/gastbok.rar>

Permalänk: https://www.webforum.nu/p/1821573

## #6 — adamsdotter, 2006-05-30T08:21Z

Grymt!! Tusen tack ska testa nu genast!

Permalänk: https://www.webforum.nu/p/1821574

## #7 — Pedda, 2006-05-30T08:29Z

Glömde skriva att på rad 24 har du variabeln med dom spärrade orden.
Den raden kan du flytta till setting.php om du vill. Kan ju vara bra att ha alla inställningar på samma ställe.

Raden ser ut så här nu:
$blocked_word = array ('viagra', 'poker');

Permalänk: https://www.webforum.nu/p/1821577

## #8 — adamsdotter, 2006-05-30T08:38Z

Testade, och det funkade! MEN, nu står det bara "Duplicate entry '127' for key 1" när man ska posta, dvs det går inte posta alls!

Permalänk: https://www.webforum.nu/p/1821580

## #9 — Pedda, 2006-05-30T08:50Z

Felet tyder på att hon använder tinyint på fältet i databasen för id
Gå till kontrollpanelen och ändra till int istället så funkar det.

Permalänk: https://www.webforum.nu/p/1821585

## #10 — adamsdotter, 2006-05-30T08:55Z

:r

Permalänk: https://www.webforum.nu/p/1821586

## #11 — Pedda, 2006-05-30T09:33Z

Nej. Webbhotellet har någon typ av kontrollpanel där du kan göra ändringar i mySQL.
En vanlig kontrollpanel som många använder är phpMyAdmin. Där ska du ändra fältet id's typ från tinyint till int.

Permalänk: https://www.webforum.nu/p/1821592

## #12 — adamsdotter, 2006-05-30T09:41Z

Yes! Det funkade!! Tack så mkt för din hjälp, återkommer imorgon om jag har fått mer spam! Tack igen!!

Permalänk: https://www.webforum.nu/p/1821596

## #13 — Pedda, 2006-05-30T09:47Z

Hoppas att det funkar. :)

Permalänk: https://www.webforum.nu/p/1821598

## #14 — adamsdotter, 2006-05-31T09:04Z

Det funkade - på viagran, idag har jag två nya =(

*\| Zocor Man    
Hi, 
omgod dis website has been really helpful for my research papaer...
it has got almost all da information i need...
well i wud luvvv 2 come bak here again if i getta anotha project on state!!! 

Buy drug zyban online
Buy generic xanax online
Side effects of generic zoloft drug
Generic Wellbutrin xl side effects 
Generic drug zocor side effects
Antibiotic zithromax side effects*  

bla bla bla bla bla Antar att det bara är att lägga in fler blockord, gör det och testar om det blir annat som kommer imorgon..

Permalänk: https://www.webforum.nu/p/1822007

## #15 — Pedda, 2006-05-31T09:08Z

Gör så. Vanliga ord verkar ju även vara drug och generic, så någon av dom verkar ju vara bra att banna.

Permalänk: https://www.webforum.nu/p/1822010

## #16 — Jerpa, 2006-05-31T09:51Z

> **adamsdotter skrev:**
>
> Testade, och det funkade! MEN, nu står det bara "Duplicate entry '127' for key 1" när man ska posta, dvs det går inte posta alls!

Det där har jag för mig beror på att på det sätt gästboken är skriven nu tar den bara emot ett visst antal inlägg. Raderar du några inlägg kan du lägga in fler men så som Pedda skrev så är det bara att fylla på med fler inlägg.

Permalänk: https://www.webforum.nu/p/1822029

## #17 — @nders, 2006-05-31T09:53Z

> **Jerpa skrev:**
>
> Det där har jag för mig beror på att på det sätt gästboken är skriven nu tar den bara emot ett visst antal inlägg. Raderar du några inlägg kan du lägga in fler men så som Pedda skrev så är det bara att fylla på med fler inlägg.

Nej, det stämmer inte. Pedda är spikhuvudspåslagare i [detta inlägg](http://www.webforum.nu/showthread.php?p=1199155#post1199155). Helt enkelt fel datatyp på fältet.

Hemskt många kassa script finns det att ladda hem. :)

Permalänk: https://www.webforum.nu/p/1822030

## #18 — Jerpa, 2006-05-31T10:07Z

Nej jag hade fel.. men frågan har varit uppe förut med samma svar: <http://www.webforum.nu/showthread.php?p=768709#post768709>

Permalänk: https://www.webforum.nu/p/1822031

## #19 — richardjoha, 2006-06-03T10:23Z

Hur ska jag göra för att även inkludera fältet $url, som ska förbjuda samma ord som $msg?

Har testat så här men får då endast upp "Array" som länk när det skrivs ett föbjudet ord..

if( preg_match('\~('. implode('\|', $blocked_word) .')\~i', $msg, $url) ) {
     echo 'Texten innehåller ett eller flera otillåtna ord.';
  } else {

Permalänk: https://www.webforum.nu/p/1826036

## #20 — Pedda, 2006-06-03T15:15Z

Du är nog tvungen att dela upp if-satsen

```php
if( preg_match('~('. implode('|', $blocked_word) .')~i', $text) || preg_match('~('. implode('|', $blocked_word) .')~i', $url )) {
```

Permalänk: https://www.webforum.nu/p/1826096

---

Tråden på webben: https://www.webforum.nu/amne/php/147055-word-ban  
Nästa sida: https://www.webforum.nu/amne/php/147055-word-ban/page2.md
