logo

NPDS : Gestion de contenu et de communauté


Content & Community Management System (CCMS) robuste, sécurisé, complet, performant, parlant vraiment français, libre (Open-Source) et gratuit.
18 visiteur(s) et 0 membre(s) en ligne.
Activité du Site

Pages vues depuis 25/05/2001 : 106 574 998

  • Nb. de membres 8 693
  • Nb. d'articles 1 695
  • Nb. de forums 26
  • Nb. de sujets 8
  • Nb. de critiques 92

Top 10  Statistiques

Index du forum »»  SFORM »» Un vrai tuto Sform

Nouveau sujet
 Un vrai tuto Sform#19965Répondre

5Contributeur(s)
developpeurAnonymeGiamDocGeoderleloup31
3 Modérateur(s)
developpeurjpbJireck
Anonyme Anonymeicon_post
L'un d'entre vous serait il asser disponible pour prendre le temps de faire un vrai tutorial Sform ?

non, par ce qu'entre toutes les mini info qu'on recoupe ca et la en lisant les 7 pages de post (dont certains ont plus de 3 ans quand même) on ne s'en sort plus.

Et il manque pas mal d'info quand même ;)

L'outils a l'air relativement puissant, mais sans mode d'emploi, c'est trés décourageant.

Rien que de penser a une belle doc Sform, j'en bavouille, par ce qu'en attendant, je me tapes toujours mes form à la main, vu que je ne parviens pas à utiliser l'ami Sform :paf
developpeur developpeuricon_post
Tu veux savoir quoi exactement ?
Anonyme Anonymeicon_post
Houla, vaste question.
Bien trop longue pour que j'y réponde completement.
Le soucis quand on connait trop bien quelque chose, c'est qu'on ne concoit pas que certains s'y mettent juste, et que justement, ils ne peuvent pas cibler leurs questions ;)

Un petit exemple avec une création de Sform, ou on le place, et comment. A quel endroit on l'appelle, avec quelle URL, quel est le résultat, que veut dire la variable $m, ...?

Enfin, un tuto quoi ;)
(oui je sais, je suis quelqu'un de contraignant :=! )
developpeur developpeuricon_post
Le module contact est un bon début car il est très simple de mise en oeuvre non ?
Anonyme Anonymeicon_post
Le module contact comme tudit ne comporte aucune documentation, c'est juste un bout de code basique. Youpi

Alors ok, il est facile a lire, mais ce n'est pas pour autant que l'on comprend le principe de fonctionnement de Sform
Anonyme Anonymeicon_post
Par exmple, quelque chose de ce type la serait trés trés agréable, et augmenterais considérablement la facilité de prise en main de l'outils:

add_field:
1. Le premier champ de chaque instruction représente le nom de la variable sous la forme 'nomdevariable'.
2. Le 2eme champ représente la chaine de caractere qui sera affichée à l'écran. A noter qu'il faut séparer les différentes lague par des balises de la forme [french] [/french] suivant la langue dans laquelle est le texte saisi.
3. Ce champ comporte le nom de la variable sous la forme $nomdevariable
4. Ici est spécifié le type de variable saisie (text, textarea, ...)
5. La valeur "true", en 5eme position, signifie que le champ est obligatoire.
6. L'entier en 6eme position est la longueur maximale du champ (en caractere). Elle permet de se protéger des requetes SQL
7. ?
8. ?


Et ce pour chaque instruction.
Anonyme Anonymeicon_post
Egalement dans le contact.php (relativement dépourvu de commentaire :-( ):


    case 'Soumettre':
    case 'Submit':
        if (!$sformret)
        {


D'ou vient la variable $sformret ? que fait elle ?

Je flood un peu, mais bon, des que je trouve un truc que je ne comprend pas, je le pose, ca aidera peut etre a faire une doc correcte (j'en rédige une en même temps, au fur et a mesure de mes découvertes)
GiamDoc GiamDocicon_post

  function error($ibid, $car) {
    global $sform_path;
    //echo "<LINK rel=\"StyleSheet\" HREF=\"".$sform_path."sform.css\" TYPE=\"text/css\">";
    echo "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"1\" class=\"LIGNA\"><tr><td>";
    echo "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"2\" class=\"LIGNB\">";
    echo "<tr class=\"LIGNA\"><td>";
    echo "champ : $ibid => valeur non conforme : ".stripslashes($car)."<br /><br />";
    if ($this->form_method=="") {$this->form_method="post";}
    echo "<form action=\"".$this->url."\" method=\"".$this->form_method."\" name=\"".$this->form_title."\" enctype=\"multipart/form-data\">";
    echo $this->print_form_hidden();
    echo "&nbsp;<input class=\"BOUTON_STANDARD\" type=\"submit\" name=\"sformret\" value=\"Retour\"></form>";
    echo "</td></tr></table>";
    echo "</td></tr></table>";
  }


Anonyme Anonymeicon_post
Génial, du code brut sans commentaire -_-
GiamDoc GiamDocicon_post
bon allez me gavent ces anonymes :eboulet

echo " <input class=\"BOUTON_STANDARD\" type=\"submit\" name=\"sformret\" value=\"Retour\"></form>";



sformret = value=\"Retour

Faut apprendre à lire! perso je ne vois pas ce qu'il y aurait à commenter la dessus.
GiamDoc GiamDocicon_post
Dev pourquoi tu commentes pas chaque variable? hein dit, pourquoi?
Anonyme Anonymeicon_post
Vu le nombre de question que j'avais posé, c'était pas évident déja de savoir a laquelle tu répondais.
Alors en plus en ayant aucune indication sur l'emplacement de la réponse dans le tas de code, forcément, on voit rien.

Cela dit, merci, $sformret est donc la valeur du bouton de validation
GiamDoc GiamDocicon_post
Toi / L'un d'entre vous serait il asser disponible pour prendre le temps de faire un vrai tutorial Sform ?
Dev / Tu veux savoir quoi exactement ?
Un petit exemple avec une création de Sform, ou on le place, et comment. A quel endroit on l'appelle, avec quelle URL, quel est le résultat, que veut dire la variable $m, ...?
Dev/Le module contact est un bon début car il est très simple de mise en oeuvre non ?
toi / ta réponse: Alors ok, il est facile a lire, mais ce n'est pas pour autant que l'on comprend le principe de fonctionnement de Sform ( ben c'est du php)
toi/ D'ou vient la variable $sformret ? que fait elle ?
Moi /
Citation : GiamDoc



  function error($ibid, $car) {
    global $sform_path;
    //echo "<LINK rel=\"StyleSheet\" HREF=\"".$sform_path."sform.css\" TYPE=\"text/css\">";
    echo "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"1\" class=\"LIGNA\"><tr><td>";
    echo "<table width=\"100%\" border=\"0\" cellspacing=\"1\" cellpadding=\"2\" class=\"LIGNB\">";
    echo "<tr class=\"LIGNA\"><td>";
    echo "champ : $ibid => valeur non conforme : ".stripslashes($car)."

";
    if ($this->form_method=="") {$this->form_method="post";}
    echo "<form action=\"".$this->url."\" method=\"".$this->form_method."\" name=\"".$this->form_title."\" enctype=\"multipart/form-data\">";
    echo $this->print_form_hidden();
    echo " <input class=\"BOUTON_STANDARD\" type=\"submit\" name=\"sformret\" value=\"Retour\"></form>";
    echo "</td></tr></table>";
    echo "</td></tr></table>";
  }





toi/ (Là ! c'est pas une question! mais une remarque.)Génial, du code brut sans commentaire -_-
toi / c'était pas évident déja de savoir a laquelle tu répondais. ( ben juste à ta dernière question ! si tu sais pas lire 15 lignes, OUVATON!

Message édité par : GiamDoc / 17-05-2006 11:45

Anonyme Anonymeicon_post
Pour le moment j'en suis a ca, si y'a des trucs faut, corrigez moi, et si vous avez les réponses sur les "?" que j'ai laisser, je les veux bien aussi




Manuel d'utilisation de Sform

1: Les instructions

    A placer dans le 'formulaire.php'
    
        add_extra:
            Les instructions add_extra permettent de rajouter directement des chaines de caractere dans le formulaire. On peut donc rajouter directement du code HTML dans ces champs, il sera transmis tel quel.
            A noter qu'il semblerait que ces instructions ai un emplacement réservé en haut de la page de sorte qu'elles s'affichent toujours en haut de page, avant tout les autres champs.
            
        add_field:
            1. Le premier champ de chaque instruction représente le nom de la variable sous la forme 'nomdevariable'.
            2. Le 2eme champ représente la chaine de caractere qui sera affichée à l'écran. A noter qu'il faut séparer les différentes langues par des balises de la forme [french] [/french] suivant la langue dans laquelle est le texte saisi.
            3. Ce champ comporte le nom de la variable sous la forme $nomdevariable
            4. Ici est spécifié le type de variable saisie (text, textarea, ...)
            5. La valeur "true", en 5eme position, signifie que le champ est obligatoire.
            6. L'entier en 6eme position est la longueur maximale du champ (en caractere). Elle permet de se protéger des requetes SQL
            7. ?
            8. Ce champ permet de délimiter les caracteres qui peuvent être utilisés. Par exemple, un "0_9" signifie que l'on ne pourra utiliser dans ce champ que des caractères qui sont compris entre 0 et 9 inclus.
            
            remarque: les champs 6, 7 et 8 sont optionnels
            
        add_comment:
            Est utilisé pour rajouter des commentaires dans le code. Il semble qu'on puisse également y inclure des balises HTML, mais je n'ai pas bien compris le principe de fonctionnement.
    
        add_radio:
            Pour utiliser cette instruction, vous devez d'abord avoir créer une variable de type "array" qui comprendra les différents choix que vous voudrez avoir.
            1: Le nom de la variable qui sera retournée par la fonction.
            2: La chaine de caractère qui sera affichée avant le choix (généralement la question)
            3: Le nom de la variable de type array que vous avez créé auparavant et qui comporte vos différents choix
            4: Bolléen, True ou False afin de savoir si la case doit être cochée par défaut. (False pour qu'elle ne le soit pas)

        add_select:
            De la même facon que pour la fonction "add_radio", vous devez avoir créer une variable de type array pour utiliser cette fonction.
            1: Nom de la variable qui sera retournée
            2: Chaine de caractere qui sera affichée
            3: Nom de la variable de tpye array que vous avez créé auparavant.
            4: ?
            5: Nombre de ligne qui sera affiché (si le champ n° 6 est a False)
            6: ?
            
            

    Instructions à placer dans le 'contact.php'
    
        add_form_tittle:
            Comme son nom l'indique, cette insctuction prend en paramètre une chaine de caratere, sous la forme "chaine", qui sera le nom du formulaire.
            
        add_form_method:
            Equivalent du tag method="" en HTML
            
        add_form_check:
            Permet de déterminer quelle bolleen permettra de désigner les champs obligatoires.
            Par exemple, si on place un 'add_form_check("true")', tout les add_field qui auront en 6eme position le booléen 'true' seront vérifié, et si l'un d'eux n'est pas renseigné, le message entré dans le champ 'add_mess' sera affiché dans une boite de dialogue.
            Si l'un de ces champs n'est pas rensigné, la page ne sera pas validée.
            
        add_mess:
            Prends en parametre une chaine de caractere qui s'affichera si l'un des champs spécifiés obligatoire n'est pas renseigné.
            A noter que cette instruction est sujette à la même synthaxe que le 2eme champ de l'instruction add_field

        add_submit_value:
            Equivalent du tag submit="" en HTML
            
        add_url:
        
        add_field:


2: Les variables

    Sformret:
        Cette variable est la valeur bolleenne du bouton de validation du formulaire. Je suppose pour le moment qu'elle vaut "true" lorsque le forumlaire est validé par l'utilisateur.

8-)
developpeur developpeuricon_post
Manuel d'utilisation de Sform

1: Les instructions

A placer dans le 'formulaire.php'

add_extra:
Les instructions add_extra permettent de rajouter directement des chaines de caractere dans le formulaire. On peut donc rajouter directement du code HTML dans ces champs, il sera transmis tel quel.
A noter qu'il semblerait que ces instructions ai un emplacement réservé en haut de la page de sorte qu'elles s'affichent toujours en haut de page, avant tout les autres champs.
==> attention SFORM manipule des tableaux pour sa présentation ... donc les add_extra doient tenir compte de cela (balise TD par exemple)

add_field:
1. Le premier champ de chaque instruction représente le nom de la variable sous la forme 'nomdevariable'.
2. Le 2eme champ représente la chaine de caractere qui sera affichée à l'écran. A noter qu'il faut séparer les différentes langues par des balises de la forme [french] [/french] suivant la langue dans laquelle est le texte saisi.
3. Ce champ comporte le nom de la variable sous la forme $nomdevariable
4. Ici est spécifié le type de variable saisie (text, textarea, ...)
5. La valeur "true", en 5eme position, signifie que le champ est obligatoire.
6. L'entier en 6eme position est la longueur maximale du champ (en caractere). Elle permet de se protéger des requetes SQL
7. utilisé dans les type TEXTAREA (ligne ou colonne je sais jamais ...)
8. Ce champ permet de délimiter les caracteres qui peuvent être utilisés. Par exemple, un "0_9" signifie que l'on ne pourra utiliser dans ce champ que des caractères qui sont compris entre 0 et 9 inclus.

remarque: les champs 6, 7 et 8 sont optionnels

add_comment:
Est utilisé pour rajouter des commentaires dans le code. Il semble qu'on puisse également y inclure des balises HTML, mais je n'ai pas bien compris le principe de fonctionnement.

add_radio:
Pour utiliser cette instruction, vous devez d'abord avoir créer une variable de type "array" qui comprendra les différents choix que vous voudrez avoir.
1: Le nom de la variable qui sera retournée par la fonction.
2: La chaine de caractère qui sera affichée avant le choix (généralement la question)
3: Le nom de la variable de type array que vous avez créé auparavant et qui comporte vos différents choix
4: Bolléen, True ou False afin de savoir si la case doit être cochée par défaut. (False pour qu'elle ne le soit pas)

add_select:
De la même facon que pour la fonction "add_radio", vous devez avoir créer une variable de type array pour utiliser cette fonction.
1: Nom de la variable qui sera retournée
2: Chaine de caractere qui sera affichée
3: Nom de la variable de type array que vous avez créé auparavant.
4: ?
5: Nombre de ligne qui sera affiché (si le champ n° 6 est a False)
6: ?



Instructions à placer dans le 'contact.php'

add_form_tittle:
Comme son nom l'indique, cette insctuction prend en paramètre une chaine de caratere, sous la forme "chaine", qui sera le nom du formulaire.

add_form_method:
Equivalent du tag method="" en HTML

add_form_check:
Permet de déterminer quelle bolleen permettra de désigner les champs obligatoires.
Par exemple, si on place un 'add_form_check("true")', tout les add_field qui auront en 6eme position le booléen 'true' seront vérifié, et si l'un d'eux n'est pas renseigné, le message entré dans le champ 'add_mess' sera affiché dans une boite de dialogue.
Si l'un de ces champs n'est pas rensigné, la page ne sera pas validée.

add_mess:
Prends en parametre une chaine de caractere qui s'affichera si l'un des champs spécifiés obligatoire n'est pas renseigné.
A noter que cette instruction est sujette à la même synthaxe que le 2eme champ de l'instruction add_field

add_submit_value:
Equiv alent du tag submit="" en HTML

add_url:

add_field:


2: Les variables

Sformret:
Cette variable est la valeur bolleenne du bouton de validation du formulaire. Je suppose pour le moment qu'elle vaut "true" lorsque le forumlaire est validé par l'utilisateur.
==> C'est en fait la même chose que dans un formulaire classique / ce n'est donc pas un booléen

PS : ta doc est globallement bonne mais demande à être relue ++ / Avec SFORM il y a quand même un PDF d'explication qui doit pouvoir servir de base de doc non ?

Bon boulot :-)
Geoder Geodericon_post
hmmm, je n'ai pas le pdf dans la version récupérée (et, ayant discuté avec un autre utilisateur, il semble que j'ai réussi un exploit, a savoir, récupérer une version de NPDS sans aucunes des docs pdf fournies avec (forcément, j'avais du mal ...) )
leloup31 leloup31icon_post
tu l'a trouvé ou ta version npds?
Geoder Geodericon_post
Ca c'est la bonne question, et j'arrive pas à trouver la réponse.
J'ai du fouiller un peu par ce que le lien du site plantais, et je me suis retrouvé avec 3 install différentes sous la mains à tester.
Mais c'est rentré dans l'ordre la, j'ai des docs.

logo