0

Ich habe OctoberCMS, Static Pages Plugin verwendet, durch die ich statische Seiten erstellen.Benutzerdefinierte Kontaktformular in Partials und Verwendung in statischen Seiten Plugin

Die Sache ist, ich habe ein Kontaktformular in Teilweise wie unten erstellt.

contactform_snippet.htm - Markup

enter image description here

contactform_snippet.htm - -Code

enter image description here

Und unten ist die Statische Seite die ich erstellt und verwendet habe contactform_snippet.htm die ich gerade erstellt habe.

enter image description here

Und unten ist Preview wie seine aussehen wie.

enter image description here

Die Sache ist, auch wenn ich auf „Senden“ klicken, wird es nichts zu tun.

Ich habe auch die Form Code data-request="{{ __SELF__ }}::onSendInquiry"-data-request="onSendInquiry" aber dann unter Fehler erhalte ich sagen:

AJAX-Handler ‚onSendInquiry‘ wurde nicht gefunden.

Die Sache hier ist, ähnlich, was ich geschaffen habe und kopiert in CMS Seite statt Statische Seite und alle arbeiten dort mit Validierungen und E-Mail gesendet werden.

So ist meine Frage, wie die gleiche Arbeit in Statische HTML-Seiten hier Snippets mit machen kann. Ich weiß, dass das über die Erstellung Components erreicht werden kann, aber ich habe so viele Formulare, und ich möchte etwas wie das implementieren, damit es funktioniert. Irgendwelche Gedanken, was soll ich hier machen? tut dies data-request="onSendInquiry" in meiner Form und setzte unter Code in meiner default.htm Layout-Datei

Dank

Antwort

0

Ok Jungs, schließlich habe ich es, indem sie meine Arbeit.

function onSendInquiry() 
{ 
    // Collect input 
    $name = post('name'); 
    $email = post('email'); 
    $subject = post('subject'); 
    $msg = post('msg'); 

    // Form Validation 
    $validator = Validator::make(
     [ 
      'name' => $name, 
      'email' => $email, 
      'subject' => $subject, 
      'msg' => $msg, 
     ], 
     [ 
      'name' => 'required', 
      'email' => 'required|email', 
      'subject' => 'required', 
      'msg' => 'required', 
     ] 
    ); 

    if ($validator->fails()) 
    { 

     $messages = $validator->messages(); 
     throw new ApplicationException($messages->first()); 
     //Retrieving all error messages for all fields 
     /*foreach ($messages->all() as $message) { 
      throw new ApplicationException($message); 
     }*/ 
     //throw new ApplicationException($messages); 
    } 


    // All is well -- Submit form 
    $to = System\Models\MailSetting::get('sender_email'); 
    //$to = System\Models\MailSettings::get('sender_email'); 
    //$to = config('mail.from.address'); 
    //$to = '[email protected]'; 
    //die($to); 
    $params = compact('name','email','subject','msg'); 
    Mail::sendTo($to, 'yourappname.website::mail.contactform', $params); 
    return true; 
}] 

War so nah noch so weit. Hab es am Ende bekommen. Danke

Verwandte Themen