Een snel feedbackformulier in PHP en jQuery. Afdeling kwaliteitscontrole

Bijna elke site heeft een formulier feedback... En natuurlijk zijn er veel verschillende uitvoeringen. In dit artikel zullen we een feedbackformulier schrijven dat gebruikmaakt van HTML5-validatie, pop-upmeldingen met geluid. En natuurlijk wordt het verzoek zelf met ajax verzonden. Daarnaast biedt het voorbeeld twee opties voor het verwerken van een verzoek: via ajax en een regulier POST-verzoek. In het geval van een POST-verzoek worden sessiegebaseerde flashberichten gebruikt. Lees meer onder het kopje...

Ons project zal dus de volgende structuur hebben:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 ... ├── css │ ├── jquery.jgrowl.css │ ├── main.css │ └── normalize.css ├── afbeeldingen │ └── jgrowl.close.png ├── beschermd │ ├── bootstrap. php │ ├── flashes.php │ ├── func.php │ └── session.php ├── geluiden │ ├── notice.mp3 │ └── notice.ogg ├── feedback.php └── index .php

In bestand index.php er komt een feedbackformulier. Nadat de gebruiker het formulier heeft ingevuld en op de verzendknop heeft geklikt, wordt een ajax-verzoek voor het script verzonden feedback.php... Die op zijn beurt, na verwerking van het verzoek, het resultaat zal retourneren. Er is hier een nuance. Het script controleert welk verzoek kwam en, afhankelijk hiervan, retourneert het resultaat in de vorm van json of schrijft een flash-bericht naar de sessie en verwijst vervolgens terug naar index.php. Dat wil zeggen, in het geval van eventuele fouten in javascript verzoek zal nog steeds worden afgehandeld door een eenvoudig POST-verzoek. En de programmeur heeft in dit geval een flexibele tool waarmee je Ajax altijd kunt verlaten.

Flash-berichten zijn een type gegevens in een sessie die na hun eerste verzoek worden gewist. Is zeer handig hulpmiddel om berichten tussen verzoeken over te dragen.

Om de lay-out niet ingewikkeld te maken en om de meldingen voor de gebruiker te verenigen, gebruikt het voorbeeld pop-upberichten voor grommen die vergelijkbaar zijn met die in OSX. Hiervoor wordt de goede jQuery-plug-in jGrowl gebruikt, die een flexibel systeem van maatwerk en styling heeft.

Dus laten we beginnen met HTML:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 Feedback formulier
Feedback


Zoals je kunt zien aan de bovenstaande code. Niet gebruikt in het voorbeeld. Dat is gewoon niet nodig voor zulke dingen. Toch worden de gegevens op de server gevalideerd.

JavaScript:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 $ (document) .ready (function () (buzz.defaults .formats = ["ogg", "mp3"]; buzz.defaults .preload = true; if (buzz.isSupported ()) (var noticeSound = new buzz. geluid ("geluiden / mededeling");) $ .jGrowl .defaults .position = "rechtsboven"; $ .jGrowl .defaults .closer = false; $ .jGrowl .defaults .beforeOpen = functie (e, m, o) (if (noticeSound) noticeSound.play ();); $ ("form # feedback-form") .on ("submit", functie (e) (e.preventDefault (); $ (this) .ajaxSubmit ((dataType : "json", succes: function (response) ($ .jGrowl (response.message, (theme: response.type)); if (response.type == "success") $ ("form # feedback-form") [0] .reset ();), error: function () ($ ("form # feedback-form") .unbind ("submit") .submit ();)))));));

De bovenstaande code is vrij duidelijk. De meldingsuitvoer en het afspelen van geluid configureren. En ook de implementatie van het werk van het formulier door zonder de pagina opnieuw te laden met behulp van de ajaxForm-bibliotheek.

Laten we nu verder gaan met de implementatie van verzoekverwerking:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 //feedback.php vereisen __DIR__. "/protected/bootstrap.php"; if (! IS_POST ()) (stopAndResponseMessage ("fout", "Het script accepteert alleen POST-verzoeken!"); ) $ naam = _POST ("naam"); $ e-mail = _POST ("e-mail", onwaar); $ bericht = _POST ("bericht"); if (! $ naam ||! $ e-mail ||! $ bericht) (stopAndResponseMessage ("fout", "Niet alles Verplichte velden waren gevuld! " ) ; } // controleer captcha en csrf-token if (! isEmail ($ e-mail)) (stopAndResponseMessage ("fout", "Het e-mailadres is niet goed!"); ) if (mb_strlen ($ bericht)<= 10 ) { stopAndResponseMessage( "error" , "Het bericht is te klein. Moet 10+ tekens lang zijn."); ) // sendEmail stopAndResponseMessage ("succes", sprintf ( "% s, bericht verzonden!", $ naam)); functie stopAndResponseMessage ($ type, $ bericht) (if (IS_AJAX ()) (echo json_encode (array ("type" => _e ($ type), "message" => _e ($ bericht))); afsluiten;) Knippert :: toevoegen (_e ($ type), _e ($ bericht)); stopAndRedirect ("index.php");)

Het meest belangrijke plek in het script is dit de stopAndResponseMessage-functie, een flexibel mechanisme voor het afhandelen van verzoeken. Het retourneert een json-antwoord voor het geval: ajax verzoek of gebruikt flitsberichten wanneer eenvoudige POST verzoek. Op de dit stadium het is misschien niet duidelijk hoe flash-berichten worden geïmplementeerd. Maar aangezien het artikel al vrij groot is, zal de lezer dit probleem zelf moeten oplossen. Gebruik makend van broncodes natuurlijk. Alles is geïmplementeerd in het bestand beschermd / knippert.php.

In deze les maken we kennis met de functie mail (), met behulp van het voorbeeld van het maken van PHP-feedbackformulieren met de daaropvolgende verzending van de ontvangen gegevens naar de post.

Hiervoor zullen we twee bestanden maken - forma.php en mail.php... Het eerste bestand bevat alleen een formulier met velden voor gebruikersinvoer van gegevens. Binnen de tag formulier- knop "Versturen" en attribuut actie die verwijst naar de handler - mail.php, het is aan hem dat de gegevens van het formulier worden geopend wanneer op de knop wordt gedrukt "Versturen"... In ons voorbeeld worden de formuliergegevens verzonden naar een webpagina met de naam "/Mail.php"... Deze pagina bevat een script voor PHP die de formuliergegevens verwerkt:


Formuliergegevens worden per methode verzonden NA(verwerkt als $ _POST). $ _POST is een array van variabelen die via de methode aan het huidige script wordt doorgegeven NA.

Hieronder ziet u de inhoud van het bestand forma.php, waarvan de velden op sommige websites door de gebruiker zelf worden ingevuld. Alle velden voor gegevensinvoer moeten het attribuut hebben naam, schrijven we de waarden zelf voor, op basis van logica.




Feedbackformulier in PHP met verzenden naar e-mail


Feedbackformulier in PHP







Laat een bericht achter:
Uw naam:



E-mail:

Telefoonnummer:

Bericht:

Het tekstgebied kan een onbeperkt aantal tekens bevatten ->









Zo ziet het formulier er visueel uit in de browser.

Vervolgens schrijven we de code voor het bestand mail.php... De namen voor de variabelen bedenken. V PHP variabele begint met een teken $ en dan de naam van de variabele. Tekstwaarde de variabele staat tussen aanhalingstekens. Met behulp van variabelen wordt de inhoud van het formulier naar de e-mail van de beheerder gestuurd, simpelweg door het in te vullen in vierkante haakjes naam van formulierelement - waarde naam.

$ naar = " [e-mail beveiligd]"; // e-mail van de ontvanger van gegevens uit het formulier
$ tema = "PHP-feedbackformulier"; // onderwerp van de ontvangen e-mail
$ message = "Uw naam:". $ _ POST ["naam"]. "
"; // wijs de variabele de waarde toe die is verkregen uit het formulier naam = naam
$ bericht. = "E-mail:". $ _ POST ["e-mail"]. "
"; // verkregen uit de formuliernaam = e-mail
$ bericht. = "Telefoonnummer:". $ _ POST ["telefoon"]. "
"; // verkregen uit het formulier naam = telefoon
$ bericht. = "Bericht:". $ _ POST ["bericht"]. "
"; // verkregen uit de vormnaam = bericht
$ headers = "MIME-versie: 1.0". "\ r \ n"; // koptekst komt overeen met het formaat plus een regelinvoerteken
$ headers = "Inhoudstype: tekst / html; charset = utf-8". "\ r \ n"; // geeft het type inhoud aan dat wordt verzonden
mail ($ naar, $ thema, $ bericht, $ headers); // stuur variabele waarden per e-mail naar de ontvanger
?>

Dus de gegevens uit de array $ _POST wordt doorgegeven aan de overeenkomstige variabelen en naar de e-mail verzonden met behulp van de functie mail... Laten we ons formulier invullen en op de verzendknop drukken. Vergeet niet uw e-mailadres te vermelden. De brief kwam meteen aan.

Het is geen geheim dat u vaak op de een of andere manier moet communiceren met bezoekers van uw site. Je kunt natuurlijk gewoon je e-mail(zoals ik deed), of je kunt een andere manier voorstellen - dit is feedback formulier... Hier is natuurlijk wel kennis voor nodig. PHP... Maar zodat u niet alles vanaf het begin hoeft te schrijven, geef ik u een zeer goede feedback formulier script.

Pak na het downloaden het archief uit naar uw site (zie, wis niets van uzelf). Laten we het nu instellen. Open hiervoor het bestand " config.php". En verander de waarden van de volgende variabelen:

  1. "mailto"- zet in plaats van" [e-mail beveiligd] "uw mailboxadres.
  2. "tekenset"- zet de codering, maar als uw site in het Russisch is, kunt u vertrekken" windows-1251".
  3. "inhoud"- Ik raad je aan om te vertrekken" tekst / gewoon", aangezien het onwaarschijnlijk is dat uw bezoekers u berichten zullen sturen in HTML-indeling.

Nu kunt u het bestand uitvoeren index.php het script. Als gevolg hiervan verschijnt er een formulier voor u. U kunt deze invullen en een brief sturen.

Nu rijst de vraag: " Hoe embed ik dit contactformulier op mijn website?". Zoek hiervoor het bestand dat verantwoordelijk is voor uw feedbackpagina (let it be" feedback.html"). Verander de extensie onmiddellijk in php(dat wil zeggen op " feedback.php"). Kopieer de code van index.php script om mee te archiveren feedbackpagina (feedback.php). Nu kun je doen wat je wilt tussen de tags en , wis gewoon niet wat je hebt ingevoegd uit index.php... Wat staat er tussen tags en ?> ook niet aanraken als u niet precies weet wat u doet.

En tot slot, als je het niet leuk vindt verschijning formulier, dan kunt u het corrigeren in het bestand " styling.css".

Als je nog vragen hebt, of als er wat problemen zijn met het script (ik heb het niet getest), schrijf me dan op e-mail voor mij om te repareren.

Om niet afhankelijk te zijn van het werk van andermans scripts, moet u leren hoe u ze zelf kunt maken. Mijn Videocursus leert je dit " PHP en MySQL van nul naar Guru":

Voor de ontwikkeling van een webproject is het erg belangrijk om feedback te krijgen van bezoekers. Helaas is op veel websites de mogelijkheid om een ​​bericht naar ontwikkelaars te sturen helemaal niet beschikbaar of gaat het gepaard met nogal ernstige problemen.

Vandaag zullen we een eenvoudige oplossing voor dit probleem maken. Met behulp van jQuery, PHP en de PHPMailer-klasse stuurt het formulier de suggestie van de gebruiker rechtstreeks naar uw postbus.

HTML

Laten we beginnen met HTML-opmaak... Stijlen staan ​​bovenaan het document, en JavaScript-bestanden- aan de onderkant. Dit optimaliseert het laadproces van de pagina, zodat de scripts als laatste worden geladen, zodat de gebruiker de pagina-inhoud kan zien.

demo.html

Feedbackformulier met <a href="https://qzoreteam.ru/nl/oformlenie-formy-obratnoi-svyazi-krasivaya-forma-obratnoi-svyazi-bez-kartinok-na/">PHP gebruiken</a> en jQuery | Demonstratie voor site site

Feedback

Gelieve in te schakelen contactgegevens als je een antwoord wilt.

versturen


Binnen lichaam gelegen div #feedback... Het wordt rechtsonder in het venster gepositioneerd met een vaste positionering, zoals u zult zien in het CSS-gedeelte van de zelfstudie.

binnen dit div vijf gekleurde elementen zijn geplaatst span... Elk is 20% breed en naar links verschoven. Zo passen ze precies over de hele breedte. div #feedback.

Dan komt de container .sectie, die een titel, een tekstgebied en een knop bevat.

CSS

Laten we verder gaan met het instellen van de stijlen voor het formulier. Laten we eerst een paar woorden zeggen over waar de structuur van een stylesheet uit bestaat. Kijken naar CSS-definities hieronder weergegeven, kunt u zien dat elke regel begint met #feedback... Dit creëert een gelijkenis met de naamruimte in CSS, waardoor het eenvoudig is om zonder conflicten code toe te voegen aan een bestaande website.

stijlen.css - Deel 1

#feedback (achtergrondkleur: # 9db09f; width: 310px; height: 330px; position: fixed; bottom: 0; right: 120px; margin-bottom: -270px; z-index: 10000;) #feedback .section (achtergrond : url ("img / bg.png") herhaal-x linksboven; rand: 1px effen # 808f81; border-bottom: geen; opvulling: 10px 25px 25px; ) #feedback .color (float: left; height: 4px; width: 20%; overflow: hidden;) #feedback .color-1 (achtergrondkleur: # d3b112;) #feedback .color-2 (achtergrondkleur: # 12b6d3;) #feedback .color-3 (achtergrondkleur: # 8fd317;) #feedback .color-4 (achtergrondkleur: # ca57df;) #feedback .color-5 (achtergrondkleur: # 8ecbe7;) # feedback h6 (achtergrond: url ("img / feedback.png") no-repeat; height: 38px; margin: 5px 0 12px; text-indent: -99999px; cursor: pointer;) #feedback textarea (achtergrondkleur: # fff; rand: geen; kleur: # 666666; lettertype: 13px "Lucida Sans", Arial, schreefloos; hoogte: 100px; opvulling: 10px; breedte: 236px; formaat wijzigen: geen; omtrek: geen; overloop: auto; - moz-box-shadow: 4px 4px 0 # 8a9b8c; -webkit-box-shadow: 4px 4px 0 # 8a9b8c; box-shadow: 4px 4px 0 # 8a9b8c;)

Het eerste element dat gestyled moet worden is div #feedback... Het krijgt een vaste positie toegewezen en wordt naar het browservenster geklikt. Daarna komt de definitie voor div .sectie en vijf gekleurde elementen span... Deze elementen verschillen alleen in de achtergrondkleur, die voor elke klasse afzonderlijk wordt toegewezen.

Helemaal onderaan het gepresenteerde deel CSS-bestand definieert de regels voor het weergeven van een tekstgebied.

stijlen.css - Deel 2

#feedback a.submit (achtergrond: url ("img / submit.png") no-repeat; border: none; display: block; height: 34px; margin: 20px auto 0; text-decoration: none; text-indent: -99999px; breedte: 91px;) #feedback a.submit: hover (achtergrondpositie: linksonder;) #feedback a.submit.working (achtergrondpositie: rechtsboven! Belangrijk; cursor: standaard;) #feedback .message (font-familie: Corbel, Arial, sans-serif; kleur: # 5a665b; tekst-schaduw: 1px 1px 0 # b3c2b5; margin-bottom: 20px;) #feedback .arrow (achtergrond: url ("img / arrows.png ") no-repeat; float: right; width: 23px; height: 18px; position: relative; top: 10px;) #feedback .arrow.down (background-position: left top;) #feedback h6: hover .down ( achtergrondpositie: linksonder;) #feedback .arrow.up (achtergrondpositie: rechtsboven;) #feedback h6: hover .up (achtergrondpositie: rechtsonder;) #feedback .response (lettergrootte: 21px; margin-top: 70px; text-align: center; text-shadow: 2px 2px 0 # 889889; kleur: #FCFCFC; display: block;)

Het tweede deel van de stylesheet definieert het uiterlijk van de verzendknop. Merk op dat er drie statussen van de knop zijn, waarvan de afbeeldingen in één bestand zijn opgenomen voor: achtergrondafbeelding - indien.png... Ze worden alleen weergegeven als dat nodig is.

jQuery

Het feedbackformulier heeft twee statussen: geminimaliseerd en maximaal. Bij het opstarten is de standaard ingesteld op de geminimaliseerde status rechtsonder in het scherm. En jQuery duwt het formulier naar zijn maximale status wanneer de gebruiker op de kop klikt. Deze functie: wordt gedaan door een gebeurtenis te binden en eenvoudige animaties uit te voeren.

script.js - Deel 1

$ (document) .ready (function () (// De relatieve URL van het submit.php-script. // U moet het waarschijnlijk wijzigen.var submitURL = "submit.php"; // Het feedbackobject in cache plaatsen: var feedback = $ ("#feedback"); $ ("# feedback h6"). klik op (functie () (// Animatie-eigenschapswaarden worden opgeslagen // in een apart object: var anim = (mb: 0, // Onderste veld pt: 25 // Bovenste inspringing); var el = $ (this) .find (". Arrow"); if (el.hasClass ("down")) (anim = (mb: -270, pt: 10 );) // Eerste animatie verplaatst het formulier naar boven of beneden, en de tweede verplaatst de titel // zodat deze overeenkomt met de geminimaliseerde versie feedback.stop (). animate ((marginBottom: anim.mb)); feedback.find (". sectie"). stop () .animate ((paddingTop: anim.pt), function () (el.toggleClass ("omlaag");));));

Om de code eenvoudig en duidelijk te houden, wordt bovenaan een anime-object gemaakt, dat de waarden voor animatie bevat, en wordt de operator geplaatst als... Afhankelijk van het bestaan ​​van de klasse ‘ omlaag 'Op de pijl vergroten of verkleinen we de vorm.

Tweede deel script.js behandelt het werken met AJAX met indienen.php.

script.js - Deel 2

$ ("# feedback a.submit"). live ("klik", functie () (var button = $ (this); var textarea = feedback.find ("textarea"); // We gebruiken de arbeidersklasse voor meer dan alleen het instellen van stijlen voor de verzendknop, // maar ook als een soort slot om meerdere formuliergeneraties te voorkomen.if (button.hasClass ("working") || textarea.val (). length< 5){ return false; } // Запираем форму и изменяем стиль кнопки: button.addClass("working"); $.ajax({ url: submitURL, type: "post", data: { message: textarea.val()}, complete: function(xhr){ var text = xhr.responseText; // Deze operatie helpt de gebruiker om de fout te identificeren: if (xhr.status == 404) (text = "Het pad naar het submit.php-script is ongeldig.";) // Verberg de knop en het tekstgebied, waarna // we toonde het ontvangen antwoord van de submit.php-knop .fadeOut (); textarea.fadeOut (functie () (var span = $ (" ", (className:" response ", html: text)) .hide () .appendTo (feedback.find (". section ")) .show ();)). val (" ");))); return vals ;));));

We gebruiken de jQuery-methode voor AJAX $ .ajax () om te communiceren met indienen.php... Deze methode geeft een beetje meer controle over verbinding dan $ .get () en $ .post ().

Een van de voordelen van de methode is de zichtbaarheid van de objecteigenschappen in de "hele" callback-functie. Hier controleren we de status van de reactie op naleving 404-fout (pagina niet gevonden), en een bericht weergeven aan de gebruiker waarin hem wordt gevraagd het pad te controleren verzendURL.

Nu is het tijd om verder te gaan met het laatste deel - PHP.

PHP

PHP verwerkt de gegevens die vanuit AJAX zijn verzonden, valideert deze en verzendt deze email bericht op het opgegeven adres.

indienen.php

// Vul hier uw adres in $ emailAddress = " [e-mail beveiligd]"; // Sessie gebruiken om overstroming te voorkomen: session_name (" quickFeedback "); session_start (); // Als het laatste formulier minder dan 10 seconden geleden is ingediend, // of de gebruiker het afgelopen uur al 10 berichten heeft verzonden als ($ _ SESSION [ "lastSubmit"] && (tijd () - $ _SESSION ["lastSubmit"]< 10 || $_SESSION["submitsLastHour"] >10)) (die ("Wacht een paar minuten voordat u het bericht opnieuw verzendt.");) $ _SESSION ["lastSubmit"] = tijd (); $ _SESSION ["submitsLastHour"] ++; vereisen "phpmailer / class.phpmailer.php"; if (ini_get ("magic_quotes_gpc")) ($ _POST ["bericht"] = stripslashes ($ _ POST ["bericht"]);) if (mb_strlen ($ _ POST ["bericht"], "utf-8")< 5){ die("Ваше сообщение слишком короткое."); } $msg = nl2br(strip_tags($_POST["message"])); // Используем класс PHPMailer $mail = new PHPMailer(); $mail->IsMail (); // Voeg het adres van de ontvanger toe $ mail-> AddAddress ($ emailAddress); $ mail-> Onderwerp = "Nieuwe brief van het feedbackformulier"; $ mail-> MsgHTML ($ msg); $ mail-> AddReplyTo (" [e-mail beveiligd]". $ _ SERVER [" HTTP_HOST "]," Feedbackformulier op de demopagina "); $ mail-> SetFrom (" [e-mail beveiligd]". $ _ SERVER [" HTTP_HOST "]," Feedbackformulier op de demopagina "); $ mail-> Verzenden (); echo" Bedankt! ";

We gebruiken eerst sessiebeheer om te bepalen hoe vaak de gebruiker formulierverzending gebruikt tijdens: laatste uur en bepaal ook de tijd die is verstreken sinds de laatste verzending. Als er minder dan 10 seconden zijn verstreken sinds de laatste inzending, of als de gebruiker het afgelopen uur al meer dan 10 berichten heeft verzonden, wordt een foutmelding weergegeven.

E-mail wordt verzonden met behulp van de PHPMailer-klasse. Aandacht! Het werkt alleen met PHP5.

Meerdere methoden PHPMailer gebruikt voor configuratie uitgaande e-mail... Methode IsMail () vertelt de klas om de internal . te gebruiken PHP-functie mail ()... Methode Voeg adres toe () voegt adres van ontvanger toe (u kunt meer dan één ontvanger toevoegen met extra oproepen deze methode). Na toevoeging van het onderwerp van de brief en de tekst, wordt het adres voor antwoorden aangegeven en wordt het bericht verzonden.

Klaar!

Gevolgtrekking

U kunt dit formulier gebruiken om snelle feedback van uw websitebezoeker te organiseren. Zeer lage drempel voor verzending - u hoeft alleen het tekstveld in te vullen en op de knop te drukken - het wordt aangemaakt uitstekende voorwaarden zodat bezoekers van uw pagina's hun ideeën beginnen te delen. Het script is ook goed gestructureerd en eenvoudig te configureren, wat u zal helpen met: minimale inspanning gebruik het op uw site.

De informatie op deze pagina is in de eerste plaats bedoeld voor beginnende webmasters.

Hallo vrienden, beste bezoekers van mijn bescheiden site! Zeker, velen van jullie, inclusief beginnende webmasters, weten wat FOS is en waar het voor is (feedbackformulier).

Traditionele FOS in het heel eenvoudige versie- dit is wanneer de gebruiker de velden van een formulier op een webpagina invult, en server programma verwerkt deze gegevens en stuurt ze door naar de mailbox van de sitebeheerder. Maar er zijn andere opties en we zullen er een in deze les bespreken.

Het is duidelijk dat bij het gebruik van bijvoorbeeld een CMS gratis Joomla en WordPress, kan het feedbackprobleem worden opgelost met verschillende extensies of plug-ins, maar er is alternatieve manieren wat handig kan zijn voor elk project dat op beide is gebouwd pure HTML, PHP en het gebruik van de engine.

Op het web vindt u heel wat scripts van verschillende FOS - zowel eenvoudig als zeer geavanceerd, die op de site zijn geïnstalleerd als een volwaardig CMS en niet alleen PHP-ondersteuning maar ook een databank. U zult waarschijnlijk veel opties moeten zoeken, vinden en uitproberen die bij u passen.

Feedback is ook mogelijk via een opmerkingenformulier dat voor iedereen toegankelijk is, waar bezoekers communiceren met de sitebeheerder en onderling problemen en problemen oplossen, en FOS gaat uit van een meer gesloten, afgezonderde communicatie tussen twee mensen. Bezoekers en opdrachtgevers hebben bij wijze van spreken altijd vragen, niet voor het publiek en publiciteit.

Het is ook de moeite waard om te zeggen dat er goede services zijn voor het maken van feedbackformulieren, maar nu zullen we het hebben over een interessante en onconventionele FOS. Het belangrijkste verschil met andere monsters is dat het niet beschikbaar en gebruikt hoeft te zijn. e-mailclient... Dit is een webformulier en berichten erin worden gemaakt, naar de webpagina verzonden en op de webpagina ontvangen. Met andere woorden, gegeven vorm werkt binnen de server van uw site zonder een e-mailserver te gebruiken.

Op de gratis hosting de SMTP-server is niet beschikbaar vanuit PHP, dus maak een service voor het verzenden van berichten van de sitepagina naar e-mail naar de e-mail van de beheerder is niet mogelijk. De voorgestelde set van FOS lost dit probleem op en biedt zowel afzenders van berichten van de sitepagina als de beheerder ervan, handige manier berichten.

U heeft de mogelijkheid om het feedbackformulier op het werk te bekijken, een bericht te verzenden door de velden op de verzendpagina in te vullen en het ook te bekijken op een andere pagina met ontvangen berichten.

Een druppel nuttige informatie

Om in de toekomst geen problemen te ondervinden bij het transcoderen van bestanden, moet u een klein "educatief programma" lezen. Om een ​​conversie uit te voeren, bijvoorbeeld van windows-1251 naar utf-8, moet u:

  1. Open alle bestanden in tekstverwerker, het beste in Kladblok ++;
  2. Verwijder records over oude codering, bijvoorbeeld
    ;
  3. Hercodeer alle bestanden één voor één (coderingen → converteren naar utf-8 zonder stuklijst);
  4. Records over de nieuwe codering invoegen, bijvoorbeeld
    ;
  5. Wijzigingen in alle bestanden opslaan (bestand -> alles opslaan).

Bij deze acties is het belangrijk om de volgorde van bewerkingen te observeren, anders krijgt u onbegrijpelijke "krakozyabry" in plaats van Russische woorden.

1. Downloaden vereist archief met het materiaal en pak het uit in de huidige map op uw computer. In de feedbackmap ziet u een img-map met afbeeldingen en formulierbestanden. Upload de volledige feedbackmap naar de server van uw site.

AANDACHT! Als de bestanden naar de server worden geüpload, is het noodzakelijk om de attributen: 666 in te stellen voor het bestand message.txt, anders is het lezen en schrijven naar het bestand niet mogelijk en geeft de server een foutmelding.

2. Voer in de adresbalk van uw browser het adres in:
// uw domein / feedback / feedback.php
De feedbackpagina met het gegevensinvoerformulier wordt geladen. U kunt de werking van het formulier testen door alle velden in te vullen en een bericht te sturen. Maken in de juiste plek link naar deze pagina vanaf uw site.

3. Om berichten te controleren, voer in adresbalk browser adres:
// uw domein / feedback / message.php
De pagina met de berichtkop, gegevens en tekst van het verzonden bericht wordt geladen. Om alle records te verwijderen, klikt u op de knop Alles verwijderen op de pagina. Maak een bladwijzer van de berichtenpagina (message.php), zodat u deze de volgende keer gemakkelijk kunt openen.

FOS is klaar om aan uw website te werken. Hoe lang heb je erover gedaan om het te installeren?

Optie nummer 2. Installatie van FOS in de sitesjabloon.

Dit formulier kan ook in een PHP-sitesjabloon worden ingevoegd. Deze taak is iets moeilijker.

Het formulier ziet er ongeveer zo uit en er kunnen berichten worden ontvangen.


Bestanden in utf-8-codering, als uw site een andere codering heeft, moeten ze opnieuw worden gecodeerd. U kunt dit al zelf doen.

De pagina's feedback.php en send.php hebben voor de duidelijkheid voorlopige registratie, die in de toekomst niet nodig zal zijn vanwege het feit dat gemarkeerd vereiste blokken(begin blok -> einde blok) in de feedback.php- en send.php-bestanden moet je ze kopiëren en plakken in de sjablonen van je websitepagina. Vervolgens moeten deze sjablonen worden hernoemd naar feedback.php en dienovereenkomstig naar send.php. Er moet een link naar feedback.php in het hoofdmenu van uw site staan.

De bestanden header.php, footer.php, die worden gebruikt om de pagina's feedback.php en send.php te vormen tijdens de voorbereidende tests, zijn ook niet vereist.

De bestanden message.php en deltext.php zijn servicepagina's voor de sitebeheerder. Ze kunnen ongewijzigd blijven, of je kunt ze naar wens indelen.

Al deze bestanden zouden zich moeten bevinden in hoofdmap samen met het message.txt-bestand:

Om problemen te voorkomen, voordat u bestanden uploadt naar: hoofdmap site, controleer of er overeenkomsten zijn met bestandsnamen! Als dit het geval is, moeten de bestanden worden hernoemd.

Als een site met normale HTML-pagina's wordt gebruikt bij hosting met PHP, dan moet het formulier uit het feedback.php-bestand worden ingevoegd in de sjabloon van de pagina voor feedback met de naam feedback.html. En in de sjabloon van de HTML-pagina met de naam send.html, voeg je het scriptblok uit het corresponderende bestand in en hernoem je de pagina naar send.php.

Het is alles! Gebruik FOS maximaal, communiceer met bezoekers, ontwikkel uw bron en het allerbeste voor u! Vergeet niet mijn website te bezoeken. Uw LM