Varför finns den här sidan? Helt enkelt för att jag själv behövde skripten och ville lära mig vad PHP kunde användas till. Jag började skriva på rutiner och färdiga skript 2005, då den här sidan startades. För att ha någon plats att prova skripten på, hamnade de här, och här blev de kvar. Alla skript har ändrats och förbättras flera gånger sedan de skrevs. De flesta under senaste året. De här skripten, använder sig av textfiler, för att spara data. En riktig databas är att föredra, när möjligheten finns. Databasens egna funktioner, kan då ersätta många av de funktioner som annars måste utföras i PHP-skriptet. Kan man inte använda databas, t.ex. MySQL, är textfiler den enda möjligheten. För att alla funktioner ska fungera på den här sidan, måste JavaScript vara aktiverat och för vissa funktioner måste du även tillåta cookies. Titta här: Användarinfo
Det här är ingen PHP-skola, utan bara några fungerande exempel, som man kan bygga vidare på. | * |
Förutsättningar:
För att kolla om du kan använda PHP, kan du skriva en fil med endast detta innehåll:
PHP körs på servern, till skillnad mot t.ex. JavaScript som bara kan köras i webläsaren hos besökaren. Med PHP kan man göra allt, det man tidigare önskat göra, men man inte kunnat, då det inte gått att spara data.
PHP-sidor byggs upp som en vanlig HTML-sida, med tillhörande PHP-kod. Filtillägget skall vara ".php", i stället för htm. Den här sidan är en blandning av vanlig HTML och PHP.
Du måste ha tillgång till ett webhotell eller egen server med installerad PHP-tolk.
De flesta som erbjuder gratis hemsideutrymme, kan inte hantera PHP. Fråga ditt webhotell.
<?php phpinfo(); ?>
Spara filen som phpinfo.php
Ladda upp filen till webhotellet och surfa in på den.
Ser man då en lång lista med information, är det OK. I annat fall ser man bara koden i filen.
Målsättningen är, att det skall vara lätta att installera och lätta att ändra, så det passar för dina behov. De innehåller inga häftiga, onödiga funktioner som bara försvårar förståelsen av skriptet, utan bara det som behövs för en säker funktion.
Du kan normalt inte köra skripten på din egen dator. Därför måste du först ladda upp dem till din server, för att kunna testa dina ändringar (om du inte har egen server med installerad PHP).
För att editera dina PHP-sidor, är det enklast att använda "Anteckningar" eller motsvarande texteditor.
PHP-koden börjar alltid med <?php och slutar med ?>. Om du ändrar i koden som jag skrivit, och det tycker jag du skall göra, ändra bara lite åt gången, så blir det lättare att felsöka och ev. återställa.
Var noga med att punkter, semikolon, paranteser och liknande, kommer på rätt plats och inte blir glömda. Även glömda eller extra mellanslag, kan ställa till konstiga fel.När du ändrar dina PHP-sidor:
Felmeddelanden kan läsas i en logg i samma katalog på webbservern, eller via controllpanelen.
Hasse.
PHP-koden kan inte läsas genom att i webläsaren "visa källa". Då ser man bara den färdiga HTML-koden, som genererats av PHP-skriptet, men det kan vara bra vid felsökning, att kolla att även HTML-koden blir riktig.
För att se PHP-koden måste filen öppnas lokalt i en texteditor.
Ingen databas? Behövs inte!
Alla nedanstående skript, använder en vanlig textfil (.txt) för lagring av inläggen. (Alla har inte tillgång till databas).
CHMOD:
För att kunna spara texfiler på servern, måste rättigheterna tillåta det.
Beroende på serverns inställingar, kan rättigheterna vara satta från början. Testa!
Om det inte går att spara textfilen, måste katalogen chmodas. 777 fungerar alltid. Det gör man efter att man laddat upp katalogen till servern.
Scriptet kan även skapa nya filer i katalogen.
I t.ex. Ws_ftp markerar man filen och högerklickar på den. I dialogrutan klickar man sedan på CHMOD och bockar för alternativen.
Detta kan ofta även göras i webhotellets controllpanel.
I annat fall får man ett felmeddelande med "åtkomst nekad". Om inte skrivrättigheterna är satta, går det inte att spara något överhuvudtaget!
För att det skall bli lättare med redigering av textfilen, har jag undvikit för mycket kod i den (mest bara radbrytning).
Observera att posterna skils åt med ny rad i textfilen "\n", medan ny rad i HTML-utskriften som vanligt använder "<br>".
På raderna delas varje fält åt med ett specialtecken. Det kan bytas till ett annat tecken som inte används i något annat sammanhang.
Om det tenderar att bli väldigt mycket i textfilen, kan man skapa fler textfiler, t.ex. en per år / månad eller efter x antal inlägg. Då kan man använda datum, eller del av datum, som filnamn, för att lättare kunna söka och hitta inlägg.
Tidsformatet som används i alla script på webbsidan, samt omställning av tidzon.
Webhotellets php-version var tidigare 5.3.26. Nu är det bytt php-version 5.4.40.
Det betyder att vissa filer måste flyttas till nya kataloger och sökvägar ändras. Lägg inga körbara filer i samma katalog, som dina datafiler!
OBS: Textfiler och adminfiler ska läggas i en andra kataloger, som man kan lösenordsskydda. Ändra i så fall sökvägen till txt-filen i adminskriptet.
Glöm inte att chmoda textfilen (eller katalogen där filen skall ligga), när du laddat upp den på servern.
vissa skript behöver inte spara i txt-fil. Då går de att köra direkt.
Zip-fil för exemplen, med alla ingående filer, finns att hämta längre ner på sidan.
F.o.m. Windows XP, finns programmet "Komprimerade mappar" som är alldeles utmärkt att packa upp filerna med. Det som kallas "Komprimerad mapp" (ikonen som ett blixtlås), är själva zip-filen. Annars är WinZip, det vanligaste zip-programmet.
När du fått allt att fungera, kan du flytta filerna dit du vill.
Du kan till exempel lägga alla admin-sidor och textfilerna i en lösenordsskyddad katalog.
Glöm då inte länkningen och sökvägarna mellan skripten och txt-filerna.
VARNING! Alla filer som inte skall visas offentligt, MÅSTE läggas i en lösenordskyddad katalog!
Viktigast är adminfiler men även text-filer som innehåller viktig information, som e-postadresser eller andra viktiga uppgifter.
Lösenordsskydda katalog för admin och textfiler på enkelt sätt: Kolla här!
Det som visas i exemplen, kan skilja sig lite från det som finns i zip-filen, då jag håller på med uppdateringar.
När jag kommer på förbättringar, så ändrar jag. Se uppdateringsdatum i fil-listan (längre ner på sidan).
Kan visas på egen sida eller infogas i annan.
Är det nyheter med mycket text, är det kanske bäst att visa dessa på egen sida med target="_top" i länkarna.
Texten måste naturligtvis stylas, så den stämmer med sidan i övrigt. Texstorleken kan ställas in.
Innehåller formulär, editering och själva huvudskriptet, samt en sida för endast utskrift i annat format.
Här ligger den i en iframe med storleken 130 x 150. (Beroende på månad, visas 4,5 eller 6 veckorader).
Endast en fil.
IP-nummer blockeras, så att upprepade röstningar förhindras.
Utskriften ligger i en tabell.
För att nollställa och starta ny omröstning, skriver man en ny fråga med sina alternativ.
Observerva att du måste kunna lösenordsskydda en katalog på servern.
Skriptet finns nu för nedladdning. Innehåller 5 php-filer i 2 kataloger.
Prova funktionen här! Du kan när som helst ta bort din adress igen. E-postadresserna används inte till något annat. Ingen obehörig, kan se adresserna.
- Rad-editor, för att smidigt kunna ändra och radera rader i t.ex. textfiler som används i ovanstående exempel.
Endast en rad ändras i taget, då det annars finns stor risk att man ändrar fel rad (post, datum, inlägg) eller i värsta fall formatering.
Man väljer rad i filen, som sedan delas upp i erfordligt antal inputfält. Efter ändring, sparas filen på nytt.
Eftersom inputfälten loopas fram, kommer alla att vara av type="text". Vid större textmängder i något fält, kanske man får ändra till "textarea" för detta.
Nu går det även att välja att radera hela rader (poster).
Till de flesta skripten på den här sidan, finns ett anpassat editor-skript. Finns inget, kan man använda det här.
Prova: radedit.php
- Editor för hel fil: Visar hela filen i en textarea som fyller hela bredden i webläsarfönstret.
Varning! Här kan man ändra, lägga till och radera allt i filen, så det gäller att man vet vad man gör.
Filnamnet och sökvägen till aktuell fil, kan väljas och sparas. Det här är ett nytt skript som ersätter det tidigare.
Här finns skripten för nedladdning | |||
---|---|---|---|
Sammanställning över nedladdningsbara .zip-filer | |||
Uppdaterad | |||
Gästboken | 1 katalog med 2 filer | 2013-07-26 | |
Dagboken | 1 katalog med 3 filer | 2013-08-06 | |
Tidbok | 5 filer | 2009-03-29 | |
Länklistan | 1 katalog med 3 filer | 2014-10-28 | |
Annonstavlan | 1 katalog med 4 filer | 2013-08-13 | |
Chatten | Mapp med 4 filer | 2013-02-21 | |
Editor | 2 olika | 2009-04-05 | |
Kontaktskript | Mail-formulär | 2007-12-20 | |
FAQ-skriptet | 1 katalog med 2 filer | 2010-03-22 | |
Skriva till fil | Enkelt skript med ett inputfält | 2010-03-14 | |
Meddelandeskriptet | Längst ner på sidan. (Med textarea) | 2010-03-14 | |
Nyhetsskriptet | 4 filer + en ny sida för utskrift | 2013-07-24 | |
Klickräknaren | Räknar klick på länkar. 2 filer | 2009-02-09 | |
Forum | Enkelt, textbaserat forum. 4 skript. | 2015-06-15 | |
Nyhetsbrev | Enkelt skript för oformaterade nyhetsutskick. 5 skript. | 2013-11-11 | |
Kalender | Liten månadskalender. 1 fil. | 2010-01-06 | |
Omröstning | Fråga med flera svarsalternativ. 1 fil + admin-sida. | 2019-03-01 | |
Månadsräknaren | Antal besök i dag och per månad. | 2009-11-07 | |
24-timmarsräknaren | Besök under ett dygn, med användarinfo. Ver.3 | 2009-11-15 | |
Medlemsskript | Registrering och inloggning. | 2013-09-10 | |
Om något inte fungerar: Meddela det i kontaktformuläret. | |||
Andra enklare skript som .txt-filer | |||
Besöksräknare | Endast totalbesök | ||
Tillägg för smileys | Endast tips | ||
Stoppa robotar | För besöksräknare & liknande skript | ||
Månadsräknare. Visar dagens besök samt sparar tidigare månaders besök.
24-timmarsräknare. Besöksräknare, som visar unika besök under ett dygn, med uppgifter om ISP, referer, webläsare mm.
Välj den räknare som passar bäst, och anpassa ev. tiderna efter dina behov. (Hur mycket som skall sparas och hur länge).
Unik besökare, vad är det?
Det finns ingen standard. Det beror på vad du själv tycker skall räknas som unik.
Egentligen är det en besökare som aldrig besökt sidan förut, eller? En som inte har besökt sidan förut i dag? Eller en som inte besökt sidan den senaste timman/minuten...? Tiden, får man bestämma själv.
Hur man än gör, så kommer det aldrig att bli helt rättvisande. Hur man känner igen en besökare mellan besöken, kan också utföras på olika sätt. I det här exemplet, sparas en cookie i besökarens dator (om besökaren inte valt att stänga av cookiesfunktionen i sina inställningar). I så fall räknas denna, som en ny besökare varje gång.
Om man i stället väljer att spara IP-nummer i en fil eller databas, blir det också fel. Många byter IP-nummer ofta, ibland mellan varje besök. En annan felkälla blir också att många datorer kan dela på samma IP-nummer.
-Ett annat exempel på hur man lätt kan ändra en enskild text på en hemsida. Även om man vill skriva på flera rader. Till exempel nyheter eller snabba meddelanden till besökarna.
Ett enkelt formulär med textarea och en liten textfil. Meddelandet kan sedan infogas på den plats man önskar.
Prova att ändra texten. Meddelandet visas här under. Uppdatera sedan sidan, för att se det som är ändrat.
Testmeddelande:
eeee