2016-04-15 12 views
-2
<script> 
    function process_Login(){ 
     var c = document.getElementById("usr").value; 
     var d = document.getElementById("pwd").value; 
     if(c.length==0){ 
      alert("ERROR: Your ID account is NULL"); 
     } 
     else if(isNaN(c)){ 
      alert("ERROR: Your ID must be number"); 
     } 
     else 
     { 
      $con = mysql_connect("localhost", "root", ""); 
      if(!$con){ 
       die("cound not connect"); 
      } 
      //select database 
      mysql_select_db("db_atmvisual"); 
      $query = mysql_query("SELECT * FROM tb_account WHERE account_id='c' AND account_pin='d'"); 
      $row = mysql_num_rows($query); 
      if($row!=0){ 
       window.location = "http://127.0.0.1:8080/atmvisual/processlogin.php"; 
      } 
      else 
       alert("loginfail"); 
      } 
     } 
</script> 

Ich versuche, Javascript zu verwenden, um meinen Code mit SQL zu verbinden, aber ich weiß nicht, warum es nicht läuft! Wenn es in Ordnung ist, wird es auf die andere Seite wechseln, sonst wird es eine Warnung ausgeben! Kannst du mir meinen Fehler sagen? und wie kann ich meinen Code verbessern?Wie kann ich Datenbank mit Javascript verwenden?

+0

Google AJAX in Javascript – Tushar

+0

Ist es möglich? – nisar

+0

Netter Versuch! Sie können mit clientseitigem JavaScript keine direkte Verbindung zu einer Datenbank herstellen. Sie sollten Ajax verwenden, d. H. Eine Anfrage an Ihren Server senden, der Server sollte die Daten erhalten und zurückgeben. – undefined

Antwort

1

Sie müssen verstehen, wo die Dinge passieren.

Da Sie script Tags verwendet haben, gehe ich davon aus, dass Ihr JavaScript-Code in eine Webseite integriert ist. Das läuft auf dem Computer des Endbenutzers.

Ihre Datenbank (vermutlich) ist nicht auf dem Computer des Endbenutzers, und Sie würden nicht wollen, dass es weit von einer alten Webseite da draußen geöffnet wird. Also, stattdessen haben Sie Ihre Datenbank auf Ihrem Server, und Sie nicht machen es zugänglich von der Außenwelt; Sie erstellen klar definierte Zugriffspunkte, mit denen Ihr Code nur die entsprechenden Vorgänge ausführen kann, die von Ihrem Webseitencode stammen könnten. Diese Access Points werden mithilfe von Code erstellt, den Sie für die Ausführung auf dem Server und nicht für den Client schreiben.

Ihr Server-Code kann auch in JavaScript (on NodeJS läuft, SilkJS, die JVM oder irgendwelchen von mehreren anderen Projekten), aber es ist auf dem Server, von der Außenwelt gut versteckt. Oder es kann in PHP, Java, C#, Python oder hundert anderen Sprachen sein; was auch immer Sie bevorzugen.

Die Verbindung zwischen dem Client und dem Server ist HTTP. Sie haben zwei Möglichkeiten für mit Operationen clientseitigen Code Trigger-Datenbank:

  1. Verwenden Sie ein Formular aus und haben die gesamte Seite

  2. Verwenden Ajax aktualisieren

Es gibt Anwendungsfälle für beide.

Hoffentlich gibt Ihnen das genug, um auf Ihre Forschung zu gehen.

Nachdem all das gesagt wurde, sind Frameworks, die es möglich machen, Ihre Server-Datenbank direkt vom clientseitigen Code abzufragen, wie Meteor. Zuletzt habe ich nach ein paar Jahren gesucht, als sie ziemlich neu und wahrscheinlich in Alpha waren und nicht viel (oder gar keine) Zugangskontrolle hatten, aber vermutlich haben sie das inzwischen angesprochen.

Verwandte Themen