![]() |
Anzeige:
|
|
|||||||
| PHP/MySQL Alles rund um die Programmiersprache PHP sowie MySQL. |
|
![]() |
|
|
LinkBack | Themen-Optionen | Ansicht |
|
|
#1 (Direktlink) |
|
Gast
Beiträge: n/a
|
Hallo!
Ich Arbeite derzeit an einem Onlinespiel und versuche, den LogIn auf einen MySQL-Server zu legen. Dabei möchte ich rein im Voraus anmerken: Ich bin ein absoluter Noob in Sachen MySQL und PHP. Die Datenbank läuft, ein etwas älteres Script, zusammenkopiert liefert nur merkwürdige Werte aus. Dieses Script hab ich auch nicht mehr. Ich möchte, dass ich aus dem Spiel ein PHP-Dokument auf dem Server aufrufe, welches das vom Programm gesendete Passwort und Username (/send.php&usn$=name$&pw$=pass$%source=101 oder so ähnlich) mit der DB abgleicht und jeweils eine 1 für "Alles Roger, kannst rein" oder 0 für "Komm, geh weg" sendet. Wie kann ich das erreichen oder hat vielleicht jemand Lust, mir zu helfen? |
|
|
|
|
#2 (Direktlink) |
|
Super-Moderator
![]() Registriert seit: 22.05.2005
Ort: c:\DE\NDS\SHG\Rinteln
Alter: 21
Beiträge: 5.808
|
Also erstmal würde ich ein Loginscript grundsätzlich nicht per GET-, sondern per POST-Methode programmieren.
Schau dir das mal an: Quakenet/#php Tutorial - de - Loginskript
__________________
Hauptrechner: Intel Q6600 | Gigabyte P35-DQ6 | ATi Radeon 2900XT | 4 GB OCZ RAM | Corsair HX520W | 31 TB Festplattenkapazität | 120 GB OCZ Vertex II SSD | Wasserkühlung LAN-Rechner: Intel Xeon UP W3520 | nVidia Geforce 8800 GTS | 4 GB TeamGroup RAM | LC Power LC6550 | 640 GB Platte HTPC: AMD Athlon II X2 250 | Foxconn A88GM Deluxe | 4 GB TeamGroup RAM | 3 TB Hitachi Platte |
|
|
|
|
|
#3 (Direktlink) |
|
Gast
Beiträge: n/a
|
Ich rufe die URL direkt aus dem Spiel auf, nicht von einer Website. Soweit ich das weiß, funktioniert das nur per $_GET
Nun: Das script gibt selbst bei korrekten Daten eine 0 aus: Code:
<?php
include config.php;
$username = $_GET["username"];
$password = $_GET["password"];
$request = "SELECT name, passwd FROM continuum WHERE username LIKE '$username' LIMIT 1";
$sum = mysql_query($request);
$row = mysql_fetch_object($sum);
if($row->password == $password)
{
echo "1";
}
else
{
echo "0";
}
?>
|
|
|
|
#4 (Direktlink) | |
|
Super-Moderator
![]() Registriert seit: 22.05.2005
Ort: c:\DE\NDS\SHG\Rinteln
Alter: 21
Beiträge: 5.808
|
ERST EINMAL: GANZ WICHTIG, mysql_real_escape_string() benutzen!!!!!
PHP: mysql_real_escape_string - Manual php-homepage.de - Die deutschsprachige Ressource fr PHP und MySQL- Manual - mysql_real_escape_string IMMER, wenn der Benutzer Eingaben macht und diese Eingaben zur Datenbank geschickt werden MUSS die Funktion AUSNAHMSLOS (!!) verwendet werden - ansonsten hast du eine große Sicherheitslücke. Allgemein solltest du dich in den Bereich Sicherheit beim Programmieren gründlich einlesen. Dein Loginscript ist wirklich sehr sehr simpel gehalten - da gibts definitiv noch Verbesserungsbedarf Wie gesagt: Schau im Internet mal nach einem Loginscript, da gibts tausende fertige Scripts - sicher auch per GET-Methode. Der Fehler bei deinem Script liegt vermutlich hier: Zitat:
Außerdem bitte zum Entwickeln bitte folgende Funktion verwenden: // Melde alle PHP Fehler error_reporting(E_ALL); Viele Grüße Desert_Igel
__________________
Hauptrechner: Intel Q6600 | Gigabyte P35-DQ6 | ATi Radeon 2900XT | 4 GB OCZ RAM | Corsair HX520W | 31 TB Festplattenkapazität | 120 GB OCZ Vertex II SSD | Wasserkühlung LAN-Rechner: Intel Xeon UP W3520 | nVidia Geforce 8800 GTS | 4 GB TeamGroup RAM | LC Power LC6550 | 640 GB Platte HTPC: AMD Athlon II X2 250 | Foxconn A88GM Deluxe | 4 GB TeamGroup RAM | 3 TB Hitachi Platte |
|
|
|
|
|
|
#5 (Direktlink) |
|
Gast
Beiträge: n/a
|
Nun gibts gar kein Echo mehr aus. So siehts jetzt aus (Hab mir gestern im Chat noch helfen lassen. Nun sind wir beide Ratlos:
Code:
<?php
error_reporting(E_ALL);
include config.php; // Login Data and DB_Connect
$username = mysql_escape_string($_GET["username"]); //fixed
$password = mysql_escape_string($_GET["password"]); //same here
$request = "SELECT `name`, `passwd` FROM `siriuslogin` WHERE `username` = ".$username." LIMIT 1";
$sum = mysql_query($request) or die(mysql_error());
$row = mysql_fetch_object($sum) or die(mysql_error());
if($row->passwd == $password)
{
echo "1";
}
else
{
echo "0";
}
?>
|
|
|
|
|
#6 (Direktlink) |
|
Super-Moderator
![]() Registriert seit: 22.05.2005
Ort: c:\DE\NDS\SHG\Rinteln
Alter: 21
Beiträge: 5.808
|
Was gibt denn
echo $request; aus? Debugging mit var_dump() probiert?
__________________
Hauptrechner: Intel Q6600 | Gigabyte P35-DQ6 | ATi Radeon 2900XT | 4 GB OCZ RAM | Corsair HX520W | 31 TB Festplattenkapazität | 120 GB OCZ Vertex II SSD | Wasserkühlung LAN-Rechner: Intel Xeon UP W3520 | nVidia Geforce 8800 GTS | 4 GB TeamGroup RAM | LC Power LC6550 | 640 GB Platte HTPC: AMD Athlon II X2 250 | Foxconn A88GM Deluxe | 4 GB TeamGroup RAM | 3 TB Hitachi Platte |
|
|
|
|
|
#7 (Direktlink) |
|
Gast
Beiträge: n/a
|
Wir habens.
Gesichtspalmenmoment 2012: Code:
<?php
include "config.php"; // Login Data and DB_Connect
$username = $_GET["username"];
$password = $_GET["password"];
$request = "SELECT `username`, `passwd` FROM `siriuslogin` WHERE `username` = '".$username."' ";
$sum = mysql_query($request) or die(mysql_error());
$row = mysql_fetch_object($sum);
if($row->passwd == $password)
{
echo "1";
}
else
{
echo "0";
}
?>
|
|
|
|
#8 (Direktlink) |
|
Erfolgreich angemeldet
![]() Registriert seit: 10.11.2010
Beiträge: 11
|
"Ich Arbeite derzeit an einem Onlinespiel und versuche, den LogIn auf einen MySQL-Server zu legen.
Dabei möchte ich rein im Voraus anmerken: Ich bin ein absoluter Noob in Sachen MySQL und PHP." Und da traust Du Dich bereits an ein Spiel? Dafür erhälst Du schon einmal meinen höchsten Respekt. Ich programmier jetzt seit fast 5 Jahren PHP und das mittlerweile richtig gut, aber ein Spiel programmieren - das will gut geplant sein. Wie ist denn der aktuelle Stand? Vielleicht können wir Dir ja noch ein wenig helfen? |
|
|
|
![]() |
|
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Passwortabfrage bei Benutzerwechsel | Alfi155 | Windows XP | 4 | 23.06.2007 22:30 |
| MySQL Dumper/MySQL Datenbank Frage - newbie frage | Roller | Homepagegestaltung | 0 | 15.01.2007 16:26 |
| Passwortabfrage... | Erik_65 | C/C++, Visual C++, Visual C++.NET | 1 | 10.08.2005 12:09 |
| MySQL Bot bedroht MySQL Server und verbreitet sich darüber | Rolf | Aktuelle Meldungen | 0 | 31.01.2005 18:36 |
| Passwortabfrage | Rolf | Allgemein | 9 | 11.03.2003 15:35 |