Gm -> PHP -> mysql VS. Gm -> mysql

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

  • Gm -> PHP -> mysql VS. Gm -> mysql

    Hi
    Ich habe irgendwie ein Problem mit der Suche... daher weiss ich nicht ob es dies Thema schon gab:
    Die Frage, wie man im Titel lesen kann, ist:
    Was ist schneller und sicherer: ( bei der Sicherheit hätte ich gerne Beispiele, da ich mich mit dem Hacken nicht so auskenne :S )
    1. Mit einer Dll direkt auf mysql zugreifen... oder:
    2. Über PHP auf mysql zugreifen.

    Falls es das Thema schon gibt... TEERT UND FEDERT MICH!
    NEIN! Natürlich nicht! Sagt schön bitte und danke, dass ich euch Abwechslung in den Alltag gebracht hab :thumbup:

    Also vielen Dank für die vieeeeelen Antworten :)
    Ich bin offen für jeden entdeckten Rechtschreibe Fehler.
    Behaltet sie also NICHT für euch!
    (lol als ich das ^ geschrieben hab war ich wohl auf Droge :wacko: )
  • Grundsätzlich ist es erstmal sicherer, mit einer DLL direkt auf SQL zuzugreifen, da bei dem Umweg über das PHP Skript ja auch die Gefahr besteht, dass diese Skripte von einer anderen Anwendung als deinem Programm aufgerufen werden. Es kommt jedoch auch stark auf das coding von a) der DLL und b) deinen Skripten an. Außerdem lassen die SQL Server von einigen Webhostern keine externen Zugriffe auf die Datenbanken zu. Da bleibt dir dann nichts anderes übrig als ein Skript dazwischen zu schalten.

    Und von der Schnelligkeit her hab ich das zwar nie getestet, aber ich würde sagen, dass von der Logik her eine DLL schneller sein sollte als PHP Skripte. Das müsste man aber mal testen.
  • T-Moe schrieb:

    Grundsätzlich ist es erstmal sicherer, mit einer DLL direkt auf SQL zuzugreifen, [...]
    Kann ich nicht nachvollziehen. Dafür muss der User nämlich einen Account auf deinem SQL-Server haben, mit dem er vermutlich viel mehr ändern kann, als du willst. Natürlich kannst du das Password im Sourcecode der DLL verstecken, aber das Password lässt sich mit einem Password-Sniffer schnell finden. Grundsätzlich ist eine Schnittstelle über eine weitere Serversoftware also sicherer, solange man sie anständig programmiert, da so ja nur bestimmte Sachen mit SQL ausgeführt werden können. Dafür bietet sich PHP ein bisschen an, da es einfach verfügbar ist, und relativ leicht ist. Das Problem ist, das es manchmal nicht ganz leicht ist, in PHP anständig und vor allem sicher zu Programmieren - das lernt man nicht in einer Woche. Meine persöhnliche Empfehlung ist da immer, ein gutes Buch über PHP zu lesen.

    Dafür ist vor allem PHP jedoch langsamer, direkter Zugriff wäre schneller. Die beste Lösung ist meinermeinung nach immer noch, ein eigenes Serverprogramm komplett zu schreiben - weder im GM, noch in PHP, sondern in einer anderen Programmiersprache, die sich auf einem Server gut betreiben lässt, Dieses Programm bräuchte dann auch kein SQL-Backend, sondern könnte alle Spielrelevanten Daten im seinem Speicher halten. Damit ist es schneller als jede SQL-Lösung und zugleich sicherer. Man muss nur den Speicher des Programms ab und zu zur Sicherheit auf der Festplatte speichern. Das ganze zu programmieren ist aber anspruchsvoller, zeitintensiver und braucht echten Server - da reicht eine Webspace nichtmehr.
  • in beiden Fällen werden die Daten direkt übertragen
    wenn jemand die daten abfängt kann er also immer schaden anrichten

    der vorteil von php :
    der Pösewicht kann nicht direkt mit passwort und benutzername auf die mysql datenbank zugreifen
    außerdem kann man bei der übertragung extra nicht intuitive codes und variablen verwenden
    damit nicht gleich klar ist dass hier grade z.B. die variable "Leben" übertragen wird

    €dit:
    "Dafür ist vor allem PHP jedoch langsamer"
    beim hochladen der tabellenwerte nicht
    unter der vorraussetzung man lässt die verbindung offen
    außerdem entfällt die nevige verbindungszeit
  • T-Moe schrieb:

    Und nicht der User benötigt die Zugangsdaten zu deinem Server, sondern dein Programm!
    Jep, aber das Programm wird an den User weitergegeben, inklusive der Zugangsdaten.

    iTeM schrieb:

    in beiden Fällen werden die Daten direkt übertragen
    wenn jemand die daten abfängt kann er also immer schaden anrichten
    Naja, mit Datenabfangen kann man noch keinen Schaden anrichten, nur mit dem ausnutzen dieser Daten. Man muss die Daten also so wählen, das sie möglichst wenig Ausgenutzt werden können. Wenn man Koordinaten übermittelt könnte man z.B. prüfen, ob sich diese innerhalb eines bestimmten Radiuses relativ zu den alten befinden, damit man sich nicht einfach woanders hinteleportieren kann. Passwörter für MySQL Datenbanken lassen sich grundsätzlich super ausnutzen ;)
  • Thx für die Antworten!
    Mir war eigentlich von Anfang an klar, dass PHP sicherer (sein kann). (Leider konnte ich nicht wirklich sagen warum... hatte wohl n Knoten :S )
    Dann werde ich wohl das ganze mit PHP machen.
    @iTeM: Wie kann man denn eine Verbindung mit PHP offen lassen? 8|

    Noch eine Anschlussfrage:
    Es gibt ja verschiedene dll's um auf PHP zuzugreifen (glaub ich :whistling: ) gibt's da EINE beste dll ?
    Ich bin offen für jeden entdeckten Rechtschreibe Fehler.
    Behaltet sie also NICHT für euch!
    (lol als ich das ^ geschrieben hab war ich wohl auf Droge :wacko: )
  • ach das hast du gemeint :P
    Ty ... ich wusste, dass man so was machen kann aber nicht, dass es schneller ist :D
    Ich bin offen für jeden entdeckten Rechtschreibe Fehler.
    Behaltet sie also NICHT für euch!
    (lol als ich das ^ geschrieben hab war ich wohl auf Droge :wacko: )