Cordova / Phonegap MySQL Tutorial

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Cordova / Phonegap MySQL Tutorial

      Sicherheitshinweis:
      Eine [lexicon]Cordova[/lexicon] App wird nicht verschlüsselt. Jeder kann die App entpacken und erhält damit Zugriff auf den Quellcode! Das ist der Grund dafür, dass wir keine Passwörter oder sonstiges in den Quellcode schreiben.


      Überblick
      In diesem Tutorial werde ich Euch zeigen, wie Ihr mit Hilfe von Ajax auf eine PHP Datei zugreifen könnt, welche wiederum Zugriff auf die MySQL-Datenbank (DB) hat.
      Über diesen Weg werden wir Daten abfragen, eintragen und verändern.
      Ich gehe den Umweg über PHP, weil sonst jeder, der unsere APP hat, in den Quellcode schauen und so an die Zugangsdaten der MySQL-Datenbank kommen könnte.

      Schritt 1
      Los geht es mit Ajax.
      Ajax(Asynchronous [lexicon]JavaScript[/lexicon] and XML) bietet uns die Möglichkeit in [lexicon]Javascript[/lexicon] Daten mit PHP auszutauschen, ohne das die Seite neu geladen werden muss.

      Wichtig: Ihr müsst JQuery einbinden. Das macht ihr entweder so

      Quellcode

      1. <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
      oder, wenn ihr die Daten nicht über das Internet laden wollt: jquery-mobile.min downloaden und entsprechend einbinden.

      In Variable 1 und in Variable 2 können Daten übergeben werden. Es kann auch nur eine Variable übergeben werden (dann nur name1: Variable1 (und kein , )). Wenn ihr mehr Variablen übergeben wollt, setzt ihr an entsprechender Stelle einfach ein ,. Wichtig ist, dass ihr die Variablen vor Aufruf der Ajax Funktion deklariert.

      HTML-Quellcode

      1. <!DOCTYPE>
      2. <html>
      3. <head>
      4. <script src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
      5. <script type="text/javascript">
      6. function DatenbankAufruf() {
      7. $.ajax({
      8. type: 'GET',
      9. url: 'http://URL',
      10. data: {
      11. name1: Variable1,
      12. name2: Variable2
      13. },
      14. dataType: 'jsonp',
      15. success: function (jsonData) {
      16. alert("SUCCESS");
      17. daten = jsonData; // Sichert die Callback-Daten in der Globalen Variable daten
      18. console.log(daten);
      19. },
      20. error: function (jqXHR, exception) {
      21. alert("ERROR")
      22. },
      23. complete: function () {
      24. }
      25. });
      26. }
      27. </script>
      28. </head>
      29. <body>
      30. <button id="testButton" onclick="DatenbankAufruf()"></button>
      31. </body>
      32. </html>
      Alles anzeigen


      Schritt 2:
      Weiter gehts mit PHP:

      PHP-Quellcode

      1. <?php
      2. // Datenbank einbinden
      3. $db = mysqli_connect("test.your-server.de:5555", "test_7", "PassswortHier", "test_db7");
      4. if(!$db)
      5. {
      6. exit("Verbindungsfehler: ".mysqli_connect_error());
      7. }
      8. //Verarbeite Daten: Speichert die Daten aus Variable1 in globaler Variable $Variabel1
      9. $Variable1 = $_REQUEST['Name1'];
      10. //Verarbeite Daten Speichert die Daten aus Variable2 in globaler Variable $Variabel1
      11. $Variable2 = $_REQUEST['Name2'];
      12. $LogData = json_decode('['.$RegData.']', true);
      13. // MySQL Datebankabfrage
      14. $DB_abfrage = mysqli_query($db, "SELECT beispielFeld FROM beispielDatenbank where beispiel = '".$Variable1."'");
      15. while($row = mysqli_fetch_object($DB_abfrage))
      16. {
      17. $ergebniss1 = $row->feldName;
      18. }
      19. $callback = array($ergebniss1);
      20. header('Content-type: application/json');
      21. echo $_REQUEST['callback'].'('.utf8_encode(json_encode($callback)).')';
      22. ?>
      Alles anzeigen


      Hier werden die mit Ajax übertragenen Daten (Variable 1 und Variable 2) an PHP übergeben und in $Variable 1 und $Variable 2 gespeichert. Danach könnt ihr mit Hilfe von PHP eine Datenbankabfrage oder einen Datenbankeintrag vornehmen. Im Beispiel seht Ihr eine Abfrage. Das Resultat aus der Abfrage wird (nehmen wir an Variable 1 hat den Wert "testVar" )

      SQL-Abfrage

      1. SELECT beispielFeld FROM beispielDatenbank where beispiel = 'testVar'


      in die Variable $ergebniss1 gespeichert. Diese wiederum packe ich in den Array $callback. Wenn mehrere Werte übergebn werden sollen wird dieser erweitert:

      Quellcode

      1. $callback = array($ergebniss1, $ergebniss2 );

      Das Array $callback wird nun an [lexicon]Javascript[/lexicon] übergeben und in der Variable "Daten" gespeichert.
      Man vergisst vielleicht, wo man die Friedenspfeife vergraben hat. Aber man vergisst niemals, wo das Beil liegt.
      Der Krieg ist die Fortsetzung der Politik mit anderen Mitteln.

      Dieser Beitrag wurde bereits 13 mal editiert, zuletzt von Vincent Fuhler ()