Get XOOPS XOOPSXOOPS FAQFAQ ForumsForums NewsNews ThemesThemes ModulesModules
Submit a Q&A Request a Q&A Open Questions

Search

Donat-O-Meter

Make donations with PayPal!
Stats
Goal: $100.00
Due Date: May 31
Gross Amount: $65.00
Net Balance: $61.80
Left to go: $38.20

Donations
studioC  ($25)May-17
Anonymous ($15)May-16
Anonymous ($25)May-4

Learn XOOPS Core

Local Support

Advertisement

XOOPS Code hosted on SourceForge

How do I...

repair my database?

Answer here!

Did you know ?

XOOPS is free software, but you can still make money with XOOPS.

More details...

Random question

What is the difference between a download and a web link?

Answer here!

Recent Q&A List

Cumulus Tag Cloud

2 2.5 2.6 3.0 2013 Abuse alimento AntiHarvesting AntiMalUser AntiSpam API ASP Beats billige black block Blocking Blocks blue Bytes Captcha cell Christmas chronolabs Client content Conversion demo Dictionary docek download Dresses editor evden eve facebook floor forms framework free herre Honeypot Human Hymn instant-zero IP jQuery kantor Karaoke lamps Load log logger mobile module modules Monster MyAlbum-p newbb news online PageRank Party Permissions pink Plugin pollos portal Prevention profile project Protector publisher REST Rights rmcommon Room sale security Server site Smarty Spam stem Studio tag tags tdmcreate Theme themes Transaction Twitter userlog website Whitepaper Wishcraft XFriendica xoops Xortify ZendFramework

New Users

Registering user

# 136033

Arizamartin

Welcome to XOOPS!
SmartFAQ is developed by The SmartFactory (http://www.smartfactory.ca), a division of InBox Solutions (http://www.inboxsolutions.net)

Question
How to make xoopsformhidden xhtml-valid?
Answer
Remark: I don't know if this is really a FAQ. But this one disturbed me when making my page xhtml-valid.

There are two possible solutions. 1. make a tray with another formelement inside a module or 2. make the change systemwide which is much easier for the non-php-techie.

Look for function render in include/xoopsform/xoopsformhidden.php and the line which reads:

return "<input type='hidden' name='".$this->getName()."' id='".$this->getName()."' value='".$this->getValue()."' />";


Problem with this code is, that the input-field for hidden will inserted between the tr-lines of the table which is not xhtml-valid.

Just change the above line to:

return "<tr style='display:none;'><td colspan='2' style='display:none;'><input type='hidden' name='".$this->getName()."' id='".$this->getName()."' value='".$this->getValue()."' /></td></tr>";


What I did was just inserting another table-row. To prevent the new table-row from being displayed I used the style display:none.

That is all!

Requested and Answered by Anonymous on 2005/6/8 0:59:19 (3443 reads) 2 Comment(s) Print Q&A Send Q&A

The comments are owned by the author. We aren't responsible for their content.
I had the same validation problem.

I made this update un the render function but these function seems to be used in (a least one) other places.

With this modification, when you want to update a module (after a template modification), the update and cancel buttons are placed just under the header...
Published: 2006/4/17 11:22 • Updated: 2006/4/17 11:22
Hi all, I've finally found another solution (thanks to an xoops-france member)...

There is no need modifying formhidden.

First, just modify the file class/themeform.php and replace
} else {
    
$ret .= $ele->render()."n";
}

by
} else {
    
$hiddens .= $ele->render()."n";
}


and the replace just after this line
$ret .= "</table></form>n";

by
$ret .= "</table>".$hiddens."</form>n";


The function render() will now produce an html valid form.

For the contact module, there is another modification. Indeed, there is no need for a simple form to use a template, XOOPS can do it perfectly well. So in the file modules/contact/index.php comment the above two lines
...
$xoopsOption['template_main'] = 'contact_contactusform.html';
...
$contact_form->assign($xoopsTpl);


and then add the following line to the modules/contact/contactform.php
$contact_form->display();

after the last $contact_form->addElement

That's done, you will now have a valid html contact form.
Published: 2006/4/19 10:03 • Updated: 2006/4/19 10:03