|
lactique 469
| Posté : 03-08-2005 01:52
Salut les amigos.
Voial j'me suis mis a Sform forcément, j'ai pas fait dans le grandiose je suis prudent .
Me voila avec un dossier X dans le rep modules contenant un X.php faisant appel au rep X mais qui lui est dans le dossier SFORM.
Ce dernier donc, contient une copie de contact.php et formulaire.php renomés et rectifiés dans les rêgles de l'art.
Jusque la tout va bien.
Formulaires actifs sans problemes (si ce n'est le format du mail reçu, sans lignes, en simple texte n'est pas tres visuel donc, mais ça on s'en chargera ultérieurement)
Et Bibi se lance dans l'aventure du champs obligatoire genre user.php et l'acceptation de la charte sinon refus de soumission.
ET la ya un HIC, ce champs ajouté est une vrai passoire, certes je reçois le mail et je peu savoir si ça a été accepté mais c'est surrment possible de ne rien faire si cette checkbox n'est pas true
Un precedent sujet de l'année derniere ne m'avance pas plus. Désolé Dev.
Une copie du code ? ok
------------------------------------------------------------------
retouche.php (modules/sform/retouche/retouche.php)
global $ModPath, $ModStart;
$sform_path="modules/sform/";
!include!_once($sform_path."sform.php");
global $m;
$m=new form_handler();
//********************
$m->add_form_title("CONTACT"); <<---- la j'ai un doute je laisse contact comme sur le fichier d'origine si je modifie ça chaneg rien de toute façon.
$m->add_form_method("post");
$m->add_form_check("true");
$m->add_mess(" * désigne un champ obligatoire ");
$m->add_submit_value("ok");
$m->add_!url(!"modules.php");
$m->add_field("ModStart","",$ModStart,'hidden',false);
$m->add_field("ModPath","",$ModPath,'hidden',false);
< br />
/************************************************/
!include!($sform_path."retouches/formretouches.php");
/************************************************/
// Manage the <form>
switch($ok) {
case 'Soumettre':
if (!$sformret) {
$m->make_response();
$message=$m->aff_response("class=\"LIGNA\"","not_ec ho","");
global $notify_email;
$message="<html><body>".$message."</body></ html>";
send_email($notify_email, $m->title,$message,"","","html");
opentable();
echo "<p align=\"center\">Votre demande est transmise aux administrateurs. Vous recevrez une réponse dans les plus brefs délais</p>";
closetable();
break;
} else {
$ok="";
}
default:
echo $m->print_form("class=\"LIGNA\"");
break;
}
-----------------------------------------------------------------
formretouche.php (modules/sform/retouche/formretouche.php)
$m->add_form_field_size(50);
$m->add_title("<h3>Bordereau de commande - retouches photos.</h3>");
$m->add_field('nom', "Nom / Raison Sociale",$nom,'text',true,150,"","");
$m->add_field('ad1', "Adresse",$ad1,'text',false,150,"","");
$m->add_field('ville', "Ville",$ville,'text',false,150,"","");
$m->add_field('cpt', "Code Postal",$cpt,'text',false,5,"","0-9");
$m->add_extra("<tr><td colspan=2> </td></tr>");
$m->add_field('email', "Adresse mail",$email,'text',true,255,"","email");
$m->add_checkbox('retouches',"J'ai pris connaissance de la nature du service et accepte ses conditions.", "oui", true, false);
$m->add_extra("<tr><td colspan=2> </td></tr>");
$m->add_field('des', "Description de vôtre requete:",$des,'textarea',true,400,10,"","");
$m->add_comment("<center>Ces informations ne seront pas divulgués, vous disposez en outre, d'un droit permanent de modification.");
------------------------------------------------------------- |  Profil E-mail www Citation
|
|
lactique 469
| Posté : 03-08-2005 01:56
il est a noté que les champs obligatoir d'origine réagissent bien ! avec la fenetre alert qui s'affiche. mais pas mon nouveau champs "acceptation checkbox" pourtant directement récupéré du code de user.php.
ya surement un pendant a corriger dans un autre fichier pour prevenir de ce test mais je ne vois pas ou. |  Profil E-mail www Citation
|
|
developpeur 24581
| Posté : 09-08-2005 22:24
une checkbox ne peut pas être obligatoire en fait. Il faut gérer cela dans le script (comme dans users.php) |  Profil E-mail www Citation
|
|
lactique 469
| Posté : 09-08-2005 23:23
Ok il me reste donc a trouvé ou est le script qui verifie cette chec box alors...
je promet rien..
Merci Dev |  Profil E-mail www Citation
|
|
GiamDoc 7063
| |
lactique 469
| |
GiamDoc 7063
| Posté : 11-08-2005 08:59
enlève tes lunettes!
dans user.php
function confirmNewUser($uname, $name, $email, $url, $user_avatar, $user_icq, $user_occ, $user_from, $user_intrest, $user_sig, $user_viewemail, $user_aim, $user_yim, $user_msnm, $pass, $vpass,$user_lnl,$C1,$C2,$C3,$C4,$C5,$C6,$C7,$C8,$M1,$M2,$T1,$T2,$B1) {
global $smilies, $short_user, $minpass, $memberpass;
$uname=filter_text($uname);
if ($user_viewemail!=1) {$user_viewemail="0";}
$stop=userCheck($uname, $email);
if ($memberpass) {
if ((isset($pass)) and ("$pass" != "$vpass")) {
$stop="<p align=\"center\">".translate("Both passwords are different. They need to be identical.")."</p><br />";
} elseif (strlen($pass) < $minpass) {
$stop="<p align=\"center\">".translate("Sorry, your password must be at least")." <b>$minpass</b> ".translate("characters long")."</p><br />";
}
}
if (!$stop) {
!include!("header.php");
OpenTable();
!include! ("modules/sform/extend-user/aff_extend-user.php");
hidden_form();
global $charte;
if (!$charte) {
  ;echo "<p align=\"center\">".translate("You must accept the terms of use of this website")."<br /><br />";
  ;echo "<input type=\"hidden\" name=\"op\" value=\"only_newuser\"><input class=\"BOUTON_STANDARD\" type=\"submit\" value=\"".translate("Go Back")."\"></p></form>";
} else {
  ;echo "<input type=\"hidden\" name=\"op\" value=\"finish\"><input class=\"BOUTON_STANDARD\" type=\"submit\" value=\"".translate("Finish")."\"></form>";
}
CloseTable();
!include!("footer.php");
} else {
message_error($stop,"new user");
}
}
dans modules/sform/extend-user/formulaire.php
// --- CHARTE du SITE
$m->add_checkbox('user_lnl',translate("Register to web site' mailing list"), "1", false, true);
$m->add_checkbox('charte','<a href="static.php?op=charte.html" target="_blank" class="ROUGE">'.translate("You must accept the terms of use of this website").'</a>', "1", false, false);
// --- CHARTE du SITE
|  Profil E-mail www Citation
|
|
lactique 469
| Posté : 12-08-2005 01:21
Oui merci les fichiers font pas 3km de long et j'ai 10/10 aux 2 yeux.
Par contre si tu comprends le code de user.php je veux bien un déchryptage..
$charte je sais pas ou il est créer, !$stop non plus alors je comprend pas la condition.
Dans hidden_form() je ne voit pas la gestion de $charte non plus.
|  Profil E-mail www Citation
|
|
GiamDoc 7063
| |
lactique 469
| |
GiamDoc 7063
| |
GiamDoc 7063
| Posté : 13-08-2005 09:38
Tu peux vérifier si checkbox cochée ou pas comme cela
/*pour tester si la checkbox a été cochée*/
if(isset($_POST['checkbox']))
{
echo "X";
}
else
{
echo " ";
}
|  Profil E-mail www Citation
|
|
lactique 469
| Posté : 14-08-2005 23:43
Ok Diam ça marche pour le test reste a l'integré de façon stable, je ne comprend pas le code remanié de l'auteur de SFORM et c'est dure donc sans comprendre ou quoi ce decide de remanier soit meme.
Je choppe une belle erreur mysql quand je met mon test tel quel.
ça m'est déja arrivé ça arrive a tous je crois quand on ajoute un hack qui utilise des variables.
Pour mon cas quand je merde dans le code, mes sujets ne sont plus accessibles, à la plave on a un warning mainfile.php not valid mysql result, et la colone "derniere contrib" du forom ets pleine de "ERROR"
Je ne sais donc pas d'ou vient mon erreur mais je réinjecte ma sauvegarde BDD et tout rentre dans l'ordre (apres suppression de mon code php merdeux )
Sans faire gaffe il doit y avoir eu une insertion dans la base qui décale d'autres resultat et npds s'en sort plus. Enfin c'est comme ça que je l'interprette pour le moment.
je continue les tests. |  Profil E-mail www Citation
|
|
developpeur 24581
| Posté : 15-08-2005 22:10
l'auteur de sform c'ets moi ... et tu analyse correctement ton erreur je dirais |  Profil E-mail www Citation
|
|
lactique 469
| Posté : 16-08-2005 01:38
Alors je rectifie je ne comprend pas le code remanié de l'auteur "génial" de ce "fabuleux" SFORM
Il me reste a redirigé l'erreur vers le diagnostique d'erreur justement. Soit l'alerte pop up soit le message classique comme pour une mauvaise entrée de mail.
Pour le moment c'est juste: If c'est bon ça affiche "OKOKOKOKOKOKO", If c'est pas bon ça affiche "NONONONONON" en plus sur la page d'apres. Ca réagit donc bien à la checkbox, mai sc'est tout.
Je suis sur module la alors j'ai pas été plus profond, on en reparle plus tard.
Bonne nuit |  Profil E-mail www Citation
|
|
Aller à la page : [ 1 | 2 ] |