Den här guiden innehåller ett komplett formulär med formmail-script som bifogar filerna tillsammans med ett meddelande. Exemplet innehåller fält för att skicka tre filer men du kan lägga till eller ta bort fält i formuläret utan att behöva ändra i formmail-scriptet.
För att du ska kunna följa denna guide förutsätter vi att du har grundkunskaper i PHP motsvarande guiden PHP grunder » och PHP fortsättning » . Alla funktioner förklaras i guiden Formmail - skicka formulär till epost » och du bör gå igenom den guiden INNAN du börjar använda mallarna och exemplen nedan!
OBS! Om du inte konfigurerat och använder din egen dator som webbserver med mailfunktionerna aktiverade kan du inte testa dina PHP-sidor lokalt. Du måste publicera och testa filerna online på din webbserver med PHP-stöd när du använder exemplen i denna guide.
För att mailfunktionerna i PHP ska fungera måste din webbserver ha tillgång till ett mailprogram som tex Sendmail, Qmail eller Postfix.
Kolla din PHP-info (se guiden phpinfo » ) om din webbserver online (inte den lokala webbservern) har sökvägen (Path) angiven till sendmail:
Formuläret använder validering med PREG_MATCH och REGEXP. När formuläret skickats visas en bekräftelsesida. Formuläret och bekräftelsen använder FIELDSET för att gruppera formulärkontroller och LEGEND för att ge formuläret en rubrik. Läs mer om formulär i guiden Formulär - forms »
Formuläret är av innehållstypen enctype="multipart/form-data" för att bifogade filer ska kunna skickas tillsammans med textinnehållet. Formmail-scriptet som bearbetar formuläret innehåller HEADERS med Content-Disposition för att dela in meddelandet i text och bilagor. Meddelandet delas upp med boundary (gränser) för att ange var varje bifogad fil startar och slutar. För att skicka binära filer, som tex bildfiler, kodas filinnehållet om till det textbaserade formatet Base64 som passar de olika e-postklienterna. De flesta e-postprogrammen stöder Base64-kodning av bifogade filer.
Exemplet använder filen upload_form.php som innehåller formuläret och bearbetar formulärets innehåll.
Prova exemplet nedan! Formulärinnehållet skickas inte någonstans. Du kan prova att skicka meddelandet flera gånger och testa gärna att utelämna information i vissa fält. Prova att ange en ogiltig e-postadress för att testa om Formmail kontrollerar att fälten verkligen är ifyllda och att en korrekt e-postadress används.
Klicka här för att prova exemplet
Valideringen använder felmeddelanden enligt exemplet nedan:
Bekräftelsen när formuläret skickats visas enligt exemplet nedan:
När meddelandet öppnas i e-postklienten kan det se ut som i exemplet nedan. Notera även variablerna datum, tid och IP-nummer:
Klicka på ikonen nedan för att läsa hela guiden och hämta ZIP-filen:
... (guiden omfattar 3 sidor)
OBS! Om du vill du läsa hela guiden måste du vara WDS medlem!
Du kan beställa tjänsten WDS medlem här »
Är du redan WDS medlem?
Klicka på ikonen "WDS medlem" högst upp för att läsa hela guiden!