Brug mange overskrifter. For at skabe overblik og struktur for brugeren.
Typografi
Her er et forsimplet eksempel på det gæstebogsscript, som jeg selv bruger. Scriptet består af 4 dele.
Åben de 4 scripts til gæstebog i et nyt vindue.
Nederst på siden kan du se, hvordan man kan samle scriptsene i én "gæstebogs"-fil.
Her kan du se, hvordan den færdige gæstebog ser ud.
Hvis gæstebogen driller læs mit blogindlæg om debugging for begyndere.
Her følger en kort beskrivelse af de enkelte filer i gæstebogsscriptet. Du kan åbne scriptet i et nyt vindue og følge med i koden samtidig med, at du læser beskrivelserne.
Først skal vi oprette en formular med to indtasningsfelter til gæsten. Formularen oprettes med HTML kode.
Formularen indeholder også et
skjult felt (type="hidden"), som brugeren ikke kan se. Dette felt sender en besked med, så php scriptet kan undersøge om
indeholdet af formularen er blevet afsendt.
Derudover har jeg tilføjet et anti spam spørgsmål. Det kan du selvfølgelig ændre efter behov. Husk også at ændre i PHP'en, der hvor svaret tjekkes.
I starten af scriptet skal du indtaste dine database oplysninger. Dem har du fået udleveret af dit hosting firma.
Dine oplysninger gemmes i en nogle variabler, der bruges til at forbinde til MySQL databasen
Først tjekkes der om formularen er afsendt (er det skjulte felt sendt) 0g at anti-bot svaret er rigtigt. Antibot laves til små
bogstaver med PHP funktionen strtolower();
Indholdet fra html formularen hentes. Hvis der er tastet html kode ind i formularen fjernes det fra indholdet.
Indholdet gemmes i 2 variabler.
Så testes der for om, der er indtastet indhold i begge felter ellers gemmes indtastningerne ikke.
Indholdet køres derefter gennem et lille sikkerhedsscript, der forhindrer at fremmede kan tage kontrol over din database
v.h.a. SQL injektioner.
Scriptet undersøger om der tidligere er indtastet et tilsvarende indlæg, og der gives en tilbagemelding til brugeren.
Dette er primært for at undgå, at samme indlæg gemmes igen og igen, hvis brugeren opdaterer siden.
Til sidst gemmes indholdet fra formularene i MySQL databasen.
Forholdsvis simplet script, der henter indholdet fra MySQL databasen.
Vi laver en forespørgelse efter kolonnerne "navn", "dato" og "besked" fra tabellen "bog".
Data gemmes i et array, og skrives ud ved hjælp af en while løkke.
While løkken skriver både indholdet fra databasen og nogle html tabel tags, så data præsenteres pænt på siden.
MySQL koden skal bruges til at oprette en tabel i din database. Databasen stilles til rådighed af dit
webhotel. Hvis du har købt webhotel følger der altid en database med. Den mest almindelige database løsning er MySQL, der
er opensource og den database php traditionelt bruger.
Sådan bruges MySQL scriptet
Jeg er blevet nødt til at tilføje et anti spam robot spørsgmål. Mange brugere har oplevet problemer med meget spam. Hvis du vil benytte en anden metode, fjerne du selvfølgelig bare spam tjekket i PHP'en.
Her kan du læse hvordan jeg selv undgår spam robotter i min gæste bog. Og på min egen gæstebog kan du også læser hvor mange spam robotter jeg har fanget ifælden mens jeg har haft gæstebogen. ;)
Når man har en gæstebog får man også besøg af spam robotter. Det kan simpelthen ikke undgåes.
Men man kan med forskellige krumspring forhindre at spamrobotternes indlæg bliver gemt.
På min blog kan du læse hvordan jeg
stopper spam i min gæstebog
Og metoden er succesfuld. Der slipper meget sjældent robotter igennem.
Jeg har lavet et lille script, som tæller, hvor mange spamrobotter, der prøver at skrive indlæg.
Robotter røget i fælden siden 18.maj 2007: 14777
Scriptet fungerer ved at tælle de indlæg, der bliver afvist, fordi de matcher reglerne, jeg har sat op for et spamrobot indlæg.