Topic: Modal Response for Contact Form

jlstory free asked 3 years ago


Expected behavior The form is functioning as intended, but when an email is submitted post verification it just displays console text. I would like a modal "email sent" to pop up rather than leave the website. I have a minimal understanding of JS and no understanding of things like JSON or PHP; I'm trying to build a design portfolio, but I need some help with the dev stuff!

Actual behavior on submit the form sends confirmation from a new page in JSON? format

enter image description here

Resources (screenshots, code snippets etc.) https://mdbootstrap.com/snippets/jquery/jlstory/2666054


Grzegorz Bujański staff commented 3 years ago

Hi. Maybe this post will be able to help you achieve the desired effect: https://stackoverflow.com/questions/17333901/php-form-on-submit-stay-on-same-page


jlstory free commented 3 years ago

This post says to remove the action tag? If I do this will it not disable the email from being sent?

Also, using php to self is different setup that does not include JSON, which is included in the MDB setup: (the onclick JS command is not used in this solution, should I remove it?)

Submit


Grzegorz Bujański staff commented 3 years ago

This solution should work. But if you use the solution from our documentation, there is also a section that tells you what to do to prevent the page from reloading - Sending an email without reloading the page using AJAX. Did you see her?


jlstory free commented 3 years ago

I'm using the AJAX method, I think, as described in the instructions. I adding a link to the older version of JQuery that is noted in the instructions to the body. Submit still loads a new page with JSON data. I have created a snippet:

https://mdbootstrap.com/snippets/jquery/jlstory/2671906

My understanding is that action to self opens up security risks? Also, action appears to be the link to mail.php. Would I need to embed my php content into index.html for this to work? (Forgive me, I'm learning design; I would like to learn JS and the backend fundamentals, but my sill level is not there yet. I'm a graphic design major, and I'm just trying to get a portfolio up and running.)


Grzegorz Bujański staff commented 3 years ago

I noticed in mail.php you didn't add code = 1 to the message 'Thank you for cantacting Intakt Design!'. Note that code is taken into account for the ajax function. Add it and check if it is enough or it will still redirect you to another page.



Please insert min. 20 characters.

FREE CONSULTATION

Hire our experts to build a dedicated project. We'll analyze your business requirements, for free.

Status

Opened

Specification of the issue

  • ForumUser: Free
  • Premium support: No
  • Technology: MDB jQuery
  • MDB Version: 4.9.0
  • Device: MacBook Pro
  • Browser: Any
  • OS: Catalina
  • Provided sample code: No
  • Provided link: Yes