Gestion de Contenu, de Communauté et de groupes de travail collaboratif - Open Source, français, sécurisé, stable et performant

  • MODULES

    Pour étendre les nombreuses fonctionnalités disponibles de base - modules.npds.org est à votre disposition.

    Des modules complémentaires, une communauté de développeurs active, des forums pour vos questions ... NPDS  est aussi une plateforme de développement !
  • STYLES

    Vous cherchez des thèmes graphiques pour votre portail ou votre communauté : styles.npds.org est à votre disposition.

    Des thèmes du plus simple au plus sophistiqué. Des thèmes facilement modifiables et toujours en Open-Source - Laissez simplement parler votre imagination !
  • BIBLES

    La documentation indispensable pour personnaliser et exploiter toute la puissante de NPDS  est à votre disposition sur bible.npds.org.

    Vous pouvez participer à l'effort de documentation - rien de plus simple : contactez un membre de la Team de développement et nous vous ouvrirons un compte sur le Wiki !
Devenir membre    |    Identifiant : Mot de Passe : -
Au delà de la gestion de contenu 'classique', NPDS met en oeuvre un ensemble de fonctions spécifiquement dédiées à la gestion de Communauté et de groupes de travail collaboratif.
Il s'agit d'un Content & Community Management System (CCMS) robuste, sécurisé, complet, performant et parlant vraiment français.

Gérez votre Communauté d'utilisateurs, vos groupes de travail collaboratif, publiez, gérez et organisez votre contenu grâce aux puissants outils disponibles de base.
  • Multi langues (Français, Anglais, Allemand, Espagnol, Chinois)
  • Respect des standards : UTF8, XHTML, CSS, ...
  • Système de blocs avancés
  • Installation et administration complète et centralisée
  • Editeur HTML intégré
  • Gestionnaire de fichier en ligne
  • Gestion des groupes de membres
  • Ecriture collaborative de documents (PAD)
  • Forums évolués
  • Mini-sites (pour les membres et les groupes de travail)
  • Chat temp réel
  • Système de News et de rubriques complet (édition, révision, publication)
  • ...
Gratuit et libre (Open-Source), développé en PHP, NPDS est personnalisable grâce à de nombreux thèmes et modules et ne requiert que quelques compétences de base.
NPDS Workplace - groupe de travail collaboratif
 NPDS WorkSpace - tous l'univers du travail collaboratif.
Ecrire une "Moulinette" - #3
Posté par : bartok le 03 février 2014

Rechercher dans Php, Mysql, ...

Précédemment, nous avons vu comment construire une moulinette de "dépannage"

Il s'agissait d'utiliser "à chaud" un outil permettant de réparer rapidement un petit dégât ou de faire une petite correction. Un commentaire nous a indiqué que cette méthode n'était pas la seule et que l'on pouvait aussi faire ce travail directement dans phpmyadmin.

Chaque méthode a ses avantages et, pour ma part, j'aime bien tester à blanc avant d'exécuter ce genre de script et je sauvegarde plutôt deux fois qu'une afin de revenir très rapidement en arrière si besoin est. C'est quand c'est chaud que ce genre d'intervention est le plus risqué. Et puis nous nous sommes volontairement placés dans un contexte d'hébergement gratuit.
D'ailleurs, nous ne tarderons pas à évoquer la sécurité :

- Sécurité des données: par exemple ne pas corrompre un champ avec une valeur impropre;
- Sécurité du site: en n'ouvrant pas une faille de sécurité.

De plus, il peut être intéressant de lancer des moulinettes non pas de dépannage mais de maintenance périodique (purge, correction, etc...)

Dans cette troisième étape, nous allons faire en sorte que notre moulinette soit un peu plus universelle. Le but est d'utiliser le même script pour modifier n'importe quelle valeur de n'importe quel champ de n'importe quelle table de la base de données. En plus, nous introduirons un paramètre qui permettra de faire un test "à blanc" (donc sans modification réelle).


www.npds.org Lire la suite... 2 064 caractères de plus | Commentaires ? | Page Spéciale pour impression   Envoyer cet Article à un ami

Ecrire une "Moulinette" - #2
Posté par : bartok le 30 décembre 2013

Rechercher dans Php, Mysql, ...

Notre exemple précédent comportait une petite insuffisance :

Il faut savoir que NPDS utilise une couche d'abstraction SQL qui fonctionne depuis assez longtemps et qui permet à REv13 de supporter les appels natifs MySql et mysqli

Abstraction ... Abstraction, qu’est-ce que ... une ... d'abstraction ?

Explication donnée par François Lasselin (Blog NALIS, Mars 2006):
« Lorsque l'on développe une application Web, les requêtes SQL sont réalisées grâce à des appels natifs (c'est à dire spécifiques à une Base de données).

Par exemple, pour demander à php de se connecter à MySQL on utilisera "mysql_connect()" et "mysql_query()" pour exécuter une requête. Ces appels natifs sont présents dès que l'application accède à une donnée et sont donc disséminés dans l'applications (dans le code source). Dès lors, une telle application est forcément destinée à un SGBD en particulier car modifier chaque appel natif dans le code source est une lourde tache.

C'est pourquoi les choses ont évolué : Aujourd'hui, il est courant d'utiliser une couche d'abstraction pour accéder à un Système de Gestion de Base de Données (SGBD). »


www.npds.org Lire la suite... 830 caractères de plus | Commentaires ? | Page Spéciale pour impression   Envoyer cet Article à un ami

Web Pro : Ecrire une "Moulinette" - #1
Posté par : bartok le 21 décembre 2013

Rechercher dans Php, Mysql, ...

 Lorsque l'on maintient un site internet, il arrive forcément un jour où l'on doit modifier 'en rafale', le contenu d'une donnée située dans une table de la base de données Mysql.

 

La plupart des professionnels de l'informatique en général et des NTIC's, en particulier, savent ce qu'est une moulinette'.

Si c'est votre cas et, qu'en plus, vous êtes un virtuose de php, alors je vous propose de retourner à votre passe-temps préféré car ce qui suit ne vous apprendra rien.

Sinon, voici la suite:

Je ne comprenais pas pourquoi, quelle que soit la valeur indiquée dans les préférences de NPDS, le nombre de news affichées dans la page principale, pour un utilisateur enregistré, se limitait toujours à 10.

Je voulais que les 25 derniers articles soient affichés.

Une petite consultation de la bible de NPDS (CONFIGURATION: Les préférences) m'a permis de trouver la raison...

J'ai appris que la donnée concernée par cette limite était storynum, donnée de la table Users. Lors de la création d'un utlisateur, la donnée storynum est initialisée à 10 et cette valeur prime sur la valeur 5 (indiquée dans les préférences), qui s'adresse aux visiteurs non inscrits.

Il ne me restait plus qu'a corriger la valeur de storynum pour chaque utilisateur.

Ceci dit, comment faire lorsque plus de deux cents utilisateurs sont déjà enregistrés...

Première solution: modifier à la main, le contenu de la donnée en question.

C'est juste long comme un jour sans pastis! (même avec modération...).

Plutôt 'cossard' par nature, j'en ai choisi une autre, moins chronophage...

J'ai opté pour l'écriture d'une moulinette en PHP, qui remplacerait automatiquement le contenu de storynum de chaque élément de la table Users par la valeur 25, pour ce site.

Comme ça a bien marché (en une seconde tout au plus), je propose la méthode à tous ceux qui voudraient bien et qui n'osent pas.

La moulinette en question se découpe en quatre éléments:

A-Déclaration des identifiants de connexion à la base mysql:

moulinette_1.jpg

 

B-Connexion:

moulinette_2.jpg

 

C-Requête de modification:

moulinette_3.jpg

D-Traitement du résultat:

moulinette_4.jpg

 


www.npds.org Lire la suite... 936 caractères de plus | 4 Commentaires | Page Spéciale pour impression   Envoyer cet Article à un ami : Web Pro

Sites Web : Rendre un champ de mon profil visible uniquement pour ... moi ( et les administrateurs)
Posté par : Danyx le 16 décembre 2013

Rechercher dans Php, Mysql, ...

Le but :

Faire en sorte qu'un champ dans une fiche membre soit invisible aux autres membres mais qu'il reste visible pour son propre profil et aussi aux administrateurs.


Pour cela il faut modifier le fichier module/sforme/extend-user/aff_formulaire.php

Si l'on prend comme exemple la section
SHORT-USER et comme exemple le champ "Your Interest" le code donne :

if (isset($user)) $l_cookie=cookiedecode($user);

if ($admin or ($l_cookie[1]==$uname)) {
    $m->add_field('user_intrest', translate("Your Interest"),"$user_intrest",'text',false,150,"","");
}

Cela demande quelques connaissance en PHP mais c'est simple et très efficace.

Fonctionne avec REvolution 11 et REv13 ... et cela doit marcher avec de très nombreuses versions de NPDS


www.npds.org Commentaires ? | Page Spéciale pour impression   Envoyer cet Article à un ami : Sites Web

HTML5 et les formulaires #3
Posté par : developpeur le 08 août 2012

Rechercher dans Php, Mysql, ...

Validation par le navigateur

Afin de vérifier que la validité du format de certaines entrées ou que les champs obligatoires ont bien été remplis avant d'envoyer les données au serveur, HTML5 introduit de nouveaux mécanismes puissants :

Les nouveaux attributs comme required ou pattern, utilisés conjointement avec les pseudoclasses CSS facilitent grandement ces vérifications et l'affichage des informations utiles à l'utilisateur. D'autres techniques plus avancées permettent d'utiliser !! pour définir des règles personnalisées de validation et les messages associés, ou de déterminer si un élément est invalide et pourquoi.

L'attribut required

Si l'attribut required est présent, alors le champ en question doit contenir une valeur lorsque le formulaire est soumis. Voici un exemple de champ input concernant une adresse e-mail obligatoire et permettant de vérifier que l'adresse est bien renseignée et valide selon les critères définis ici :

<input id="email_addr" type="email" name="email_addr" />

L'attribut pattern

L'attribut pattern permet de définir une expression régulière qui sera utilisée pour déterminer si la saisie est conforme au format attendu. L'exemple suivant correspond à un champ texte requis et représentant un code particulier. Dans l'exemple, nous souhaitons que ce code soit composé de trois lettres majuscules suivies de quatre chiffres. Les attributs required et pattern permettent de s'assurer que le champ sera rempli au format souhaité lors de la soumission. Enfin, lors du survol du champ, l'utilisateur verra apparaître un message correspondant à l'attribut title lui indiquant le format attendu.

<input id="part" title="<span style=" type="text" name="SN" />SN - 3 majuscules + 4 chiffres."/>

À partir de l'exemple précédent, on peut ajouter une bordure rouge à l'input tant que le champ ne contient pas de saisie valide. Pour cela, nous ajoutons le code CSS suivant pour créer la bordure rouge si le champ est invalide :

:invalid { border: 2px solid #ff0000; }

L'attribut formnovalidate

L'attribut formnovalidate s'applique aux input et button de type submit. S'il est présent, alors la validation par le navigateur sera désactivée. Dans l'exemple suivant, la validation du formulaire est effectuée en cliquant sur "Submit" mais ne l'est pas en cliquant sur "Save".

<input id="part" title="SN - 3 majuscules + 4 chiffres" type="text" name="SN" />
<input type="submit" value="Save" />
<input type="submit" value="Submit" />


www.npds.org Lire la suite... 1 072 caractères de plus | 1 Commentaire | Page Spéciale pour impression   Envoyer cet Article à un ami

HTML5 et les formulaires #2
Posté par : developpeur le 02 août 2012

Rechercher dans Php, Mysql, ...

De nouveaux attributs concernant les formulaires et leurs éléments ont aussi été introduits par HTML5.

Autofocus : Donne le focus à l'élément au chargement de la page. Autofocus peut être appliqué aux balises input, select, textarea et button.

Placeholder : Donne une indication à l'utilisateur sur le type de donnée à entrer. La valeur de l'attribut placeholder est affichée jusqu'à ce que le champ prenne le focus, ainsi qu'à la perte du focus si le champ est vide. S'applique aux balises input et textarea.

Form :Précise à quel(s) formulaire(s) est (sont) attaché(s) le champ. En utilisant l'attribut form, le champ peut être placé n'importe où dans la page, même en dehors des balises

. Un même champ peut ainsi être associé à plusieurs formulaires.

Required : Attribut booléen indiquant que le champ est obligatoire. Cet attribut sert essentiellement pour les vérifications côté navigateur sans utiliser !javascript!.

Autocomplete : Attribut booléen indiquant si les suggestions de précédentes saisies doivent être affichées. Le navigateur retient les saisies associées à un champ et les propose en suggestion lors de la saisie, cet attribut permet de désactiver cette fonctionnalité.

Pattern : Permet de préciser une expression régulière que doit satisfaire la saisie. Lorsque vous utilisez cet attribut, n'oubliez pas d'ajouter un attribut title pour indiquer à l'utilisateur le format attendu.

Dirname : La valeur de cet attribut permet d'envoyer à la soumission du formulaire un paramètre indiquant le sens d'écriture. Le sens d'écriture peut être "ltr" ou "rtl". Cette valeur est envoyée avec les autres champs du formulaire si l'attribut est précisé.

Novalidate : Désactive les vérifications du formulaire avant de l'envoyer.

Formaction : Permet de modifier l'attribut action du formulaire. Cet attribut est valable pour les éléments input (de type submit) et button.

Formenctype : Permet de modifier l'attribut enctype du formulaire. Cet attribut est valable pour les éléments input (de type submit) et button.

Formmethod : Permet de modifier l'attribut method du formulaire. Cet attribut est valable pour les éléments input (de type submit) et button.

Formnovalidate : Permet de modifier l'attribut novalidate du formulaire. Cet attribut est valable pour les éléments input (de type submit) et button.

Formtarget : Permet de modifier l'attribut target du formulaire. Cet attribut est valable pour les éléments input (de type submit) et button.


www.npds.org Lire la suite... 1 318 caractères de plus | Commentaires ? | Page Spéciale pour impression   Envoyer cet Article à un ami

HTML5 et les formulaires #1
Posté par : developpeur le 28 juillet 2012

Rechercher dans Php, Mysql, ...

HTML5 introduit cinq nouveaux éléments de formulaire.

Progress : Représente la progression d'une opération. Par exemple, l'élément progress peut correspondre à la progression de l'envoi d'un fichier.

Meter : Représente une mesure scalaire dans un intervalle déterminé. L'élément meter peut servir par exemple à représenter une valeur comme une température ou un poids.

Datalist : Représente un ensemble d'options prédéfinies qui peuvent être utilisées avec le nouvel attribut list de la balise input pour créer un menu déroulant de valeurs possibles. Lorsque l'input lié à datalist prend le focus, les suggestions correspondant aux options apparaissent.

Keygen : Permet la génération de clés. Lorsque le formulaire est soumis, la clé privée est stockée par le navigateur et la clé publique est envoyée au serveur.

Output : Affiche le résultat d'un calcul. Peut par exemple servir à afficher la somme de deux champs numériques.


www.npds.org Lire la suite... 2 057 caractères de plus | Commentaires ? | Page Spéciale pour impression   Envoyer cet Article à un ami

Un serveur web pour vos tests
Posté par : colonelwog le 08 novembre 2010

Rechercher dans Php, Mysql, ...
Bonjour à tous voici une info  pour les nouveaux qui veulent un serveur de test avant d'envoyer leur site en production.

Je vous présente UNIFORMSERVER (j'ai trouver par hasard ce serveur par hasard sur la toile sur source-forge) :

uniformserver


c'est un serveur web très complet et sécurisé il s'installe très facilement y a qu'à dé-zipper comme dirai l'autre ...
ensuite mettre la traduction en "french" pour les anti anglophones .


là aussi yaka !!!

ensuite cliquer sur Run_pre_check.exe pour savoir si tout est ok pour le lancer ,et pour lancer suffit de cliker sur Start ^  .

de là dans l'icône systray dans la barre de tache suffit de faire install and run service et c'est parti après a vous de jouer .

comparer à wampserver ce serveur est d'une facilité d'installation, de plus pas besoin de chercher à activé tel ou tel extension elles sont par défaut avec un phpinfo inclut pour visionner tout cela pratiquement.

Et point essentiel : il est gratuit !!!

Alors a vos clavier NPDSiens .

www.npds.org Commentaires ? | Page Spéciale pour impression   Envoyer cet Article à un ami

Page Suivante

Temps : 0.071 seconde(s)