Tom's Guide > Forum > Programmation > Javascript + MySQL

Javascript + MySQL

Forum Programmation : Javascript + MySQL

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour à tous!

Je suis présentement en plein développement d'un site internet principalement conçu en HTML/CSS, PHP et Javascript. J'en suis à l'élaboration d'une page d'inscription dont je souhaite que les différents champs soient validés à mesure qu'ils sont remplis, donc en Javascript. J'ai par contre un problème qui se pose: J'aimerais valider le pseudonyme et l'adresse courriel en vérifiant s'ils se trouvent déja dans la base de données (MySQL). Est-ce qu'il y a un moyen d'accéder à MySQL en Javascript? Sinon, y a-t-il un moyen d'appeller une fonction PHP en javascript et d'en récuper une variable qui me dirait si, oui ou non, l'information est déja présente dans la base de données?

Merci beaucoup,

myself789

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Bonjour,

La vérification des champs en js est pas très sécurisé. Si l'utilisateur désactiive le js de son navigateur, il pourrait valider les champs sans vérification... Sinon pour la requête php pour vérifier si une entrée existe déjà:

Code :
  1. $verification = mysql_query ("SELECT la_colonne FROM la_table WHERE la_colonne = '".$_POST['le_post']."'" );
  2. if (mysql_num_rows($verification) != 0) {
  3. echo "existe";
  4. } else {
  5. echo "existe pas";
  6. }


Message édité par Allstar27 le 07-11-2008 à 12:42:02
------------------------------ Rémunère ton site
Hosting Favicon
Clic pas ici
Répondre à Allstar27

Salut Allstar27,

Le javascript est déja nécessaire au formulaire d'inscription. Quand quelqu'un s'inscrit, elle doit préciser (c'est un site entièrement réservé aux femmes) combien d'enfants elle a, et en fonction du nombre, des champs apparaissent avec javascript pour qu'elle inscrive leur sexe, nom et date de naissance. Il sera précisé au début du formulaire que le javascript doit être activé pour s'inscrire. Et puisque le site n'est réservé qu'à une petite communauté de femmes qui se connaissent déja, je ne crois pas que ça posera problème ;)

Ensuite pour ce qui est de la requete php, je sais déja comment la faire, je n'ai aucun problème de ce côté-là. Ma question était plutôt: Y a-t-il moyen de la mixer avec JS pour faire une validation en "temps réel" ? Ainsi, quand "onChange" est appelé sur un champs, une fonction JS appellerait une fonction PHP pour valider le pseudo dans la base de donnée, et la fonction PHP lui retournerait une variable afin que ce soit JS qui traite la validation immédiatement.

Merci d'avance,

myself789


Message édité par myself789 le 07-11-2008 à 15:09:52
Répondre à myself789

Salut

Il faut différencier la coté serveur et le coté client. Le php/mysql s'éxécute coté serveur PUIS envois la page à ton navigateur, par la suite tu dois recharger la page pour prendre en compte les modifications. Le javascript s'éxécute coté client, le client peux donc interréagir avec le site mais pas avec le serveur.

De nos jour il existe l'ajax qui est du javascript qui appel du php. C'est exactement ce que tu cherches, tu pourras donc appeler une page php avec ton onmouse.

Répondre à quarty

Allstar27, tu es suicidaire ! il faut toujours faire des vérifications sur les variables avant de les mettre dans un requêtes SQL ! mysql_escape_string() est ton ami !

------------------------------ 20minutes.fr, l'information en continu.
Répondre à SiM07

Merci beaucoup quarty, je vais chercher des informations de ce côté! =)

SiM07, tu m'intrigue ?? Perso je vérifie avec des ISSET seulement avant de faire mes requêtes, à quoi sert mysql_escape_string() ?

Répondre à myself789

mysql_escape_string() sert à protéger tes requetes d'éventuelle attaque :p.

Va voir sur le site du zéro, il y a quelque part un tuto sur la protection des variables en php

Répondre à quarty

Si tu ne fais que des isset alors normalement ton site est quasi à coup sur vulnérable à une attaque de type injection de requête ou modification.

exemple :

Code :
  1. $sql = "SELECT * FROM membre WHERE login='{$_POST['login']}' AND password='{$_POST['pwd']}' ";
  2. mysql_query(....)
  3. if(mysql_num_rows() > 0) $auth='ok';
  4. else $auth='no';



Si on imagine que ce code est syntaxiquement correct. Alors imagine que $_POST['pwd'] = " OR password=''";

catastrophe ! pas besoin de mot de passe !

------------------------------ 20minutes.fr, l'information en continu.
Répondre à SiM07

SiM07 a écrit :

Allstar27, tu es suicidaire ! il faut toujours faire des vérifications sur les variables avant de les mettre dans un requêtes SQL ! mysql_escape_string() est ton ami !



C'étais un exemple...

Répondre à Allstar27

Quarty -> Merci, avec quelques petites notions simples d'AJAX j'ai réussi à réaliser ce que j'avais en tête !! =D

SiM07 et Quarty-> J'ai jeté un coup d'oeil au tuto sur la sécurité PHP et MySQL sur le siteduzero, et c'est très intéressant de voir toutes les failles que mon site peut avoir ... Avant de le mettre en ligne j'utiliserai ces techniques =) Merci beaucoup!

Répondre à myself789
Tom's Guide > Forum > Programmation > Javascript + MySQL
Aller à :

Il y a 2155 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens