2011-04-29 7 views
0

Quand un utilisateur se connecte, je veux juste envoyer 2 paramètres à PHP et ensuite mettre à jour la table DB correspondante. Est-ce possible en javascript? Si possible, n'importe quel code ou liens appréciés.Accéder à MySQL via Javascript via PHP

+1

Avez-vous regardé autour de vous? – tradyblix

+0

vous feriez mieux d'utiliser PHP call lui-même pour mettre à jour les entrées de la base de données que d'utiliser JavaScript, Ajax est votre ami si vous avez vraiment besoin d'implémenter cela dans JS seulement. –

+0

@drachenstern: Je suppose que vous n'avez pas lu la question attentivement, l'OP veut mettre à jour deux valeurs, quand l'utilisateur se connecte (prenons compte par exemple - en supposant - disons que l'OP veut mettre à jour le compte pour l'utilisateur). Cela peut être facilement réalisé en ajoutant une fonction afterLogin() en PHP qui mettrait à jour ces valeurs après chaque connexion - VOIR MOM NO AJAX! :) Et encore, je pense que vous n'avez pas lu mon commentaire soigneusement non plus - j'ai mentionné Ajax là - qui est même que ce dont Delan a parlé. Le scénario pourrait être différent pour sûr .. –

Répondre

1

Vous pouvez utiliser JavaScript pour demander un script PHP en utilisant XMLHttpRequest, et inclure une interaction de base de données avec MySQL dans le script PHP.

+0

Je présume qu'il a besoin de code réel comme exemple – jcolebrand

+0

Merci pour la réponse @Delan Azabani, @drachenstern et chacun. Vous avez raison @drachenstern. Je l'essaie depuis longtemps mais les JS/AJAX ne se connectent pas à PHP. J'ai besoin d'un exemple de code. –

0

AJAX est la clé que vous cherchez.

Un framework javascript tel jQuery pourrait vous aider beaucoup. Il existe plusieurs méthodes AJAX intégrées dans le documentation, en particulier this method.

0

Il est vraiment très simple d'utiliser JQuery, comme l'a dit Pedrorezende. La façon la plus simple serait quelque chose comme

$.post('sample/path?var1=value&var2=otherValue'); 

Edit: voici le code complet, je crois que ce serait accomplir ce que vous voulez (non testé):

<script type="tex/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js"> 
</script> 
<script type="text/javascript"> 
    $("#login_form").submit(function() { 
    $.post("login_handler.php", $("#login_form").serialize()); 
    } 
</script> 
<body> 
    <form id="login_form"> 
     <input type="text" name="username"></input> 
     <input type="text" name="password"></input> 
     <input type="submit" value="login"> 
    </form> 
</body> 

Le premier script load JQuery. Le deuxième script creates the handler et sends the form data à un fichier PHP externe.

Puis dans login_handler.php vous enverriez votre requête à MySQL en utilisant les valeurs $_POST.

+0

Ai-je besoin d'appeler cette fonction en utilisant une interface externe si nécessaire, comme l'utilisation de callback? –