Jump to content

Spidetra

Hubmaster
  • Content Count

    326
  • Joined

  • Last visited

Everything posted by Spidetra

  1. Tu as raison. Mais l'informatique est tellement vaste que tu ne peux pas être expert en tout. Le boulot d'un développeur, n'est pas le même que celui d'un administrateur système ou d'un adminstrateur réseau. Un développeur peut très bien vivre sans aucune connaissance en administration et vice-versa. Tu veux t'auto-former,ça coûte pas très cher : tu prend une bonne vieille Debian et tu te configure un petit réseau maison, tout en ligne de commande, en éditant toi-même les fichiers de conf. Après quelques nuits, quelques litres de café, quelques milliers de lignes de tuto, tu devrais avoir un peu progressé. Ne complexe pas trop, tu ne peux pas tout savoir en sortant de l'école. Il te faudrat quelques années pour devenir un vieux loup de mer des systèmes.
  2. Voici enfin le premier billet sur la série des test des Frameworks, librairie, toolkit simplifiant l'utilisation d'Ajax. Ce premier test porte sur Sajax : Simple Ajax Toolkit Sajax est un toolkit Php que vous pourrez télécharger sur ce site : Téléchargez Sajax Le site, la documentation et le forum sont uniquement en anglais. La mise en oeuvre de ce toolkit est très simple. Il permet de mettre en oeuvre rapidement et sans effort des fonctionalités ajax simple sur votre site. Ce toolkit est idéal pour les débutants qui en veulent pas trop se prendre la tête avec Ajax. Je ne suis pas sûr que pour un projet complexe en Ajax ce toolkit soit le plus adapté. Vos retours d'expérience dans l'utilisation de ce toolkit sont toujours les bienvenus. 1. Mise en oeuvre du toolkit : La mise en oeuvre est très simple. Il suffit d'importer la librairie Sajax.php dans votre script. L'encapsulation de la communication entre le client et le serveur se fait à l'aide de 4 fonctions. Côté serveur, il suffit d'exporter les fonctions que vous désirez utiliser : sajax_init(); sajax_export("multiply"); // list of functions to export sajax_handle_client_request(); // serve client instances Côte client la complexité du javascript est encapsulé dans un appel à cette fonction : <? sajax_show_javascript(); ?> 2. Astuce de programmation : Vous allez gagner en souplesse en modifiant légèrement la fonction sajax_show_javascript(). La modification que je vous suggère vous permettra d'intégrer plus facilement Sajax dans des systèmes que vous ne maîtrisez pas à 100% ( le système de template de phpBB, par exemple ). Code original : function sajax_show_javascript() { echo sajax_get_javascript(); } a remplacé par function sajax_show_javascript() { return sajax_get_javascript(); } Il est plus simple de récupérer et manipuler une variable. 3. Conclusion Sajax est une bonne librairie pour débutant qui remplit bien son office. Vous ne trouverez pas des widgets, des patterns d'interface ou de comportements dans Sajax. Sajax encapsule la compléxité de la communication client/serveur. Si comme moi, vous êtes allergiques au langage javascript, et que vous désirez mettre en oeuvre des fonctionalités assez basique, alors Sajax peut vous rendre de grands services.
  3. Un bon fichier fournisseur, c'est une partie du trésor de guerre d'une entreprise. Au moins autant que le fichier client. Sauf âme très généreuse sur le hub, ça va être à toi de prendre ton baton de pélerin et de te constituer ce fichier. Annuaires Pro, Salon Pro, Syndicat Pro, etc.... J'anticipe une future question : non je ne connait pas de bon fournisseurs dans le textile. Dans le higth-tech oui, mais pas dans le textile.
  4. Nous étions plutôt un grand site. Et nous avions la chance d'être bien suivi par la gendarmerie. Avec un gendarme qui passait souvent nous voir. Pour l'IP, avec chacune de nos commandes l'IP était enregistré. C'est nous qui la fournissions à la gendarmerie. Abouti ou pas ? Aucune idée. Je m'occupait que d'informatique. En tout cas l'ensemble des contentieux, fraudes, colis perdu et tuti quanti mobilisait au moins une personne à temps plein.
  5. merci d'avoir pris le temps de me répondre ( et surtout de me lire ) Le niveau de contraintes pour les options est de niveau 1. Il est relativement facile de gérer de manière classique par des tables annexes. Le choix est imposé par une nouvelle contrainte : La liste des disponibilités doit être mise à jour en temps réels en fonction des choix de l'utilisateur. Ajax et mode Web 2.0 obligent Je ne peux plus me permettre d'aller faire une requête en me liant avec les différentes tables pour aller choisir les bonnes options. D'où mon intérêt pour les techniques de bit bashing. Le SELECT va devenir mono-table, avec une seule condition sur un champ en BIGINT qui sera indexé. J'ai besoin d'une requête très performante et j'espère qu'un tel choix me permettra de gagner en perf.
  6. Salut le Hub, Désolé pour la longueur du post. J'ai besoin de gérer des options multiples pour une gamme de produits. Pour simplifier et optimiser les requêtes, j'ai décidé d'utiliser des techniques de bit bashing http://www.webmaster-hub.com/publication/article75.html Je dois gérer ces options : - dans le stockage de mes données en SQL - Dans les traitements en PHP - En javascript : gestion des cases à cocher. J'ai une connaissance théorique de ces techniques. Mais j'avoue ne pas être très à l'aise avec les opérateurs binaires. Le Problème : Je doit gérer de [1..n] options contenant chacune de [2..m] possibilités. Je ne connais pas les valeurs max de n et de m. Les possibilités pour une option donnés sont mutuellement exclusive. Même si en début de projet je vais essayer d'être le plus exhaustif possible sur les différentes options, je veux pouvoir ajouter de nouvelles options ou de nouveaux choix sans problème. Je ne veux pas gérer ces options avec des requêtes SQL complexe, et une ribambelle de AND ou de OR. D'où le choix du bit bashing. Exemple avec 3 options : Option 1 : => Choix A, B, C, D, E, F Option 2 : => choix A, B Option 3 : => A, B, C, D Je pourrais avoir les produits : Produit 1 : 1A & 2A & 3A Produit 2 : 1D & 2A & 3C Produit 3 : 1A & 2A & 3D etc.... Mon problème va se situer : 1. Au niveau du stockage dans la base SQL 2. Au niveau de la sélection. La Solution : Format du champ de stockage :BIGINT unsigned ( 64-bits ). Cela va me laisser 64 possiblités d'option ce qui devrait être suffisant ( j'espère ! ). Première approximation, sans forcer, une trentaine d'options Concrètement : 1. Comment je stocke mes valeurs d'option dans la base ? Est-ce que je suis obligé de les saisir en base 10 ou est-ce qu'il est possible de les saisir dans une autre base ( base Hexa ) ? En base 10, si je dépasse les 30 options, la saisie est sujette a erreur. 2. Pour stocker la valeur d'un produit : C'est le plus simple. Je pense qu'en faisant un & binaire entre les options c'est bon. 3. La sélection des produits La sélection des produits va dépendre de cases à cocher gérer par l'utilisateur final. J'ai envie ( en javascript ) de stocker la résultante des choix de l'utilisateur dans une seule variable. Mon problème c'est que je doit stocker des & et des | dans cette variable : Ex : Si l'utilisateur a coché toutes les cases possibles. Sauf erreur de ma part : ( 1A | 1B | 1C....etc ) & ( 2A | 2B ) & ( 3A | 3B | 3C | 3D ) Le plus simple serait d'avoir une seule variable que je pourrais modifier sur chaque action de check, uncheck. Est-ce que c'est possible en utilisant les opérateurs sur les bits ? Est-ce qu'il serait préférable de gérer une variable par option ? Ouf !.... Merci à tout ceux qui auront eu le courage de lire jusqu'ici
  7. Oui, je sais. J'ai une lecture très restrictive de Opt-in et Opt-out. Une adresse mail devient véritablement opt-out lorsque tu as cliqué sur le lien : je veux me désinscrire. Ce lien étant obligatoire dans toutes les campagnes d'e-mailing/
  8. Un million de mails opt-in ? Ty y croit vraiment Opt-In et achat de fichier sont pour moi anti-nomique. Tu as un fichier mail opt-in, tu le vend, le fichier devient automatiquement opt-out.
  9. Nos posts ce sont croisés, j'édite le mien.... Pour éviter ce genre de pb : 1. Il te faut un bon éditeur bien configurer. 2. Ton Level Error doit être configurer sur NOTICE en phase de dev. Je viens de comprendre d'où vient ta coquille. Tu as fait juste un copier / coller de la requête SQL que j'ai posté plus haut
  10. Dans ta requête : count(*) as nb_entrees dans ton code Php : $data2->nbre_entrees
  11. Séparons les pb SQL et Php. 1. Est-ce que la requête que je te suggère répond à ton problème ? Si tu la teste dans phpMyAdmin ou Mysql Query Brower, qu'est-ce qu'elle te retourne ? Est-ce que le résultat correspond à ce que tu attends ? Si tu répond oui à toutes ces questions ton pb SQL est résolu. 2. En Php, si tu as une seule requête tu n'as plus besoin d'avoir deux boucles. Tu simplifie ton code et ça devrait rouler.
  12. Pourquoi ne pas faire une seule requête ? SELECT SUM(montant) AS total, count(*) as nb_entrees FROM matable WHERE YEAR(o_timestamp) = 2006 and statut = '0' GROUP BY MONTH(o_timestamp)
  13. Vraiment désole. ça c'est un coup dur Nous avons eu le même problème en interne l'an dernier. 24H00 de transactions perdu et ceux malgré la mise en place d'un système RAID trois mois plus tôt. Mauvaise config du RAID, mauvaise manip du technicien qui est intervenus. Mystère ! Pour ton pb j'envisagerai les inconvénients et avantages de deux solutions : 1. Réplication mySQL : => Est-il possible de mettre en place un système de réplication entre OVH et ton back-office ? => Quelles contraintes en terme de charge serveur ? 2. Solution Cluster de chez OVH : J'avais vu une solution cluster chez OVH. Ce qui pourrait être intéressant dans ton cas c'est le filler qui est mis derrière les serveurs web. http://www.ovh.com/fr/produits/cluster.xml J'ai des doutes sur cette solution pour ceux qui cherchent des vrais clusters. Dans ton cas c'est différents : Ce que tu cherche c'est une sécurisation des données. Il va falloir compter un budget entre 250 - 300 HT / mois. La disponibilité, ça a un prix... J'espère pour toi que tout va s'arranger rapidement Et je te rassure, le pire arrive parfois... et c'est douloureux !
  14. Bonsoir le hub, Je n'arrive pas à rendre mon serveur mysql de test insensible à la casse ( MySQL 5.0.18-nt ). Deux variables systèmes servent à configurer la sensibilité à la casse : A priori pour le nom des tables ça à l'air correct : lower_case_table_names=1 l'autre variable lower_case_file_system est à OFF. Je n'arrive pas à la positionner à ON. SET lower_case_file_system=ON donne le message d'erreur suivant => "Unknown system variable 'lower_case_file_system'" La configuration de cette variable dans le my.ini => le serveur ne démarre plus. Une idée ? Merci par avance.
  15. tout a l'air ok au niveau de la requête et de ce qui est retourné. Le pb est plus bas. - variable mal othographié ? - pb dans la boucle ? - autres...
  16. ça me surprend ! Nous avons eu des pbde fraude à la CB et nous portions régulièrement plainte à la gendarmerie dont nous dépendions. Il faut aller voir avec la gendarmerie ou le commissariat dont tu dépend. Aux dernières nouvelles ce sont eux qui enregistrent les plaintes. La gendramerie qui s'occupait de notre dossier était vraiment nickel. Nous avions un seul interlocuteur qui suivait tout nos dossiers. On le voyait régulièrement, il venait récupérer les ip, etc, etc... On a eu la chance de tomber sur une gendarmerie vraiment bien. Si en face ton interlocuteur il pipe rien à internet, ça va pas être facile
  17. Pour ça il faut te mettre en relation avec l'avocat qui t'a contacté, et voir avec lui. pas moi, désolé.
  18. donc tu n'utilises pas le nomp de domaine puisque tu rederige. Céde... et file lui son nom. Imaginons que tu ne risques absolument rien, tu serais prêt à prendre le risque d'un procés long et coûteux.
  19. Passe en mode debug bourrin : met des var_dump() partout pour voir <?php mysql_select_db($database_conn_coll_gest, $conn_coll_gest); $query_Recordset = "SELECT * FROM coll_printer_commande WHERE print_date BETWEEN '$recherchedebut' AND '$recherchefin'"; var_dump($query_Recordset); $Recordset = mysql_query($query_Recordset, $conn_coll_gest) or die(mysql_error()); var_dump($Recordset); $row_Recordset = mysql_fetch_assoc($Recordset); var_dump($row_Recordset); $totalRows_Recordset = mysql_num_rows($Recordset); var_dump($totalRows_Recordset); ?>
  20. pour mySQL tes choix sont bons tu as aussi mysql workbench
  21. _AT_xpatval & _AT_LiL'SkiSo : pour éviter ce pb rien ne vaut un bon IDE
  22. LicenSes et LicenCes... faute de frappe ?
  23. merci pour ses deux liens. En particulier le second que je ne connaissais pas. C'est justement à cause de cette multiplication de framework ( toolkit, library ) que j'ai ouvert le billet. L'objectif est de faire un peu le tri en fonction des expériences des différents utilisateurs. Avoir des retours sur les pb de prise en main du framework, les pb de compatibilité navigateurs, etc....
×
×
  • Create New...