Aller au contenu

ZeBrian

Webmaster Régulier
  • Compteur de contenus

    77
  • Inscrit(e) le

  • Dernière visite

Tout ce qui a été posté par ZeBrian

  1. Merci pour vos réponses Je crois que j'ai une petite idée qui pourrait apporter un peu de nouveauté aux internautes mais c'est un projet assez ambitieux qui doit encore mûrir... En gros, il s'agit de rendre accessible à n'importe qui la création d'un site de qualité quasi-professionnelle : 1) création de modèles de pages grâce à une interface codée en JavaScript [ adieu le code CSS ] 2) décoration des pages grâce à des algorithmes générateurs d'images [ adieu Photoshop ] 3) création d'actions dynamiques pouvant interagir avec une base de données simplifiée [ adieu la programmation PHP ] Le principal obstacle pour l'instant est la 3ème étape : je dois créer une interface suffisamment naturelle pour ne pas rebuter les novices tout en ne limitant pas trop les possibilités d'interactions... On devra par exemple être capable de créer un forum équivalent à phpBB (du moins pour ce qui est de la partie utilisateur). En tout cas, différents modèles d'actions basiques seront disponibles à l'utilisateur, qu'il pourra ensuite adapter. Une fois que les bases seront posées, les évolutions possibles seront nombreuses : chargements en AJAX, animations grâce à JavaScript (du style de ce que l'on peut faire avec Prototype mais avec une librairie beaucoup plus légère), hébergement des sites créés... Si vous avez des idées par rapport à l'étape 3 présentée précédemment, faites-m'en part
  2. C'est la première fois que je vois cette syntaxe pour une requête SQL... Utilises-tu une classe ? J'ai trouvé une syntaxe exactement similaire ici (voir le post de lazy_yogi), j'en déduis que ta classe vient de là Je ne suis pas sûr de comprendre l'origine du problème, mais en tout cas il manque le début du script : as-tu bien initialisé la variable $liste avec une commande du type $liste=array(); ?
  3. Bonjour, J'adore programmer (j'ai même régulièrement des poussées d'adrénaline en programmant...), je maîtrise plutôt bien la programmation dans les langages PHP/JavaScript en particulier en AJAX, et j'ai un but dans la vie : gagner pas mal d'argent sur le Net avant d'avoir terminé mes études Seulement, ce but étant fixé, je commence différents projets avec l'espoir qu'ils attirent du monde, puis, au fur et à mesure qu'ils avancent, je perds ma motivation, en me disant qu'après tout ils n'ont rien d'original et/ou intéressant, qu'ils passeront inaperçus... Mon cas doit être à la limite du psychiatrique : je n'ai encore réussi à terminer aucun gros projet ! Ce n'est pourtant pas un problème de difficulté de programmation, seulement de motivation ! J'ai donc décidé de revoir un peu mes objectifs : j'aime la programmation parce que c'est une activité agréable, non parce que c'est une activité potentiellement rémunératrice ! J'aurai bien l'occasion de gagner de l'argent avec mon travail, et l'utilité de gagner beaucoup d'argent devient moindre lorsque c'est aux dépends du reste... Tout ça pour vous demander : qu'aimeriez-vous que je programme ? En effet, je manque d'idées de programmation et je trouve cela assez bête de passer du temps sur des projets qui ne seront utiles qu'à moi... Autant en faire profiter tout le monde ! Et gratuitement bien sûr Vous pouvez me demander à peu près n'importe quelle application Web (tant qu'elle sera utile à pas mal de monde), si j'en suis incapable ça me sera utile pour m'améliorer Par contre, je choisirai arbitrairement un projet qui me plaît (ou aucun s'il n'y en a pas) puisque c'est tout de même pour m'amuser que je fais ça ! Merci de m'avoir lu ! PS : Peut-être changerai-je d'avis plus tard, je ne peux rien vous garantir, et je veux que la programmation reste un loisir pour moi et non une obligation... Mais si un projet me tente dans ce que vous me proposez, pourquoi pas !
  4. Ton erreur semble due à une mauvaise initialisation de la variable req ; essaie de remplacer le code suivant : if(window.XMLHttpRequest && !(window.ActiveXObject)) { try { req = new XMLHttpRequest(); } catch(e) { req = false; } // branch for IE/Windows ActiveX version } else if(window.ActiveXObject) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) { req = false; } } } par : try { req = new XMLHttpRequest(); } catch(e1) { try { req = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e2) { try { req = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e3) { req = false; } } }
  5. Tout d'abord, en JavaScript, il faut respecter la casse ! Attention donc à taper "nodeValue", et non "nodevalue" Ensuite, d'après mon expérience, la propriété "nodeValue" ne permet pas d'obtenir ce que tu désires : j'aurais plutôt utilisé "innerHTML" Par rapport aux raisons de l'échec de la propriété "nodeValue", tu trouveras probablement des informations sur cette page : http://fr.selfhtml.org/javascript/objets/node.htm Bonne journée
  6. Si ton script se limite au positionnement du curseur, la solution serait à mon avis d'attribuer à la balise <body> un attribut "onmousemove" qui appellerait ta fonction position comme il se doit, puis d'enregistrer à chaque mouvement les nouvelles coordonnées dans une variable globale... La position du curseur serait alors toujours accessible sans avoir besoin de la variable "event"
  7. Une autre solution possible à mon avis : la fonction utf8_decode Il suffirait probablement de l'appliquer aux données juste avant l'enregistrement dans la base de données
  8. En fait le problème est un chtit peu plus profond qu'un simple site, il s'agit de la conception d'une librairie d'animations JavaScript pour pages Web et/ou applications Web... Tout ce que je voulais savoir était si l'évènement était détectable, merci de ta réponse négative ! Enfin je viens d'avoir une petite idée qui conviendrait probablement... Il suffirait de créer un bloc invisible (hors champ de vision) qui contiendrait un unique caractère de taille 1em et de vérifier périodiquement ses dimensions : on pourrait ainsi, en plus de détecter les changements de taille, avoir la taille exacte de la police ! Bonne journée :-)
  9. Tout d'abord, bonjour et bonne année ! Pour ceux qui seraient déjà sortis de leur sommeil probablement quelque peu tumultueux, j'ai une question... Comment détecter avec JavaScript un changement de taille de police (qui peut s'obtenir avec les touches Ctrl + Plus sous Firefox) ? Si vous avez une solution compatible avec l'ensemble des navigateurs, je vous en serai bien sûr encore plus reconnaissant Bon décuvage !
  10. ZeBrian

    Bug de PHP/GD ?

    Désolé TheRec, je n'avais pas vu ta dernière réponse ! Voici tout d'abord le code de mon générateur (malheureusement non commenté, je vais essayer de prendre l'habitude de le faire...) : http://local.izipub.com/exp/gradient.phps Pour obtenir un dégradé, il vous faudra accéder à votre fichier PHP en précisant des paramètres GET : - type : type de dégradé (8 choix : topleft, topright, bottomleft, bottomright, top, bottom, left et right) - size : taille en pixels de votre dégradé (dans le cas d'un dégradé horizontal ou vertical, une bande de 1 pixel de largeur sera générée car il vous suffit de demander à votre feuille CSS de la répéter) - radius : uniquement applicable aux coins, cette propriété à définir entre 0 et 100 donne la courbure de l'arrondi - back : la couleur de fond (inutile de la préciser si vous avez défini des couleurs aux extrémités 0 et 100) en hexadécimal à 6 chiffres - colors : les différentes couleurs de votre dégradé, en précisant pour chacune à quel pourcentage de la longueur elle devra être. Pour colors, la syntaxe à répéter est très stricte. Il faudra préciser la position, un double point, la couleur attribuée à cette position (en hexadécimal à 6 chiffres), puis recommencer en séparant par une virgule pour chaque nouvelle valeur. On aura donc toujours quelquechose du type : ...&colors=0:ffff00,40:00ab66,100:008800 Un exemple complet : http://local.izipub.com/exp/gradient.php?t...f&radius=50 Bonne soirée !
  11. Merci de tes remarques ! En fait, tu me confortes dans l'idée que je devrais peut-être, maintenant que j'ai une bonne vision des choses au niveau de la programmation, repartir de zéro ou presque et créer un outil fonctionnant uniquement par drag&drop, avec fonctions annuler-répéter-copier-couper-coller, et une gestion plus "physique" des blocs. En effet, les utilisateurs novices pourraient par exemple ne pas maîtriser totalement les subtilités de la propriété CSS "float" : autant donc réutiliser le principe des tableaux à colonnes (en utilisant tout de même la propriété "float" et non la balise <table> dépréciée pour cet usage). Ma cible de départ était plutôt les webmasters avertis, mais mon objectif a changé durant la programmation, c'est pourquoi certains de mes choix originels se trouvent à présent injustifiés. Merci donc de continuer à me faire part de vos critiques afin que je puisse les prendre en compte pour la prochaine version de cet outil !
  12. Bonsoir, J'ai commencé un projet assez ambitieux qui consiste en la création d'un logiciel JavaScript qui permettrait à de parfaits débutants de créer des sites web dans une interface guidée... La création d'une page passerait par 3 étapes clefs : 1) création de la structure en blocs de la page 2) choix du design de chaque bloc 3) remplissage de chaque bloc J'ai à peu près terminé la programmation de la première étape, c'est pourquoi je fais appel à vos critiques ! Voici le lien : http://local.izipub.com/html_041206/ Le principe est relativement simple... il y a deux types d'objets : les boîtes et les séparateurs. Les boîtes pourront contenir d'autres boîtes, tandis que les séparateurs permettront de diviser verticalement l'espace de travail. Grâce aux deux premiers boutons, vous pourrez choisir le type du prochain objet ajouté : boîte ou séparateur. Ensuite, grâce aux 4 boutons suivants, vous choisirez le positionnement du nouvel objet en question. Vous pourrez le placer soit avant, soit après, soit à l'intérieur (en premier ou en dernier) de la dernière boîte sélectionnée. Les 3 boutons suivants permettent de choisir l'alignement de la boîte : à gauche, à droite ou au centre (où elle prendra automatiquement toute la largeur disponible). Vous avez aussi la possibilité de déplacer vos boîtes dans différentes directions (une boîte située au centre ne pourra pas être déplacée sur le côté, il faudra d'abord changer son alignement) ainsi que de choisir les dimensions approximatives de vos boîtes. Je vous laisse deviner le rôle du dernier bouton La vue hiérarchique disponible sur la droite n'a pour l'instant pas une grande utilité mais permettra de se retrouver un peu entre les boîtes pendant l'étape de design... Si vous avez le temps de tester, quelles sont les remarques qui vous viennent à l'esprit ? Y a-t-il des détails à corriger ? Des bugs ? Merci de m'avoir lu
  13. ZeBrian

    Bug de PHP/GD ?

    Merci de ta réponse TheRec ! En effet, j'ai testé avec imagefilledellipse et le temps de génération était largement augmenté (multiplié par 10 ou 20)... Mais mon problème est réglé, j'ai tout simplement codé un algorithme qui dessine pixel par pixel et qui est relativement rapide :-P
  14. ZeBrian

    Bug de PHP/GD ?

    Tout d'abord merci de ta réponse rapide ! Par rapport à ta proposition d'imagefilledellipse, bien sûr qu'elle serait adaptée à l'exemple que j'ai donné, mais elle est autrement moins adaptée à mon cas réel ! En fait, le script que je programme est un générateur de dégradés arrondis plus ou moins courbés. Utiliser la fonction imagefilledellipse se révèlerait extrêmement peu rentable en temps de calcul... Mais ta réponse semble confirmer ce que je redoutais : les développeurs n'ont pas prévu le cas où l'on voudrait créer des ellipses accolées ! Il me semblait évident que la fonction imageellipse prendrait pour paramètre des flottants, et que l'arrondi aurait lieu uniquement une fois que la position des points aurait été calculée... Dommage, je vais donc tenter de créer la fonction dont tu me parles, ou carrément ne pas utiliser la fonction imageellipse et fixer la couleur de chacun des points de mon image à partir d'un algorithme élaboré par mes soins... J'y perds beaucoup en performances mais puisqu'il n'y a pas d'autre solution, autant faire cela ! Par rapport à imagedestroy, je l'ai oublié sur mon exemple mais il est dans mon script ;-)
  15. ZeBrian

    Bug de PHP/GD ?

    Bonsoir, Etant fervant utilisateur de la librairie GD pour PHP (pour créer/manipuler des images), je suis confronté à ce qui me semble être un bug. En effet, le code suivant, censé générer un quart de disque complètement blanc sur fond noir, a un résultat plutôt étonnant, voyez plutôt : - sur un serveur mutualisé : http://www.web2master.fr/ellipse.php - sur un serveur dédié : http://local.izipub.com/exp/ellipse_whub.php Le code est le même sur les deux fichiers : <?php $size=200; $im=imagecreate($size,$size); // on crée une image carrée $back=imagecolorallocate($im,0,0,0); // on remplit l'image de noir $color=imagecolorallocate($im,255,255,255); // on crée la couleur blanche for($i=0;$i<$size;$i+=0.1) // on se décale de 0.1 pixels à chaque itération (mathématiquement, racine de 1/2=0.7 pixels devrait suffire) imageellipse($im,0,0,$i,$i,$color); // on crée une ellipse de largeur header('Content-type: image/png'); // on informe le navigateur que c'est une image imagepng($im); // on affiche l'image ?> Même en mettant un décalage de 0.01 pixels, on obtient exactement le même résultat... Par contre, si on change la largeur du trait à 2 avec imagesetthickness, l'image créée par le serveur dédié devient correcte... Sauf que je ne peux pas me permettre une épaisseur de 2 pixels ! De plus, le serveur mutualisé ne prend pas en compte imagesetthickness avec la fonction imageellipse... PS : Je sais bien que mon code équivaut à la fonction imagefilledellipse, mais c'est un code créé pour l'exemple, celui d'origine étant bien trop complexe ! Merci d'avance pour vos réponses
  16. De rien Je pense (mais je n'ai pas testé) que ceci convient : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>Test</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <script type="text/javascript"> function init(){ var image=document.getElementById('image'); var parent=image.parentNode; var maxWidth=parent.offsetWidth; var maxHeight=parent.offsetHeight; var ratio=image.width/image.height; if(image.width>maxWidth){ var newWidth=maxWidth; var newHeight=maxHeight/ratio; image.width=newWidth; image.height=newHeight; } } </script> </head> <body onload="init()"> <div style="width:100px;height:200px"> <img id="image" src="url.jpg" /> </div> </body> </html> EDIT : En fait il me semble que le code précédent n'était pas correct si la largeur et la hauteur du <div> n'étaient pas les mêmes... Mais puisque le problème ne se présente plus ici, inutile de le corriger
  17. Il me semble que ce code convient ! Tu peux définir la largeur du <div> ailleurs que dans la balise "style", ce n'est qu'un exemple... <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>Test</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <script type="text/javascript"> function init(){ var image=document.getElementById('image'); var parent=image.parentNode; var maxWidth=parent.offsetWidth; var maxHeight=parent.offsetHeight; var ratio=image.width/image.height; if(ratio>=1 && image.width>maxWidth || ratio<1 && image.height>maxHeight){ if(ratio>=1){ var newWidth=maxWidth; var newHeight=maxHeight/ratio; } else{ var newHeight=maxHeight; var newWidth=maxWidth*ratio; } image.width=newWidth; image.height=newHeight; } } </script> </head> <body onload="init()"> <div style="width:100px;height:200px"> <img id="image" src="url.jpg" /> </div> </body> </html>
  18. Merci de ta réponse mais je me suis mal expliqué Je voulais justement savoir s'il existait un éditeur WYSIWYG utilisant les "float" ! S'il n'existe pas, je le programmerai, c'est pour ça que je pose la question
  19. ZeBrian

    Editeur html...

    Bonjour, Je souhaiterais savoir s'il existe un éditeur HTML qui n'utilise pas/peu les tableaux pour la mise en page, mais qui privilégie plutôt la mise en page avec la propriété CSS "float" ? Il me semble que Dreamweaver n'est pas très regardant de ce côté là... Est-ce que NVU par exemple permet de générer un code "propre" à ce niveau ? Bien sûr, je parle ici du code généré automatiquement... Merci d'avance pour vos réponses ! PS : Désolé si je n'ai pas choisi le bon forum
  20. J'ai reprogrammé toute la partie PHP du site en objet ! C'est beaucoup plus clair mais par contre on y perd un peu en temps d'exécution... Je tourne autour de 15 millisecondes au lieu de 8-10 Si vous voulez un script de dégradé avancé, avec cache et simple à utiliser, je vous ai fait un petit fichier : http://local.izipub.com/degrad.phps Il ne génère que des dégradés verticaux (à mon avis, les dégradés horizontaux ne servent pas à grand chose dans le design d'un site Web) mais je peux l'adapter aux deux sens si tu veux ! J'ai omis la plupart des commentaires d'explication car le générateur de dégradés du tuto sera beaucoup plus simple que ça...
  21. AJAX n'est pas un langage, c'est juste la combinaison de plusieurs langages avec en particulier le JavaScript ! Le code consiste donc, dans mon cas, à du JavaScript d'un côté et du PHP de l'autre... À propos des dégradés, il y a deux solutions : - soit regénérer le dégradé à chaque chargement (on n'a alors besoin que du générateur de dégradé) - soit ne générer qu'une seule fois un dégradé donné : il faut alors stocker les dégradés précalculés dans un dossier qui servira de cache Le tutorial permettra au départ juste de regénérer le dégradé à chaque chargement, mais une annexe sera disponible un peu plus tard pour expliquer comment économiser une précieuse puissance de calcul en enregistrant les dégradés dans un cache !
  22. Je me permets de vous donner l'adresse de mon site : http://www.web2master.fr Comme vous pourrez le lire en page d'accueil, le but du site est de rendre accessible à n'importe qui la création d'un site en AJAX. Vous pouvez par exemple télécharger le code source de mon site (dans la partie publications). Les tutos viendront un peu plus tard (je suis en prépa math supp donc patience...) Voilà, si vous pensez que ce post n'a pas sa place ici, merci de le supprimer
  23. Bonjour, Je voudrais vous demander vos avis et vos remarques à propos de mon nouveau site : http://www.web2master.fr Son thème principal est le Web 2.0 : il a pour but d'apprendre aux webmasters de sites classiques à créer des sites plus dynamiques grâce à AJAX. La partie technique du site est elle-même fondée sur AJAX, tout en restant entièrement accessible aux navigateurs dépourvus de JavaScript ou de l'objet XMLHttpRequest ! Vous pouvez d'ailleurs télécharger dans la partie "publications" un fichier zip contenant toutes les sources du site, pour concevoir un site AJAX plus facilement Merci d'avance pour vos réponses !
  24. ZeBrian

    Balises PHP

    Bonjour, Depuis plusieurs mois maintenant, je pratique régulièrement PHP. J'utilise par habitude les balises "<?" et "?>" pour introduire mon code... Je n'ai encore jamais rencontré de problèmes de compatibilité mais, comme je commence à distribuer certains de mes codes, je voudrais être sûr que ma syntaxe est correcte ! J'ai entendu dire que la balise "<?" serait désactivée dans PHP6 et j'ai donc commencé à employer la balise "<?php"... Mais mon réel problème est ailleurs : j'utilise souvent la balise "<?=" qui remplace l'instruction "<? echo ". Or, en remplaçant "<?=" par "<?php=", le code n'est plus fonctionnel ! La syntaxe "<?=" est-elle donc correcte ou n'est-elle qu'un gadget qui disparaîtra dans PHP6 et qui ne fonctionnera pas sur tous les serveurs PHP5 ? Merci de vos réponses
  25. Je me suis récemment mis à programmer un gestionnaire de photos en ligne sur le principe d'Ajax : on gère les photos par drag&drop principalement pour plus de facilités d'utilisation. Pour mieux voir, voici le début : http://local.izipub.com/gaos/ Savez-vous si cela existe déjà ?
×
×
  • Créer...