Easy Vote – Php/Mysql

Voici un extrait de code en PHP réalisé lors de ma troisième année.

Création de sondage en ligne / Edition / Suppression.

Gestion des votes par Cookie ( Ecriture / Lecture ).

Le tout est connecté à une petite base de données en Mysql.

EasyShop -> Publication de mon Rapport de Fin d’études

Vous trouverez en annexe une version de mon travail final au format word.

Celle-ci reprend les différents éléments d’analyse qui m’ont mené à la réalisation du projet.



Easy Shop -> Portage Java

Afin de m’améliorer en programmation dans le langage JAVA, j’ai donc décidé de porter la version de Easy Shop actuel vers du JAVA.

Dans quel but ?
-> Me refaire la main au JAVA ( ça revient viiiiite 😀 )
-> Porter l’application sous LINUX ou autre terminal.
-> Développer une interface entièrement tactile 🙂 ?

Un petit screenshot pour commencer, le listing clients et l’édition clients sont presque terminés.

La connection à Sqlserver 2008 en java ne semble poser aucun problème pour l’instant 😉 Pourvu que ça dure 😮

Easy Valves V.2.0

Easy Valves V2.0

Voici un de mes petits projets JAVA ( Servlets ) développé pour projet de fin d’année en 3ème Graduat.

En quelques mots : une gestion complète utilisateurs ( Profs, Elèves ), dépots de fichiers et création / édition des différents messages pour les valves.

Les utilisateurs ont accès à des sections définies par les professeurs !

Je poste pour l’instant le fichier PDF concernant mon travail et quelques captures d’écrans, le temps pour moi de relancer un serveur apache avec les plugins nécessaires à faire tourner cette démo.

Le projet passera en open source certainement plus tard.

Acceuil
>> Télécharger le PDF -> 2008-Valves-Esa.pdf

EasyShop Website

Le développement du site internet lié au logiciel EasyDomo :

Fonctionnalités :

– Authentification via login / Mot de passe ( Voir section E-commerce dans le logiciel EasyShop ).
– Ajouts d’articles au panier
– Validation de la commande
– Suivi de la commande par email
– Paiement en ligne ( Module en cours paiement via Ogone ou PayPal ).
– Visualisation des différents produits par catégories / Sous-catégories

Easy Shop V1.0

01109_foggyfrost_1680x1050

Easy Shop

Qu’est ce que EasyShop ?

EasyShop a été développé dans le but d’être déployé dans plusieurs cadres d’utilisations :

1) Un logiciel de facturation ( Orientation : petite / grosse enseigne – secteur commercial ).

2) Logiciel de Facturation pour grossiste ( Fournisseur de matériel, Offre de prix, Commande Client, Facturation, Gestion des commandes Fabricants / Back Order / Delivery Date … )

Pourquoi avoir développé une solution complète comparée aux solutions actuelles disponibles sur le marché ?

La plupart des logiciels comptables sur le marché sont très coûteux et peu adapté aux besoin requis. Dans le cadre de mon travail de fin d’études j’ai donc cherché a développer un logiciel le plus complet et souple possible !

Les points forts :
– Haut degré de paramétrages assistés
– Le contrôle des ventes ( Suivi des ventes de chaque vendeur ).
– Les statistiques de ventes sous formes de graphique ( Statistiques par produit/client )
– La puissance de sqlserver ( rapidité, et charges supportées ).
– Envois des offres de prix, commandes, factures ou tout autre document par email.

Voici quelques captures d’écrans du logiciel à l’heure actuelle :

Login EasyShop

Ecran principal du logiciel EasyShop


Ecran principal du logiciel EasyShop



Ecran principal du logiciel EasyShop




Impression Dynamique

Easy Domo

rosebase

Qu’est ce qu’Easy Domo ?

Utilisant un système de sécurité marmitek pour la sécurité de mon domicile, j’ai trouvé le logiciel Active Home Pro fournit par le constructeur fort léger.

J’ai donc décidé de coller un logiciel programmé en C# .Net derrière celui-ci dans le but de pouvoir effectuer n’importe qu’elle action en fonction de l’intrusion détectée ou encore effectuer certaines actions suivant le statut d’un détecteur.

Le principe -> ActiveHomePro détecte un changement de statut sur un détecteur -> Action via Trigger -> Envoi d’un paramètre à EasyDomo ( 1 – false, 1 – true ) – Détecteur 1 statut fermé, Détecteur 1 statut ouvert.

Quel en est le but ?

Obtenir une surveillance à distance complète !

Comment va-t-on gérer tout çà ?

EasyDomo se divise en 2 Versions : Une serveur et l’autre Client ( Client TCP/IP, Multi client, Multi IP, le tout à travers internet 🙂 )

Une action est détectée sur le programme SERVEUR EasyDomo -> On répercute l’information au CLIENT Easydomo.

De cette manière, je peux suivre le statut de mon alarme à distance et effectué une action particulière sur les postes clients (Exemple : Mon nabaztag me signale :  » Attention Intrusion détectée dans la zone numéro x « ).

2 ème exemple :
Je peux désactiver mon alarme ou armer mon alarme grâce à easydomo à distance ( Utilisation des DLL approprié pour envoyer la bonne information via le module X10 ).

3 ème exemple :
Nous pouvons vérifier les éventuelles « alertes » grâce à la gestion des logs sur le serveur. Le système a été désarmé à 11h12 et à ensuite été réarmé à 13h23.

Module Fibaro problème de lien / pairing / link / not included

fgf-212_1

Petite astuce si votre clé aeon labs zwave zw090 ne se lie plus à votre module fibaro.

Dans domoticz, utilisez l’option remove node :

Pressez 3x rapidement le bouton B du module fibaro, ensuite pressez 3x plus lentement.

Domoticz réagira en vous alertant que votre module a bien été retiré de votre noeud.

Il ne vous reste plus qu’à réapprendre via l’option add node le module.

Même principe pressez 3x le boutton B lentement pour ma part et domoticz verre de nouveau votre module ! 🙂

A noter pour la suite : ne jamais faire exclure un device xD

Amusez-vous bien 🙂

Siri allume la lampe du salon 😀

Symlink / Udev /dev/device

Fixer le préfixe device attribué à un périphérique usb sous linux :

Créer un fichier dans le repertoire /etc/udev/rules.d/99-usb-serial.rules

Récupérer les informations de votre matériel grâce à la ligne suivante :
udevadm info -a -n /dev/ttyUSB0 | grep ‘{serial}’ | head -n1

Ensuite vous pouvez ajouter la reconnaissance du matériel dans le fichier rules.

Example :

SUBSYSTEM== »tty », ATTRS{idVendor}== »0403″, ATTRS{idProduct}== »6001″, ATTRS{serial}== »XXX », SYMLINK+= »plugwise1″

De cette manière udev attribuera plugwise1 à la clé usb correspondant au sérial renseigné / id vendor …

=> /dev/plugwise1 🙂

Autorisation Apache device Usb – Permission denied

Error /dev/ttyUSB0 Permission Denied.

Lors de l’exécution d’une commande bash / shell en php, Apache se voit refuser l’accès au périphérique système.

Cette sécurité appliqué par le serveur se base sur le groupe auquel appartient le device.

Afin d’octroyer les droits à ce périphérique, il faut tout d’abord identifier le groupe auquel il appartient.

Pour cela :

ls -l /dev/ttyUSB0

crw-rw---- 1 root dialout 188, 0 Feb 15 21:30 /dev/ttyUSB0

Le groupe est donc dialout.

Il va donc falloir rajouter cet utilisateur au groupe www-data.

adduser www-data dialout

Dernière étape:

Rédémarrer votre serveur apache.

Vous pouvez dés à présent accéder à votre périphérique usb sans aucun problème.

Attention à la méthode barbare consistant à appliquer les droits Chmod 777 sur le device directement.
Vous by passé l’ensemble des sécurités mis en place dans le système :/

Proftpd – Enable Fxpable transfert

Ubuntu :

apt-get install proftpd

/etc/proftpd/proftpd.conf

# Normally, we want files to be overwriteable.

AllowOverwrite on

# Custom entry for resumes and fxp

AllowStoreRestart on
AllowForeignAddress on

SQLite Query non case sensitive alphabetical order

Sqlite :

ORDER BY « +NAME+ » COLLATE NOCASE ASC

Formatter une date en flex

var dateFormatter:DateFormatter= new DateFormatter();
dateFormatter.formatString = « DD-MMM-YYYY JJ:NN:SS »;
return dateFormatter.format(new Date());

Configurer un Thread / Gestion de la culture / Decimal /

Quelques lignes importantes afin d’éviter d’utiliser bêtement un .replace(‘,’,’ ? ‘);

CultureInfo ci = new CultureInfo("fr-Fr", true);
ci.NumberFormat.NumberDecimalSeparator = ".";
Thread.CurrentThread.CurrentCulture = ci;

Flash WRT54G TTL

Petit tuto pour reflasher un linksys wrt54G :

Munissez vous du programme proposer par linksys afin de reflasher votre routeur :

ScreenShot001

Celui-ci est disponible sur le site de linksys.

Profitez-en pour télécharger la dernière version du firmware destiné à votre routeur.

Sélectionner votre firmware a envoyer, l’outil va automatiquement exécuter 3 tentatives de connexions afin d’envoyer le firmware !

Il ne vous reste plus qu’a effectuer les manipulations suivantes et votre firmware sera envoyé dés la réponse du routeur obtenue :

– Débrancher votre routeur du secteur

– Maintenir le bouton reset de votre routeur enfoncé

– Brancher l’alimentation ( utilisez votre 3 ème main 😉 )

Si vous procédez à un ping vers 192.168.1.1 vous apercevrez une réponse de l’hôte pendant 2-3 secondes ! Dépêchez-vous !

Attention le routeur demande obligatoirement un firmware officiel sinon vous obtiendrez un joli message : code error !

Bonne chance ! Une fois le firmware rétabli reflashez avec la bonne version de ddwrt 😉

Si vous n’en sortez pas, il vous reste la solution du pont sur la flash 😉

DDWRT Upgrade Failed – DD-WRT v24-sp2

Un petit retour sur mes expériences du firmware V24-SP2 :

Avant de vous lancer dans le flash de votre routeur vérifier bien sa compatibilité !

Dans le cas d’un mauvais choix vous aurez extrêmement difficile a faire redémarrer votre appareil ! Méfiance !

Très mauvaise expérience du firmware sur un WRT54G V2.0 ! Le firmware semble beaucoup trop lourd et surtout instable pour les anciennes versions ( 16 mb de ram trop faiblard ? ). Si vous cherchez a récupérer votre routeur, passez en version 23 disponible dans les oldies du site ddwrt.

http://www.dd-wrt.com/dd-wrtv2/down.php?path=downloads%2Fstable%2Fdd-wrt.v23+SP2/

Les symptômes :

– Reboot intempestifs !
– Plusieurs Hard reset nécessaire afin d’obtenir l’interface web …
– Réponse de l’interface : index -> click -> plus rien !
– Le telnet / ssh est complètement buggué ?! Caractères ascII dans tous les sens 😮

Retour sur un firmware original : /

Ajouter des sondes de température à une station Oregon Wmr

VOus possédez une station Oregon ? Vous désirez ajouter une nouvelle sonde à votre station météo ?

Voici quelques conseils et différents points a vérifier avant votre achat :

Prenez bien la peine de vérifier le numéro du protocole de votre station.

La gamme WMR88/ WMR100 / WMR200 utilise la version 3 ! Méfiez-vous des vieux détecteurs tournant sur le protocol 2.

Afin d’éviter de vous tromper je vous conseille vivement le site www.domadoo.fr qui référence chaque produit de manière claire nette et précise !

Dans le doute, contactez le service client, rapide sympa et efficace ! Très pros !

Voici un tableau récapitulatif des différents détecteurs ainsi que leurs compatibilités :

Sondes thermo Oregon

Dernier point :

– Si vous souhaitez connecter un recepteur rfx à vos nouvelles sondes vous pouvez opter pour n’importe quel détecteur ! L’ensemble des protocoles provenant de chez oregon sont compatibles !

– Les premiers détecteurs sans afficheurs LCD sont à 15€ 😉

– Le détecteur que je vous conseille : THGR810.