Wenn id nihct existiert dann fehler aber wie

harderph

Erfahrenes Mitglied
Hallo
hab mal wieder probleme was fehlerbehandlung angeht!

ich habe ein aktivierungsscript mit dem sich logischerweise die user aktivieren !
Das wird über die URL übergeben
so
Code:
http://localhost/web2/index.php?page=aktivierung&uid=68&aktiviert=1

ich möchte aber das das script mir sagt das entweder die Userid (uid) nicht gibt und wenn der user schon aktiviert ist das er dem user sagt "du bist schon aktiviert"

also zwei fehlermeldungen!

Hiermal das sript
PHP:
if(($_REQUEST['uid'] )&& $_REQUEST['aktiviert']);

$_REQUEST['uid']       = mysql_real_escape_string($_REQUEST['uid']);
$_REQUEST['aktiviert'] = mysql_real_escape_string($_REQUEST['aktiviert']);
// prüfen auf userId und Aktieverung! Aktivierung ist mein Neu Registrierten = 0   0 für nicht aktiviert
$sql = "SELECT * FROM user_account WHERE uid='".$_REQUEST['uid']."' AND aktiviert='".$_REQUEST['aktiviert']."'"; 
 $query = mysql_query($sql) or die (mysql_error());
if(mysql_num_rows($query) > 0) {
  while($row = mysql_fetch_array($query)) {
  
////Wenn user Existiert dann Aktivieren 
$sql = "UPDATE user_account SET aktiviert ='1' WHERE uid = '".$_REQUEST['uid']."'";
mysql_query($sql) OR die(mysql_error());  
////Stadement zu erfolg des updates
  echo 'Ihr account ist jetzt Aktiviert worden! <a href=index.php?page=login">jetzt einloggen</a>';
  }
}
else 
{

//////Wenn fehler dann das hier:
echo "fehler";


}
ich hab das schon echt versucht zu coden! ich komme aber net drauf wie ich das machen muss!
Wäre net wenn mir jemand helfen könnte!
 
Frage erst nur ab, ob ein Benutzer mit angegebener ID existiert und lass dir im Erfolgsfall den Aktivierungsstatus zurückgeben:
Code:
SELECT `aktiviert` FROM `user_account` WHERE `uid`="…"
Gibt es keinen Datensatz, existiert kein Benutzerkonto mit angegebener ID; wird einer zurückgegeben, wird der Aktivierungsstatus geprüft.
 
Ich habe das jetzt so Gelöst! und es Funktiert auch!

PHP:
//////Hier prüfen ob es die UserID auch gibt//////
if (isset($_REQUEST['uid']) && ctype_digit((string) $_REQUEST['uid'])) { {
$uid = (int) $_REQUEST['uid']; 
	
if(($_REQUEST['uid'] )&& $_REQUEST['aktiviert']);

$_REQUEST['uid']       = mysql_real_escape_string($_REQUEST['uid']);
$_REQUEST['aktiviert'] = mysql_real_escape_string($_REQUEST['aktiviert']);
// prüfen auf userId und Aktieverung! Aktivierung ist mein Neu Registrierten = 0   0 für nicht aktiviert
                                                                                                                                                                                                          //////hier wird geprüft//////
$sql = "SELECT * FROM user_account WHERE uid='".$_REQUEST['uid']."' AND aktiviert='".$_REQUEST['aktiviert']."' AND uid='".$uid."'"; 

 $query = mysql_query($sql) or die (mysql_error());
 
if(mysql_num_rows($query) > 0) {
  while($row = mysql_fetch_array($query)) {
  
////Wenn user Existiert dann Aktivieren 
$sql = "UPDATE user_account SET aktiviert ='1' WHERE uid = '".$_REQUEST['uid']."'";
mysql_query($sql) OR die(mysql_error());  
////Stadement zu erfolg des updates
  echo 'Ihr account ist jetzt Aktiviert worden! <a href=index.php?page=login">jetzt einloggen</a>';
  }
}
else 
{
echo 'Ihr account ist schon Aktieviert';
  
        }

   }
}
else
{
////////////hier die meldung das der user nicht existiert!///////
echo "Sorry User Existiert nicht in unserer Datenbank";

}
 
Zuletzt bearbeitet:
Zurück