Working with Spry form validation
Video: Working with Spry form validationForm validation is one of the things web designers love to hate. You know you need it, your forms would be better off with it, but it can be so tricky to implement it's often left undone. Luckily spry validation is pretty straightforward to integrate into a page even on a WordPress page. Let me show you how. So I am going to start off by adding some basic form elements to our events template page. I will switch to events.php that I have opened. I am here in Split view, so I want to put this form right above the Accordion panel that we inserted in the last lesson.
- Working with web fonts
- Styling a header
- Adding header functions
- Setting up content columns
- Changing the main content
- Managing the content code
- Customizing the sidebar
- Styling search
- Working with search text
- Integrating the footer
- Next steps
Viewers: in countries Watching now:
In this course, author Joseph Lowery shows how to combine the utility of WordPress and the power of Adobe Dreamweaver to transition existing websites to the WordPress platform. The course demonstrates how to create new blog posts and pages, customize WordPress themes, and extend WordPress editable pages from within Dreamweaver. It also covers how to add Spry elements, add and customize plugins, and enhance WordPress-stored content with Dreamweaver's dynamic pages. Plus, a chapter on responsive design shows how you can adapt your layouts for tablets and mobile devices.
- Using the Dynamically-Related Files feature in Dreamweaver to design WordPress pages
- Applying WordPress themes
- Customizing themes
- Adding Spry widgets
- Adding WordPress dynamic data
- Populating the WordPress database
- Publishing a WordPress site
Working with Spry form validation
Form validation is one of the things web designers love to hate. You know you need it, your forms would be better off with it, but it can be so tricky to implement it's often left undone. Luckily spry validation is pretty straightforward to integrate into a page even on a WordPress page. Let me show you how. So I am going to start off by adding some basic form elements to our events template page. I will switch to events.php that I have opened. I am here in Split view, so I want to put this form right above the Accordion panel that we inserted in the last lesson.
To do that, I am going to select the Accordion panel here. As you can see, in Split view on the left-hand side of the screen, all of that code is now highlighted and then I am going to use my left arrow key to move right in front of it but staying in Design view. All right, double-click on the Insert panel tab to open that up, and this time I am going to switch over to Forms and start to build out my form. So first let's add that Form in, and there you can see the red outline of the form, and now I want to add a field set to that, so we will scroll down to where we see Fieldset and click on that, Dreamweaver will ask what's the legend is that you want to put in, and this is going to be a small form that just tries to encourage people to sign up for the events and newsletter. So Sign Up for Our Newsletter.
Now I am going to add a paragraph right after that, just a little descriptive text, and let's just put in Get all the news hot off the presses. With an Exclamation Mark of course. Next up is the actual field that I will be using for my Spry form, and this form will just have one field, and that will be an email field so that starts off as a Spry Validation Text Field. So let me click on that entry in the Insert panel and the id will be emailNewsletter, press Tab, the Label is just Email.
We want to make sure to attach the label tag using the for attribute and have it come before the form item. Let's leave the other values at their default and click OK. There is my Spry TextField. Now once it's inserted, we have our custom property inspector. I am going to change the type to Email Address, and that will give us another preview state of invalid format, while that's highlighted, let's change the message a bit, and instead of a somewhat formal but totally uninformative invalid format, let's make it Full email address and add a comma and a please because we are nice.
Now we also want to change the other text message, the other preview state that we have is one for required, so I am going to go ahead and instead of a value is required, let's just make that the simple word Required, with an uppercase R. Okay, so at the end of this field I am going to hit Return again and add a Submit button so that's a button here. Just going to put in an id of submit and click OK.
No label is needed for such a button. Now I'll save the file, and we will go through the same steps we did when adding the Spry Accordion to the page in the previous lesson. So I will click OK, that will add the SpryAssets to the site root. Let me expand my Files panel, and now I am going to scroll down to where my SpryAssets folder is in the site root, and you will notice two new files have been added, one CSS and one JS, both dedicated to the spry validation text field.
So with those selected I will copy them and then do a little scroll up to where I find the SpryAssets folder that's within the roux folder and paste those files right in there. Okay, let's collapse the Files panel, and we are going to adjust the paths, so I will go ahead and expand to Code view here, so we can go up the top of the page where Dreamweaver has inserted this code. Now since we already did this code block here at once, I am going to go ahead and select it and then copy and then replace all of the path up to the leading slash before SpryAssets, paste that in, and let's do it not only for the link tag but also for the script tag.
All right, I will save our page, and now we are ready to head on over to the index.php page, where I will refresh it, and then scroll down, and there you see our form kind of jammed on top of the Spry panel, we will take care of that as we do with a little styling, let's take care of the various styles first. So again, I will collapse the Insert panel and the Files panel to give full precedence to my CSS Styles panel.
Now I have these SpryAccordion.css stylesheet expanded, let's collapse that, and there is my SpryValidationTextField style sheet, so I will open that up, and we are ready to start work on this. Before we do, I just want to demonstrate a little bit about how this works, so here is the Email field. If I click into it, you can see a little active background appears. If I try to just click Submit, I do get an error message. If I put in a partial email address and click Submit, I will get a different email message.
Now there are specific characteristics here, the red background is to show the error, there's also a border on the error messages, which I don't like from a design perspective so we will remove that and make some other adjustments as well. Again I am going to just work my way down the SpryValidationTextField.css, so let's just start at the very top and move down. Now the first one we are going to leave alone. This sets up the initial state for whether messages are required or not. We don't display that until it's necessary. So now we will go down, I will just press the Down Arrow key in order to move down to the next CSS rule, and as I said I am not a big fan of the border here, so I am just going to select the border and then click the Trashcan.
I think red is very appropriate for an error message, so we will leave that. Let's go down to the next rule. Now this is for the ValidState input. I didn't demonstrate this but if I had put in a valid email address, we would have had this lovely green color. Again, not a big fan, so I am going to go ahead and change that to white, and let's continue down our rules. Here is a background color, that's okay. I think this light red is okay with me, so I am going to keep moving. Now here is the background color for the input state, and rather than use their version of the light green, let's work with the one we already have on our comp, so I am going to click on the Color Swatch and then sample that, and that's going to look a lot better and here is our red color, that's fine, and one more for the TextField state.
I want to go through it just one more time just to make sure I got everything, looks good. So we have taken care of the Spry elements, but how about adding some style to the other form elements so it fits into our site better? The few select rules again using our page template events PHP selector as we did with the Accordion panel, we can target our CSS rules for the form. So I am going to go to style.css, and let's go right down to where we define the CSS rules for our definition list.
I am just going to pick up this selector one more time here, and let's put in a new rule for the fieldset. Let's go to Code so we can see this just a tad easier. Okay, so there is my fieldset up top, I will add my opening and closing curly braces. Now I like fieldsets that have slightly rounded corners, so I am going to put in a border-radius of 5 pixels, let's separate the fieldset from the Accordion panel with a margin-bottom of 20 pixels.
We are going to put a blue border around it, so we will put in border: 2 px solid, and I am going to use the same color that we've used elsewhere in the site, and that's (168,88,163) with an opacity value of 1, and finally let's add 10 pixels of padding all round. All right, let's take a quick look and see how that's shaping up. Well, I think that's working out pretty well. We are on our way. Let's now do the legend, so back to code.
Paste them in my page-template selector and add the tag legend, we will make this a different color that's in our site. Now this will be a blue color, and let's make the font-weight bold. How we are doing? Much better. Okay, we need to adjust the P tag just so we can space that out a little bit, my selector and then P, and this will be just a padding property with 5 pixels top and bottom and none left and right.
Next up, we want to address the two actual form elements, the text field and the Submit button. Again when we take a look at that we can see that they are little bit scrunched, so I am going to add some padding, and we will also move the Submit button over to the right, and because we have more than one form on here, we have a search form as well. I am going to target this very form, which is Dreamweaver's default of putting in form1 as an id, and then we will look for the input tag with a attribute that has the type set to text.
And that one we will only need a little bit of padding all around. Let's do 3 pixels of padding. Now I am going to copy this whole selector here, paste it in because the only thing we need to change now is the type value from text to submit. All right, let's put in our opening and closing curly braces, adding some padding value. Let's do again 3 pixels on the top, but I want to add 5 pixels left and right, and this will make that Submit button a little bit bigger, and as I said I want to move it to the right, we will do that with a margin-left property of 45 pixels.
Okay, all that's left is to kind of save and test. There is my New button. Let's head back to the Browser so that we can do our testing in a proper environment. So my form looks good. Let's see how it acts. So if I click Submit, I get the message that the Email form is required. Now when I click into it, I can see I have the active focused background, that's the same as the search, that's great. I will just put in my name because that's all they actually need, right? And hit Submit.
Again, Full email address, please. Fine, so let's go ahead and put in a full email address and then hit Submit, and it's submitted, everything is good. All right, pretty sweet. We've got Spry Form validation up and running in a WordPress page.
Find answers to the most frequently asked questions about Dreamweaver and WordPress: Core Concepts .
Here are the FAQs that matched your search "" :
- Q: While trying to set up a Dreamweaver site, an error occurs that says Dreamweaver cannot resolve the dynamic files because the site definition is incorrect. What is causing this? This is using WAMP on a Windows 7 computer.
- A: When setting up the site in Dreamweaver and creating a local testing server, make sure to point it to the folder in c:/wamp/www/ that is being used for the site. If using the same naming convention as shown in the videos, the server folder should be pointing to C:\wamp\www\explore_ca\ and the Web URL field should read http://localhost/explore_ca/, like the picture here:
- Q: How do I set the password for WAMP Server 2?
- A: The WAMP server does not include a password for MySQL when first installed. You’ll need to add a password by modifying a configuration text file and set up a password in the MySQL server.
Setting a password on the MySQL server:
- From the Start menu, enter CMD to open the command line interface.
- Switch to the bin directory of your MySQL folder, installed by WAMP. For version 5.1.36 of MySQL, for example, enter cd c:\wamp\bin\mysql\mysql5.1.36\bin
Navigate within the WAMP folder installed on your system to find the proper path.
- Enter the following: mysql -u root
- The command line for MySQL will open with a mysql prompt like this: mysql>
- Enter the following:
SET PASSWORD for 'root'@'localhost' = PASSWORD('yourPassword');
- replace 'yourPassword' with the password you want to use.
- Close the CMD window.
After you change the MySQL password you will have to edit the config.inc.php file. Here's how:
- In Windows Explorer, navigate to C:\wamp\apps\phpmyadmin188.8.131.52 (version number may vary).
- Open the file config.inc.php in Dreamweaver or another text editor.
- Locate the following line:
$cfg['Servers'][$i]['password'] = '';
- Enter your password between the quotes; make sure the password is the same as the one you set in the MySQL server.
- Save the file.
- From the system tray icon for WAMP, choose Restart All Services.
- To test, choose phpMyAdmin from the WAMP system tray icon.
- Q: After creating a template following the instructions in the Chapter 5 video “Creating a page template in Dreamweaver,” I am unable to select the template. In the video, the instructor’s page shows a heading of Template, with a dropdown menu, but my version shows only a dropdown labeled “Attributes,” and the newly created template does not appear. What is causing this issue?
- A: This seems to be a bug in WordPress that occurs occasionally. Although a cause has yet to be determined, a possible workaround to get the Template option to appear is switch themes. Switching to the default theme and then back again to Explore_California should reveal the Template option.
- Q: While following along with the instructions in the "Setting up a MySQL password for Windows," I encountered this error: MySQL said: "#1045 – Access denied for user ‘root’@’localhost’ (using password: NO)" What is causing this error?
- A: This error occurs when trying to enter the MySQL monitor with a password for a user who has not set a password yet. In that case, removing the “-u root” part should resolve the problem.
- Q: While following along to the chapter 2 movie "Using dynamically related files," I get an error message that reads: "Dynamically-related files could not be resolved because the site definition is not correct for this server." What is causing this error?
- A: This is a known issue with Dreamweaver, and relates to the permalink settings in the WordPress installation. If the permalink setting is set to something other than the default, like “Month & Name,” for example, Dreamweaver is unable to resolve the dynamic files, and the described error will occur. Changing the permalink setting back to Default will clear the error.
- Q: I am bit confused as to my need to use MAMP with a WordPress site in Dreamweaver. If I am going to use a separate commercial hosting site as my server, do I still need to use MAMP in my WordPress site?
- A: MAMP is installed to provide an easy-to-use development server capable of handling MySQL and PHP on your local computer. It's also possible to set up MySQL and PHP servers separately, but it requires many more steps and is not as "user-friendly" as the described process. Your hosting server will have MySQL/PHP enabled on their servers for the remote live setup, but that doesn't have anything to do with developing and testing pages on your own computer.
- Q: I can't find the file named commevents.php in the exercise files. I need it to set up an online database in the last chapter.
- A: This is a file you create yourself when you first connect to a database. Refer to the "Adding WordPress dynamic data to pages" video in Chapter 7. commevents.php should appear in the Connections folder once you establish a connection.
- Q: In "Setting up a MySQL password for Windows", I'm getting the error "#1045 - Access denied for user 'root'@'localhost'" when testing the phpMyAdmin.
If I try and re-do the steps, I get the following error "ERROR 1044 (42000): Access denied for user ''@'localhost' to database mysql'" when I try to change the password.
- A: This seems to be happening because of the combination of Windows 7 and a
new version of WampServer 2.1. Here's another approach that should work
for the new combination.
Follow these steps instead of the ones using the CMD prompt. (As a bonus, they're much easier!)
- Left-click on the WampServer icon tray.
- Choose phpMyAdmin.
- When the phpMyAdmin page opens in your browser, click the Privileges tab found after the Engines tab.
- Locate the line in the User table with "root - localhost - No..." (probably the last one).
- Click the Edit icon (the final item in the row).
- Scroll down to the Change Password section.
- Select Password and enter your password twice. (If you're following the exercises, enter root).
- Click Go in the lower-right corner.
- Q: I want to setup the practice files and site on my localhost, as described; however, I already have my current WordPress site (under development) running on my localhost. How do I run two WordPress sites on my localhost?
- A: You can easily do it by setting up another site in Dreamweaver. Just copy the WordPress files to that folder as described and establish a new database via phpMyAdmin. You can set up as many WordPress sites as you need to. The author has upwards of 80 on his system, all for different clients.
- Q: This course was updated on 10/23/2012. What changed?
- A: The course was thoroughly revised and uses the most current versions of both programs. We added chapters on responsive design and creating a custom administration panel in WordPress, new movies about concepts and taxonomies, and extended the Spry chapter to include jQuery, among other changes. New movies are indicated by the NEW tag next to the movie name.
Sorry, there are no matches for your search "" —to search again, type in another word or phrase and click search.