webForumDet fria alternativet

Formulär som lägger in spamord i databasen

ASP

7 svar · 1 507 visningar · startad av brorsan

Medlem sedan nov. 2001402 inlägg
Frågan#1

Det finns nog någon liknande fråga men när jag sökte på "formulär" hittade jag inget och jag vet inte vad denna sortens inläsning kan kallas så vet inte vad jag ska söka på.

Jag har en lång lista med spamord, hundratals, och får nya allteftersom tiden går. Jag vill då enkelt kunna lägga in dessa listor i med ett fåtal knapptryckningar, alltså klistra in alltihop separarerat med radbrytningar i ett formulär och klicka send.

Då vill jag att varje rad ska läggas i en mysql-databas i fältet spam i tabellen spammer. Vill att varje ord får ett nytt id/ny tabellrad i databasen. Spamfiltret jämför sen alla foruminlägg med de här spamfraserna och skippar inlägg som innehåller dem. Den koden är klar redan.

Någon som vet hur jag ska söka på forumet för att hitta formulärkoden för att läsa in orden i databasen. Eller som vet hur koden ser ut?

Den bör också vara case sensitive, vet inte om det är standard. Men om det står ComPuters eller Party Rental bör det läggas in så i databasen.

colchicine
doxepin
moxifloxacin
mg-tablet
pilocarpine
selsun-salon-shampoo
citalopram
antithrombin
maxalt
valcyte
there are playing mahjong
Yangluo . thank
Liu Guijun found
digitalis
numedezeggenschap.
forexsignalsafe.
europedirectarad.
tuneswingers.
djadamant.
polacy24.pl
atomicfoto.com
apetito.org
jornadasmusulmanocristianas.es
oaa.me
davesviplist.com
yillar.net
sinobuy.cn

Medlem sedan nov. 2001402 inlägg
#2

Lägger in detta i första inlägget.

Medlem sedan nov. 2001402 inlägg
#3

Jag har försökt sätta ihop kod själv själv men skulle bara behöva veta hur man säger åt koden att läsa en rad i taget och om man ska skriva strRowword.eof som jag gjort i koden?

Sen kommer ju meddelandet kunna innehålla rader som ">? och liknande biter av koder. Ställer det till problem eller fungerar det?

Är sån här inskrivning till databasen case sensitive som default eller behöver man skriva till något för det?

Nån som vet?


Message = Request.Form("message")
Message = replace(Message, "'", "''")
if Message <> "" then

dim strRownumbertoread

strRownumbertoread = 1

dim strRowword

strRowword = ***?? läs_in_med_nummer_strRownumbertoread_hur_gor_man

do Until strRowword.eof ***?? kan man skriva så

Connect.Execute "INSERT INTO spammertable (spamfield) VALUES ('"& strRowword &"')",,128

strRownumbertoread = strRownumbertoread + 1

Loop

	
Set strRownumbertoread = nothing
Set strRowword = nothing
Medlem sedan nov. 2001402 inlägg
#4

Ingen som vet? Trodde det var en vanlig grej att lägga in listor i databaser.

Medlem sedan juni 2009920 inlägg
#5

Till att börja med, ASP? Lite gammalt...
En snabb googling ger mycket
http://www.google.se/search?q=asp+insert+into+database&ie=UTF-8&oe=UTF-8&hl=sv&client=safari

Medlem sedan nov. 2001402 inlägg
#6

Tack för svar!

Ja jag har en "gammal" och kodmässigt stor asp-sida och det känns synd att kasta bort den för det ligger tusentals uppladdade bilder i den från en era som inga andra sidor har så många såna svenska bilder ifrån så den är lite som ett bildgallerimuseum inom sin nisch. Samtidigt finns det inget ekonomiskt intresse i den så att göra om allt vore en stor förlustaffär och bortkastad tid eftersom den fungerar tillräckligt bra som den är.

Googlesökningen visade ju inte riktigt den sortens funktion som det handlar om här, att läsa in rad för rad från fältet och lägga varje rad i en ny post i databasen. Men det är klart att jag kan ändra i sökorden och leta vidare..

Men det tipset att googla fungerar ju i så fall i varje post i hela webforum.nu så då kan man ju ska stänga webforum.nu och bara göra en startsida som hänvisar till google enligt den logiken. Sparar en massa modereringstid. ;)

Medlem sedan dec. 2009872 inlägg
#7

Det är inget fel på ASP!
Det fungerar alldeles utmärkt, om än med vissa begränsningar.
Jag har själv sidor som rullat i 10 år och som mer eller mindre uppdaterar sig själva med hjälp av ASP...

***
Hur som helst.
Jag tyckte det verkade vara en intressant fråga och tänkte man kan räkna antalet radbrytningar.

Detta fungerar:

<%
'##TEST SPAM
IF request("strSpam") <> "" THEN
myArray = split(request("strSpam"), vbCRLF, -1,1)
response.write "Det är " & UBound(myArray,1) +1 & " rader i din kod."

END IF
%>

Lägg in denna koden på en sida med ett formulär och en "Skicka" -knapp.

Det är i stället för din kod:

do Until strRowword.eof ***?? kan man skriva så

Nej, man kan inte skriva så.

***
Kolla här för det lilla plutteprogrammet (reference guide), även med hänvisning till hur du får det att fungera i Windows 7 längre ner på sidan.

Medlem sedan dec. 2009872 inlägg
#8

Arrayer är 0 baserade. Dvs. första posten är 0. Därför blir det +1 för att skriva ut det korrekta antalet radbrytningar.

FOR j = 0 to UBound(myArray,1)
    ' ## PETA IN DITT SPAMORD HÄR:
    Connect.Execute "INSERT INTO spammertable (spamfield) VALUES ('"& myArray(j) &"')",,128
NEXT
251 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
119 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)