vespa Posté 19 Janvier 2007 Posté 19 Janvier 2007 Bonjour, J'utilises ce module sur un site joomla xhtml 1.0 valide et j'ai un problème pour le valider w3c a cause de ce formulaire a cause de l'attribut "name" et je ne sais pas comment faire pour le rendre valide (j'ai lu de la doc, mais je ne maitrise pas assez le code Si quelqu'un peut m'expliquer comment faire <?php// --------------------------------------------------------------------------------// YaNC - Yet another Newsletter Component// Copyright © 2003-2004 TIM_online// [url="http://www.tim-online.nl"]http://www.tim-online.nl[/url]//// All rights reserved. YaNC is a component for Mambo 4.5. // It allows you to compose various newsletters and send then to subscribers // to different lists. You can use HTML or text mailings//// This program is free software; you can redistribute it and/or// modify it under the terms of the GNU General Public License// as published by the Free Software Foundation; either version 2// of the License, or (at your option) any later version.//// This program is distributed in the hope that it will be useful,// but WITHOUT ANY WARRANTY; without even the implied warranty of// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the// GNU General Public License for more details.//// You should have received a copy of the GNU General Public License// along with this program; if not, write to the Free Software// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,USA.//// The "GNU General Public License" (GPL) is available at// [url="http://www.gnu.org/copyleft/gpl.html"]http://www.gnu.org/copyleft/gpl.html[/url]// --------------------------------------------------------------------------------// $Id: mod_yancsubscribe.php,v 1.3 2005/06/22 12:04:36 websmurf Exp $/** Based on** Yanc Newsletter Subscribe Module for Yanc 1.3** _AT_author Wee Keat Chin* _AT_Copyright © 2000 - 2004 Visualdensity* @ All rights reserved* @ Released under GNU/GPL License : [url="http://www.gnu.org/copyleft/gpl.html"]http://www.gnu.org/copyleft/gpl.html[/url]* _AT_version 1.0** Email: weekeat_AT_visualdensity.com**/defined( '_VALID_MOS' ) or die( 'Direct Access to this location is not allowed.' );/** * Configuration * ------------------ * Please refer to YancSubscribe's install_help folder in its ZIP package for more information. *///$chars_limit = @$params->chars_limit ? intval( $params->chars_limit ) : 1; //1 to limit the number of characters of title, 2 to disable it//$chars = @$params->chars ? intval( $params->chars) : 15; // used with character limits enabled. the value signifies the number of characters to display//$hide_name_field = @$params->hide_name_field ? intval( $params->hide_name_field) : 0; //to hide the name field, set it to 1//$menuitem = @$params->menuitem ? intval( $params->menuitem) : 0; //to hide the name field, set it to 1$chars_limit = ($params->get( 'chars_limit' )) ? $params->get( 'chars_limit' ) : 1;$chars = ($params->get( 'chars' )) ? $params->get( 'chars' ) : 15;$hide_name_field = ($params->get( 'hide_name_field' )) ? $params->get( 'hide_name_field' ) : 0;$menuitem = ($params->get( 'menuitem' )) ? $params->get( 'menuitem' ) : 0;$listid = ($params->get( 'listid' )) ? $params->get( 'listid' ) : 0;$module_description = ($params->get( 'module_description' )) ? $params->get( 'module_description' ) : 'Keep yourself updated with our FREE newsletters now!';$moduleclass_sfx = ($params->get( 'moduleclass_sfx' )) ? $params->get( 'moduleclass_sfx' ) : 'moduletable';/** * Other configs * ------------- * This are not needed to change in most cases */$folder = "components/com_yanc/";$absolute_path = $mosConfig_absolute_path . "/";/** * The language support files. This bit of code is extracted * from the newsletter.php from Yanc component. */global $lang;if(!class_exists('translator')){ require_once( $absolute_path . $folder . 'languages/class.translator.php'); $lang = new translator();}$query = 'SELECT list_name, hidden, id from #__newsletter_letters ';$query .= 'WHERE hidden = 0 ';if($listid != 0){ $query .= 'AND id = ' . $listid . ' '; }$query .= 'ORDER BY id ASC';$database->setQuery( $query );$rows = $database->loadObjectList();?><script type="text/javascript"><!-- function changeAction() { var listid = document.yancMod.listid.value; var name = document.yancMod.name.value;; var email; var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i if (filter.test(document.yancMod.email.value)) { email = document.yancMod.email.value; var a = true; } else { alert("Please enter a valid email address."); var a = true; return false; } if(document.yancMod.yancAction[0].checked == true) { var yancAction = document.yancMod.yancAction[0].value; } if (document.yancMod.yancAction[1].checked == true) { var yancAction = document.yancMod.yancAction[1].value; } var data = 'index.php?option=yanc&Itemid=<?php echo $menuitem; ?>&listid='+ listid + '&action=' + yancAction; if( a ) { document.yancMod.action = data; } return true; }// --></script> <table width="100%" border="0" cellspacing="0" cellpadding="0" class="yanc<?php echo $moduleclass_sfx; ?>"> <tr> <td align="left" valign="top"> <?php echo $module_description; ?> </td> </tr> <tr> <td> <form method="post" action="index.php?option=yanc&Itemid=<?php echo $menuitem; ?>" name="yancMod"> <p> <?php if ( count($rows) > 1 ) { ?> <?php echo $lang->translate('header_title_newsletter'); ?><br /> <select name="listid"> <?php foreach ($rows as $row) { if($chars_limit == 1) { if(strlen($row->list_name) > $chars) { $title = substr( strip_tags( $row->list_name ), 0, $chars ); $title .= "..."; } else { $title = strip_tags($row->list_name); } } else { $title = strip_tags($row->list_name); } echo '<option value="'.$row->id.'">'.$title.'</option>'; } ?> </select><br /><br /> <?php } elseif (count($rows) == 1) { ?> <input type="hidden" name="listid" value="<?php echo $rows[0]->id; ?>" /> <?php }; ?> <?php if($hide_name_field == 1) { ?> <input type="hidden" name="name" value=""> <?php } else { ?> <?php echo $lang->translate('input_name'); ?><br /><input type="text" name="name" class="inputbox" size="15" /> <br /> <?php }; ?> <?php echo $lang->translate('input_email') ?><br /><input type="text" name="email" class="inputbox" size="15" /> <br /> <input name="html" type="checkbox" value="1" /><?php echo $lang->translate('receive_html'); ?><br /> <input name="yancAction" type="radio" value="subscribe" checked="checked"/><?php echo $lang->translate('subscribe'); ?> <input name="yancAction" type="radio" value="unsubscribe" /><?php echo $lang->translate('unsubscribe'); ?><br /> <input type="submit" class="button" value="Envoyer" onclick="return changeAction();"/> </p> </form> </td> </tr> </table>
Dan Posté 19 Janvier 2007 Posté 19 Janvier 2007 Tu parles de quel attribut name ? Il y en a plusieurs Donne-nous un lien vers la page de validation sur le site du W3C
vespa Posté 19 Janvier 2007 Auteur Posté 19 Janvier 2007 Bonjour Dan, Je vais mettre ce site en ligne ce week end et je reviendrai dans ce topic donner l'url de la page de validation sur le W3C alors Toutefois à priori le problème vient de cette ligne : <form method="post" action="index.php?option=yanc&Itemid=<?php echo $menuitem; ?>" name="yancMod">
vespa Posté 19 Janvier 2007 Auteur Posté 19 Janvier 2007 Bonjour Portekoi Je ne pense pas il me dit : there is no attribute "name". ...on="index.php?option=yanc&Itemid=0" name="yancMod">
Dan Posté 19 Janvier 2007 Posté 19 Janvier 2007 L'attribut name pour la balise <form...> a été gardé pour des raisons de compatibilité avec les versions précédentes. Tu devrais plutôt utiliser l'attribut "id" Dan
Leonick Posté 19 Janvier 2007 Posté 19 Janvier 2007 Bonjour, J'utilises ce module sur un site joomla xhtml 1.0 valide et j'ai un problème pour le valider w3c a cause de ce formulaire a cause de l'attribut "name" et je ne sais pas comment faire pour le rendre valide en remplaçant le name par id ?
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant