Supportnet / Forum / Skripte(PHP,ASP,Perl...)
Verwendung von Register Globals
Frage
Hallo!
Ich habe einen Mailtausch und nun hat mein Provider die "Verwendung von Register Globals" eingestellt.
D.h.: Dieser Mailtausch funktioniert nun nicht mehr.
Ich muß also mein Script umschreiben.
Frage:
Wie ändere ich hier mein Login:
$db = mysql_connect($dbhost, $dbuser, $dbpass) or die(mysql_error());
mysql_select_db($dbname,$db) or die(mysql_error());
$daten=mysql_query("select * from mt_user where user=´$user´");
if(mysql_num_rows($daten)>0){
$uname=mysql_result($daten,0,"user");
$free=mysql_result($daten,0,"free");
$sperre=mysql_result($daten,0,"sperre");
$upass=mysql_result($daten,0,"pwd");
$sponsor=mysql_result($daten,0,"sponsor");
}
if($user==""){
$update="<center>Bitte einen Benutzername eingeben.</center>";
}else{
if($pwd==""){
$update="<center>Bitte ein Passwort eingeben.</center>";
}else{
if($user!="$uname"){
$update="<center>Benutzername wurde nicht gefunden.</center>";
}else{
if($pwd!="$upass"){
$update="<center>Passwort falsch.</center>";
}else{
if($sperre==1){
if($free==1){
if($upass==$pwd)
Ich habe mich mal schlau gemacht unf folgendes gefunden:
aus IF($´USERNAME´){
muß nun IF$_COOKIE/_POST/_GET[´USERNAME´] werden.
Nur wie kann ich dies nun ändern?
Es funktioniert weder das Login noch Mailbestätigung etc.
Antwort 1 von Risatara2
Hi,
Leider kann ich dir (noch) nicht weiter helfen, weil bei deiner Fehlerbeschreibung etwas fehlt. Du solltest nämlich vielleicht auch die HTML-Seite posten, die das Script aufruft.
Risatara
Leider kann ich dir (noch) nicht weiter helfen, weil bei deiner Fehlerbeschreibung etwas fehlt. Du solltest nämlich vielleicht auch die HTML-Seite posten, die das Script aufruft.
Risatara
Antwort 2 von Supermax
Eine einfache Methode ist auch die Verwendung der Funktion
import_request_variables()
Einfach am Anfang deines Scripts aufrufen, sollte weitere Änderungen vorerst überflüssig machen.
Aus Sicherheitsgründen solltest du aber dennoch für neue Seiten nur noch $_POST / $_GET / $_COOKIE / $_FILES verwenden, und auch deine bestehenden Scripts schrittweise anpassen.
import_request_variables()
Einfach am Anfang deines Scripts aufrufen, sollte weitere Änderungen vorerst überflüssig machen.
Aus Sicherheitsgründen solltest du aber dennoch für neue Seiten nur noch $_POST / $_GET / $_COOKIE / $_FILES verwenden, und auch deine bestehenden Scripts schrittweise anpassen.
Antwort 3 von Supermax
Noch ein Tipp: bei dieser Abfrage
solltest du unbedingt den Usernamen mittels mysql_escape_string() in eine "sichere" Form überführen:
Andernfalls könnte ein böswilliger User leicht ausführbaren SQL-Code in deine Abfrage einfügen, wenn er den entsprechenden Code als Username angibt.
$daten=mysql_query("select * from mt_user where user=´$user´"); solltest du unbedingt den Usernamen mittels mysql_escape_string() in eine "sichere" Form überführen:
$user_safe = mysql_escape_string($user);
$daten=mysql_query("select * from mt_user where user=´$user_safe´"); Andernfalls könnte ein böswilliger User leicht ausführbaren SQL-Code in deine Abfrage einfügen, wenn er den entsprechenden Code als Username angibt.

