Stoppa svordomarna!

PHP

14 svar · 517 visningar · startad av Matti

Medlem sedan dec. 19996 592 inlägg
Trådstart#1

Jag igen :e

Jag hade tänkt att cencurera alla svordomar med *piip* eftersom jag har kompisar som svär mycket.. men iaf, går det göra så att jag skriver in alla svordomar i tex. "svordom.txt", och när sedan någon skriver ett meddelande kollar skriptet om något av orden i "svordom.txt" matchar något av orden i $meddelande, om det gör det så byter det ut det ordet mot "*piip*". Går det?

Det blir nämligen lite jobbigt att skriva

$meddelande = ereg_replace("cp","*piip*",$meddelande);

För varje fult ord..

Tack på förhand, igen =)

Medlem sedan mars 200016 inlägg
#2

Jag funderar på ifall det inte borde gå att ta en titt i ett script till mIRC, till dom brukar det finnas "Bad Word kick" =) mircen bygger juh på textbaserade inställningar med variabler och annat kul.. Så, det borde gå att titta i ett sånt, å använda samma princip :)

Men hur man gör har jag inte en aning alls om.. Kanske är en bra ledtråd bara :)

Medlem sedan dec. 19996 592 inlägg
#3

gjorde ett l337 script till mIRC en gång.. nuka o flooda kunde den :P hade skydd mot alls sorters flood, .. netbus hade den också.. och grymma slaps ;D

/me shoots G_Force in the leg with a pistol :P

ne.. hehe :D

/ [MK] @ IRCnet

Medlem sedan dec. 19991 749 inlägg
#4

Skulle det inte gå om du bygger upp array med alla ord (som du plockar från t.ex. en databas) och sedan för en loop som kollar om varje ord finns med och i annat fall ersätter aktuella ord?

Vet inte om detta är den bästa lösningen men iaf det jag tänka ut på rak arm.

Medlem sedan dec. 19996 592 inlägg
#5

tja..

Nanne, det skulle säkert gå men jag har ingen aning om hur man gör ;)

Medlem sedan dec. 19991 749 inlägg
#6

Såhär kanske? Jag har ingen aning...;)

$result=mysql_query("SELECT ord FROM svordomar");

while($r=mysql_fetch_array($result)){
$meddelande=ereg_replace($r[ord],"*piip*",$meddelande);
}

Det roliga med denna är ju att du kan i databasen ha ett ord som ska ersätta svordommen. Kan vara kul om man vill förvåna den som svär och gormar :)

$result=mysql_query("SELECT ord,annatord FROM svordomar");

while($r=mysql_fetch_array($result)){
$meddelande=ereg_replace($r[ord],$r[annatord],$meddelande);
}

Medlem sedan dec. 19996 592 inlägg
#7

glömde säga.. mysql fungerar inte på min server :(

Medlem sedan dec. 19991 749 inlägg
#8

Va? Vad är det för webhotell. Att köra PHP utan mysql är ju som att köra en porche i 90km/tim på autobahn.

Medlem sedan dec. 19996 592 inlägg
#9

Nanne, om du löser det här:
http://cgi.webforum.nu/wf/Forum12/HTML/000024.html

kan jag köra mysql på servern ;)

Medlem sedan dec. 19991 749 inlägg
#10

hmmm... mitt förslag är att göra en windows ;) installera om PHP och mySQL

Medlem sedan dec. 19996 592 inlägg
#11

Tror inte tompaah orkar göra en "windows"..

eller?

Medlem sedan feb. 20001 270 inlägg
#12

Matti
Detta borde vara lösningen på din fråga!

<?
  $fp = fopen("svordommar.txt","r");
  $i=0;
  while($s=fgets($fp,1000)){
    $s=explode("\t",$s);
    $s[0]=trim($s[0]);
    if(strlen(strstr($meddelande,$s[0]))>0){
      $meddelande=ereg_replace($s[0],"*piip*",$meddelande);
    }
    $i++;
  }
  fclose($fp);
?>

Orden skriver du sedan in i filen svordommar.txt med ett ord på varje rad..

Medlem sedan dec. 19996 592 inlägg
#13

yes yes yes!

hehe, du är grymmast Woodi!

Tack! :e Fungerar perfekt :)

Medlem sedan dec. 19991 749 inlägg
#14

Tycker ändå att min databaslösning var ballare. Men har man inte databas så har man inte det.

Medlem sedan feb. 20001 270 inlägg
#15

Matti
Det vet Du! ;)

Nanne
Din databas lösning är givetvis bra den med, men i detta fall när inte en databas kunde användas så är filhanteringen behövlig!

Dessutom tror jag att filfunktionen är lite snabbare än databas hanteringen.. Rätt eller fel!?

256 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)