:king:
Version imprimable
:king:
• Pour ceux d'entre vous qui ont reçu ce soir la démo de l'espace membre pour tester le code, sachez que je viens tout juste de faire une correction des scripts PHP et du code Delphi (retélécharger l'archive svp).
• Pour tester cette démo en local, avec EasyPHP par exemple, il suffira de créer un dossier "delphp" dans le répertoire "www" et d'y coller les 4 scripts php. L'url dans le programme Delphi ne change pas.
• Par contre, pour tester cette démo sur un serveur distant, il faudra modifier l'url dans le programme Delphi et modifier également le login d'accès dans le script "cfg.php".
Si vous avez des questions, des suggestions, je suis à votre disposition. ;)
Et on la trouve où la demo?Citation:
Envoyé par Sub0
Ca m'intéresse aussi ;)
L'équipe de la rubrique Delphi relit et valide d'abord le tutoriel ensuite on l'annonce.
Comptez quelques jours...
Dans combien de jours l'article va t'il être validé? :roll:
Ça progresse très bien, je te rassure, je travaille dessus à temps plein !!
Par contre, je pense qu'il faut séparer les 2 parties parce que sinon, ça sera trop long. La première partie est bientôt terminée, je l'ai retardé parce que j'ajoute un formulaire d'inscription plus complet (image de code anti-robot, activation du compte par mail) pour que les développeurs puissent l'utiliser tel quel dans leurs propres applications. Bref, je termine l'espace membre complètement avant d'attaquer la partie d'administration. Cette dernière se servira du formulaire développé dans la 1ère partie pour l'identification de l'admin.
Probablement que par la suite il y aura des choses à corriger / améliorer afin que ces programmes fonctionnent avec toutes les configs, sachant qu'il existe plusieurs versions de Delphi, d'Apache, de PHP et de MySQL... Il y aura donc une période de tests avant sa publication finale, mais je vous enverrai le 1er programme dès qu'il sera terminé pour que vous puissiez déjà le tester sur votre config, d'ici 2 à 5 jours, peut-être avant.
Cordialement ;)
Ah ça promet d’être intéressant, tu fais du bon travail Sub0, Merci et bon courage !
Je vien de tester l'espace membre (avec easyphp) et ça fonctionne parfaitement.
Malgré tout, je bute encore sur un problème : On peut se connecter plusieurs fois en exécutant plusieurs fois le programme (EXE). Si je met un champs suplémentaire dans la table (comme Silk je crois me l'avait conseillé) pour enregistrer le status de connection et que la déconnection ne se déroule pas correctement, le script php pensera que le membre est encore connecté alors que ce ne sera pas le cas. Il interdira une nouvelle connection pendant toute la durée de vie des sessions. Pour le moment, je cherche le moyen de lister les fichiers temporaires des sessions pour essayer de trouver une solution... Si vous avez également des idées à me proposer, n'hésitez pas.
Je voulais aussi savoir si la récupération d'un mot de passe perdu intéresse du monde dans ce genre d'application ?
super
je pense que la récupération du mot de passe perdu serait intéréssante
bon boulot
Tu enregistres le timestamp de l'utilisateur lors de sa connection? Ca te permettrais de faire un TimeOut, si au bout de 5 min par exemple, l'utilisateur ne s'est pas manifesté alors tu supprimes la session.Citation:
Envoyé par sub0
Oui ça peut être intéressant mais après c'est de la programmation php. Le principal est de pouvoir communique entre un serveur web et une application écrite en Delphi.Citation:
Envoyé par sub0
En effet, on a pas trouvé mieux. :(Citation:
Envoyé par rezuss
Ce que je voulais faire lors d'une connection d'un utilisateur, c'est lister les fichiers temporaires de sessions sur le serveur et vérifier si les sessions actives ne contenaient pas déjà son pseudo. Mais je ne sais pas encore comment on accède à ce dossier et surtout comment on reconnaît une session active... Si par hasard vous avez des infos à ce sujet, ça m'intéresse. ;)
Effectivement. Cet article (ou tutoriel ?) expliquera comment je procède pour établir la communication entre Delphi et PHP, comment je m'en sers également pour réceptionner une image. La démo elle, est un espace membre comme celui-ci mais en Delphi :Citation:
Envoyé par rezuss
http://espm.gotdns.org/doc/doc.htm
Tu as trouvé le moyen de supprimer les sessions Sub0? J'attends toujours avec impatience ton article :)
Non, mon objectif n'est pas de supprimer les sessions, mais d'éviter que l'on puisse se connecter plusieurs fois. La méthode la plus utilisée est d'enregistrer un flag dans la base de données. Le problème est que lorsqu'on ne quitte pas le programme proprement (dans le cas d'un bug par exemple, ou avec le Ctrl+Alt+Sup), l'enregistrement n'aura pas lieu et l'utilisateur sera considéré comme connecté alors qu'il ne l'est pas. Il sera obligé d'attendre le temps de la durée de vie de la session pour pouvoir se connecter.Citation:
Envoyé par rezuss
Je souhaitais pouvoir éviter ce problème, en listant toutes les sessions actives en cours (fichiers ou base de données), mais ce n'est pas évident; Tout d'abord, j'ai besoin de savoir si les sessions sont enregistrées dans des fichiers ou dans une base de données (config du serveur) et ensuite, de pouvoir reconnaître une session active d'une session inactive, mais apparemment, rien ne les distingue...
Mais bon, pour le moment, j'ai mis ces recherches de côté pour me concentrer sur la réalisation du tuto et surtout de la démo de l'espace membre (mise au point). De plus, j'ai eu l'opportunité de rencontrer un membre du forum ayant déjà créé un système d'accès MySQL semblable et j'ai étudié son code.
A l'heure actuelle, j'ai terminé la 1ère partie du tuto et l'espace membre sécurisé. Nous en sommes à vérifier que cette démo fonctionne avec différentes configurations de serveurs, différentes versions de PHP, MySQL et Delphi. D'ailleurs, si vous êtes intéressés pour tester avec nous ce programme, je vous invite à m'envoyer un MP en précisant vos versions. Je vous remercie par avance de votre aide, à+
Pourquoi n''interdits tu pas le lancement de l'exe s'il est déjà en route ?Citation:
Envoyé par Sub0
En y reflechissant, tu peux te loguer d'un autre pc donc ma remarque ci-dessus tombe à l'eau...:aie:
Pour connaître le dossier, il ya la fonction session_save_path(). Par défaut, les sessions sont enregistrées dans des fichiers. Mais on pourait les enregister dans une base de données ; il faudrait alors écrire les fonctions d'écriture dans la base et les spécifier à session.save_handler...
Par contre, je ne sais pas encore comment savoir si un fichier de session est utilisé ou non. Je suppose qu'il ya un rapport avec le SID. Si vous avez des infos sur ce sujet, je suis preneur.
L'espace membre est terminé. J'attaque à présent la partie administration.
Ceux qui désirent tester le programme avant sa publication sont les bienvenus.
Contactez-moi par MP, à+
J'ai été confronté à ce genre de pb (communiquer avec mon serveur sql , alors que seul localhost est autorisé donc solution php), j'ai opté pour une classe php d'accés aux données, que j'apelle avec un bete idhttp , le traitement se fait en fonction des parametres de l'url apellée, et je renvoie ce dont j'ai besoin en xml.
Trés simple à faire et marche trés bien.
L'article est terminé, je le passe en XML au gabari Developpez.com.
Pour ceux qui veulent le lire au format HTML :
http://sub0.developpez.com/delphp
Si vous avez des remarques, c'est le moment ;)
à+
Très bon tutorial Sub0! Je vais de ce pas essayer tes sources. Cela va bien m'aider dans mes projet. Merci beaucoup