|
| Posté le 11 octobre 2012 - 20:13 |
Bonjour!
J'ai un site web en php exploitant une base de donnée Mysql. Je me connect parfaitement sur la base distante avec l'accès Natif.
maintenant, je tente de créer une page de login utilisant les informations de la base de donnée dbhostin_dbhms, sur la table users avec username et password. la connexion à la base de donnèe se fait bien, mais quend je test le formulaire de connexion ça ne fonctionne pas. ------------------------------------------------------------------------------- voisi les codes de la page PAGE_Connexion.php
code du bouton Connexion; SI SAI_password="" ALORS Info("The Password is Needed!") RETOUR FIN
SI SAI_username="" ALORS Info("The Username is Required!") FIN
sReslogin est une chaîne = AJAXExécute(VerifierLogin,SAI_password,SAI_username)
SELON sReslogin CAS "ok": Info("Connection Accepted!") RETOUR AUTRE CAS Info("Connection Refused!") RETOUR FIN
------------------------------------------------------------------------------- code de la procédure locale;
PROCEDURE VerifierLogin(sUser,sPasse) HLitRecherchePremier(users,username,sUser) SI HTrouve() ALORS SI users.password=sPasse ALORS RENVOYER "ok" SINON RENVOYER "passok" FIN RENVOYER "passok" FIN
------------------------------------------------------------------------------
code de connexion au serveur php;
SI EnModeSimulateurPHP() = Faux ALORS //Connexion à la base de données ... //gcnxConnexionBaseDeDonnées est une connexion //Spécifiez ci-dessous les paramètres de connexion à la base de données //Ce peut être une base de données de type MySQL, Oracle ou PostGreSQL //Pour plus d'informations sur la manipulation des données en WebDev PHP, consultez l'aide en ligne gcnxConnexionBaseDeDonnées..Serveur = "db-it-service.ca" gcnxConnexionBaseDeDonnées..BaseDeDonnées = "dbhostin_dbhms" gcnxConnexionBaseDeDonnées..Utilisateur = "dbhostin" gcnxConnexionBaseDeDonnées..MotDePasse = "Mon Mot de passe SQL" gcnxConnexionBaseDeDonnées..Provider = hAccèsNatifMySQL // hAccèsNatifMySQL ou hAccèsNatifOracle ou hAccèsNatifPostgreSQL SI PAS HOuvreConnexion(gcnxConnexionBaseDeDonnées) ALORS FinProgramme("Connexion impossible à la base de données - Pour utiliser ce projet, il est nécessaire de spécifier,dans le code d'initialisation du projet, les paramètres de connexion à la base de données.") SINON HChangeConnexion("*",gcnxConnexionBaseDeDonnées) HCréationSiInexistant("*") FIN ----------------------------------------------------------------------------
Comme mentionné ci-dessus, je me connect bien, mais quand j'essaie le login, j'obtiens le message que j'ai programmé si le login n'est pas bon "Connexion Refusé!
Enfin, il y a t-il quelqu'un qui peux m'aider avec ce formulaire php? |
|
| |
| | | |
| Posté le 10 juillet 2012 - 18:46 |
Oui merci pour l'encouragement. Entre les fonctions Wlangage non acceptées, la notion de classe indisponible, l'utilisation des composants impossible pour les projets PHP, dur dur d'avancer... J'espère avoir une ouverture plus grande dans les prochaines versions de Webev, par exemple la prise en compte réellement des possibilités de PHP 5 qui connais les notions de classe... Je vous tiens au courant de mes progrès dès que j'aurai réussi à avancer dans cette transcription du composant  Jean-Marie |
|
| |
| | | |
| Posté le 10 juillet 2012 - 15:26 |
Re-bonjour,
Juste pour info : en WB15 et 16 les fonctions sérialise() et désérialise() ont un bug. J'avais informé le support à l'époque. Je ne sais pas pour WB17.
1 ) si dans la structure il y a des chaînes accentuées : ça ne marche pas. 2 ) de mémoire, je crois que les tableaux ne sont pas sérialisés.
Pourtant avec windev c'est OK ????
Donc, si tu choisis ces fonctions pour sauvegarder les données, fais attention. Il te faudra faire des proc perso pour y arriver.
Bon dev et A+ |
|
| |
| | | |
| Posté le 10 juillet 2012 - 12:50 |
Merci pour ton retour J'imagine en effet une solution de ce type. Je n'ai pas encore commencé à développer sous cette forme car j'attendais quelques retours et avis sur la question... Ta solution pour la déclaration des variables et "procédures" me semble tout à fait faisable. Il faudra aussi que je regarde comment mettre en place des développements de pages à partager et comment les référencer sans copies (uniquement des références vers des fichiers externes) de façon à prendre systématiquement les dernières versions lors d'une compilation. Jean-Marie |
|
| |
| | | |
| Posté le 10 juillet 2012 - 11:42 |
Bonjour,
Moi j'utilise une "collection de procédures" que j'enregistre dans un dossier "WB_SRC_partagées". Dans les "déclarations globales" je décris mes structures et variables globales si nécessaire. Les procédures sont donc des "méthodes" de classes (remarques les guillemets de "méthodes")
Quand j'en ai besoin dans un projet je fais une "importation" de "collection de procédures". A l'import on te demande si tu veux une copie locale ou "partager" la collection. Dans ce cas, si tu fais des modifs et si tu ouvres un autre projet il te sera demandé si tu veux recompiler le projet (suite aux modifs).
C'est ma soluce perso, il y en a peut-être d'autres.
Bon dev et A+ |
|
| |
| | | |
| Posté le 09 juillet 2012 - 13:20 |
Bonjour J'ai terminé la réécriture complète du composant "login-source" sous un projet de type PHP avec une base de données MySQL. "Terminé" signifie en fait "Prêt à être testé dans un projet" faisant appel à l'ensemble de ces outils... J'ai donc créé un nouveau projet de type "PHP" (c'est le but) et ai essayé d'intégrer le composant modifié à l'aide des composants... Et là ! oups ! grande surprise (en ce qui me concerne), les composants ne sont pas gérés dans les projets PHP. Je galère c'est clair ! WebDev indique qu'il sait générer du code PHP, je n'en doute pas car j'ai testé et CECI FONCTIONNE. Pour y arriver, c'est un peu un chemin de croix mais bon, le produit réagit correctement malgré les nombreuses fonctions non disponibles côté serveur en mode PHP (on y arrive en utilisant d'autres instructions WebDev).
Je suis donc prêt à tester la migration de ce composant dans un projet mais je ne sais pas comment dans un projet en mode PHP intégrer des développements externes (développés justement pour être exploitables dans différents projets). La notion de composants est très bien faite mais inexploitable dans ce contexte.
Quelqu'un saurait-il comment intégrer : - des déclarations globales : constantes, variables, structures (qui remplacent d'ailleurs la notion de classes actuellement inutilisables en mode PHP) - des procédures et fonction globales pour tout le projet - tout en prenant également en compte toutes les déclarations, procédures et fonctions locales à une page (ou un modèle de page), etc...
Question très technique qui demande certainement une ouverture d'esprit vers les compatibilités PHP et les limites de WebDev dans son ouverture vers ce langage.
Merci de ne pas me répondre en m'indiquant qu'il suffit de rester en Wlangage et d'utiliser le moteur WebDev au lieu de PHP, ceci n'est pas le sujet de ce post, je connais déjà cette réponse, et je ne désire pas entrer dans ce débat.
Merci donc à tous de rester sur le contenu exact de la question. Sachez que je suis prêt ensuite à partager tout le code et les solutions pour proposer ensuite à PC-SOFT et à vous tous une solution d'administration de sites et d'utilisateurs (gestion des login, droits, donc sécurités d'accès) en mode 100% PHP/MySQL.
Merci à tous. Jean-Marie |
|
| |
| | | |
| Posté le 04 juillet 2012 - 14:41 |
Bonjour Je commence à développer sous WebDev mais suis obligé de créer des sites PHP (ce n'est pas l'objet de ce post...) Je suis étonné de voir toutes les restrictions d'utilisation du Wlangage et du système de développement dans ce mode et suis à la recherche de solutions techniques. Je poste ce problème lié à l'impossibilité (c'est en tout cas ce que j'ai compris aujourd'hui mais je peux me tromper) d'utiliser le POO (Programmation orienté Objet), donc la notion de classes.
Je désire mettre en place un système de login et de droits... Je me suis tout d'abord tourné vers l'analyse des Groupware mais inutilisable en PHP... Ensuite, j'ai découvert l'exemple "Composant Login Source" qui me semble bien fait et que je pourrais utiliser... Et là ! bloqué par l'utilisation des classes... Après avoir cherché (je ne vous dis pas le nombre d'heures...), il semblerait qu'on puisse assez facilement (tout est relatif) modifier ce code pour le transformer en utilisant je cite : "une structure dans le pcode de déclaration globale d'une collection de procédure et, au lieu de créer des méthodes de classe, d'utiliser les procédures globales pour manipuler la structure."
Je vois à peu près ce qu'il faut faire mais bon ! C'est quand même un sacré boulot ! Alors... - quelqu'un aurait-il déjà effectué ce travail ? - quelqu'un aurait-il une autre solution ? - quelqu'un saurait-il quand le POO sera accepté en PHP (puisque la version "5"de PHP est acceptée c'est théoriquement faisable techniquement par PC-SOFT)
Désolé pour ce post long mais pour avoir des réponses précise je pense que je dois essayer d'être précis dès le départ.
Jean-Marie |
|
| |
| | | | |
|