Jump to content

Juergen

Members
  • Posts

    1,217
  • Joined

  • Last visited

  • Days Won

    10

Juergen last won the day on January 10

Juergen had the most liked content!

2 Followers

Profile Information

  • Gender
    Male
  • Location
    Linz
  • Interests
    Playing electric guitar (Rock, Heavy), flying model helicopters

Recent Profile Visitors

7,064 profile views

Juergen's Achievements

Hero Member

Hero Member (6/6)

741

Reputation

19

Community Answers

  1. Hello @Flashmaster82 You have only added the required Validator. There are a lot of examples inside the examples folder how to validate an email address (fe at the contact forms). In this folder you will also find a special file with a lot of validation examples: https://github.com/juergenweb/FrontendForms/blob/main/Examples/field-validation.php. This file contains examples of (nearly) all possible validators and how to add them to an input field. There are 2 special validators for validation of an email, which are interesting for you: Validate email address (This is what you are asking for) Validate if email address exists (This checks for an active DNS record) In the next steps I will show you 3 possibilities (option) how to validate an email field. Option 1: Add the additional email validators to your code example // Email $email = new \FrontendForms\InputText('scf_email'); $email->setLabel($fields->get('scf_email')->$label); $email->setRule('required'); $email->setRule('email'); // checks for the right syntax of the email $email->setRule('emailDNS'); // optional: checks if the email has a valid DNS record $form->add($email); This works, but it is not the recommended way for emails. You have used an InputText input field, but for emails there is a special input field, which includes the mentioned validators by default: InputEmail Option 2: Instead of using InputText, it is better to use InputEmail, which includes email valdiation by default // Email $email = new \FrontendForms\InputEmail('scf_email'); // make usage of InputEmail $email->setLabel($fields->get('scf_email')->$label); $email->setRule('required'); $form->add($email); As the last option, I want to show you a pre-defined email input. To simplify life, I have created pre-defined input field types for the most used form fields, like surename, lastname, email, message and so on. You will find all this pre-defined fields inside the defaulf folder. These default fields includes validators and labels for these inputfields and the code is very short. Option 3: This code includes all email validators and the pre-defined email label - it is the shortest version. // Email $email = new \FrontendForms\Email('scf_email'); $email->setRule('required'); $form->add($email); Now you have 3 options, where you can choose from. Best regards Jürgen
  2. Nevermind @mayks! I hope it works as expected, because I do not use Postmark and therefore I have only tested the base function (sending process). Please take care that only 1 external mail module is installed, otherwise you will run into problems, but this is not a module related issue, it is an PW issue. In this case PW takes always the first external module in line and ignores all others (independent of you settings inside this module config).
  3. Hello @bernhard This seems to me also as the most possible reason for this behavior. BTW, I was not confronted with this issue since then, but thank you for reporting an issue at GitHub and for the information. Have a nice day!
  4. Version 1.2.0 ist out! This version supports mail sending with Postmark mail sending service. Read the full changelog.md for more information about Postmark and what has been changed. If you have one of the Postmark modules as mentioned in the changelog installed, you will find a new configuration field inside the module configuration. Here you can select if you want to send your mails with Postmark or not. Selecting "none" means using the default WireMail class for sending mails. In order to work properly, you will need at least FrontendForms 2.1.57 installed (as mentiond in the changelog.md). As always, this is Beta-status, so please take care that everything works as expected. Happy testing! 😃 Jürgen
  5. Version 1.3.0 ist out! This version supports mail sending with Postmark mail sending service. Read the full changelog.md for more information about Postmark and what has been changed. If you have one of the Postmark modules as mentioned in the changelog installed, you will find a new configuration field inside the module configuration. Here you can select if you want to send your mails with Postmark or not. Selecting "none" means using the default WireMail class for sending mails. In order to work properly, you will need at least FrontendForms 2.1.57 installed (as mentiond in the changelog.md). As always, this is Beta-status, so please take care that everything works as expected. Happy testing! 😃 Jürgen
  6. Just a hint: $form->getValue('fileuploads') will output only the filenames. If you need the path to the filenames too, you can use the following method: $form->getUploadedFiles() Best regards
  7. @ngrmm Please update to 2.1.58 - this version should fix your problems. Please add the new validator to your fileupload field: $fileuploads->setRule('uniqueFilenameInDir', true); The following method $form->getValue('fileuploads') should now show the sanitized and/or overwritten filenames as well. The full explanation of the additions can be read here in the Changelogs. As always, please take care if everything works as expected after the update!! 🙂
  8. Thanks!! I will check this later on, but for now I am working on the first issue .
  9. Hello @ngrmm Interesting aspect I have not thought of before 🙄! I am afraid, but there is no inbuilt method to prevent this. I am thinking of a creating a new validator (fe uniqueFilename) to check if there is a file with the same name present inside the given directory. If so the validator should throw an error. Maybe another possibility would be to add a new method to the file upload class (fe $field->renameDuplicates()), which renames duplicates by adding fe a number after the filename (fe. filename, filename-1, filename-2,...) What do you think?
  10. If you want to check your max upload file size, please add this code to your template: echo ini_get("upload_max_filesize"); This will output the value as set inside your php.ini file. You can see the line of code inside the InputFile.php: https://github.com/juergenweb/FrontendForms/blob/main/Formelements/Inputelements/Inputs/InputFile.php#L41
  11. Good Morning @ngrmm By default, the file upload field takes care about your max upload file size value that has been set inside your php.ini (server config file). https://www.php.net/manual/en/configuration.file.php 2048 is the max file upload size as set inside your php.ini in this case. You can disable this behavior by adding the following rule to your file input field: $file1->removeRule('phpIniFilesize'); This disables the check of the php.ini max file size and you will get the desired result, but it is not the recommended way. If you have access to your server php.ini file, make your changes there and set a higher value for the max upload file size. If you have a local installation (fe. Xampp), you can change it by yourself, if you have a site on a shared host, maybe you will need to contact the server admin, if he can change the max. value for file uploads or you can login to your account and make your changes there. Hope this helps
  12. No, I mean I have tested it locally on Xampp after adding some code to the "Password forgotten" page only for testing purposes. The version on GitHub is not updated!! Sorry, this was a little bit confusing written by me.
  13. Hello @mayks I have installed the module and I have sent 2 mails with it (I have clicked the "Password forgotten" link to send me a mail, where I can change my password). From the statistic data, it seems to work (only the "Sent" will be displayed, but I guess this is because I have the trial plan). I have tested it only on the "Password forgotten" page, but at the first sight, it seems that only the mail object instantiation is a little bit different than like the WireMail, but all other methods are equal. I cannot promise at 100% that I will implement it and if so I do not know when I will find the time (not today and not tomorrow), but it seems not to be so complicated. I did not know this module or this mail service before and personally I will not use it, because I do not want to pay for it, but it could be interesting for users, who want a statistic. My idea: If I implement it, I would add a Select option inside the module configuration with the options "WireMail" and "Postmark", so you can select, which kind you want to use. Best regards Jürgen
  14. Hello @mayks Thank you for your comment. I will have to take a look first, how this works and after that I will decide if I implement it or not. Best regards.
  15. I close this thread, because I use a hidden input field instead of a session!
×
×
  • Create New...