2010-11-20 6 views
3

pouvons-nous exécuter des requêtes mySQL dans les fonctions jQuery Calllback & misc. fonctionsPouvons-nous exécuter des requêtes SQL dans JQuery

comme requête simple

UPDATE EMPLOYEE SET PAY = PAY + 500 WHERE E_ID = '32' 
+0

Ceci est une question assez ouverte, vous demandez comment faire une mise à jour AJAX qui augmente de 500 $ de salaire de l'employé sélectionné , droite? Ensuite, nous aurons besoin d'autres informations, comme la langue/plate-forme que vous utilisez ... la réponse est différente si vous utilisez PHP vs ASP.Net vs ruby ​​... –

+0

En fait, la réponse est simplement NON. JQuery ne peut pas établir de connexion avec un serveur MySQL - vous aurez besoin d'un script côté serveur. – Konerak

Répondre

8

La meilleure chose que vous pouvez faire est d'émettre une requête AJAX à un serveur, puis exécuter cette requête en utilisant un code côté serveur. Vous pouvez utiliser jQuery.post() dans ce cas.

Modifier

Pour obtenir une vue d'ensemble AJAX Lire this

Lire this pour obtenir et aperçu des méthodes AJAX dans jQuery.

Ecrivez une logique côté serveur pour exécuter la commande SQL dans une page. Ensuite, en utilisant AJAX, envoyez une requête à cette page.

Exemple de code

$(function(){ 
    // Bind a click event to your anchor with id `updateSal` 
    $("#updateSal").click(function(){ 
     // get your employeeID 
     var empID = "32"; 
     // issue an AJAX request with HTTP post to your server side page. 
     //Here I used an aspx page in which the update login is written 
     $.post("test.aspx", { EmpID: empID}, 
      function(data){ 
       // callack function gets executed 
       alert("Return data" + data); 
     }); 

     // to prevent the default action 
     return false; 
    }); 
}); 
0

Vous ne pouvez pas accéder directement à une base de données de javascript/jQuery mais vous pouvez poster un service Web sur le serveur qui peut accéder à la base de données.

9

Alors que vous pourriez le faire en utilisant un rappel à un script côté serveur pour exécuter vos requêtes contre MySQL, ce serait un moyen rapide pour les failles de sécurité.

La génération de requêtes SQL à partir de tout ce qui s'exécute sur un périphérique d'utilisateur final est une très mauvaise idée.
Ne faites jamais confiance à quoi que ce soit qu'un utilisateur vous envoie.

0

Essayez ceci:

https://github.com/vinval/MyJSQL

Comment:

$.jsql({ 
tbName:"EMPLOYEE", 
set:["PAY=PAY+500"], 
where:"E_ID=32" 
}, function(){ 
//this is the callback 
}) 
+0

Voir le commentaire précédent. Cette bibliothèque permet à un client d'exécuter n'importe quelle instruction SQL sur le serveur. Très dangereux. Je ne vois rien dans la bibliothèque pour empêcher quiconque sur un client d'émettre des instructions SQL au serveur avec cette bibliothèque. – Jeff

Questions connexes