Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Metin2 > Metin2 Private Server
You last visited: Today at 02:47

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



PHP Login mit Sonderzeichen

Discussion on PHP Login mit Sonderzeichen within the Metin2 Private Server forum part of the Metin2 category.

Reply
 
Old   #1


 
.Onlyx3's Avatar
 
elite*gold: 0
The Black Market: 100/0/1
Join Date: Jun 2011
Posts: 3,382
Received Thanks: 1,796
PHP Login mit Sonderzeichen

Hey, kleine Frage.
In meiner register.php sind Sonderzeichen erlaubt, beim login jedoch nicht..
Jemand fixx ne Ahnung?

head.inc.php
PHP Code:
<?PHP
  
  
if(isset($_POST['submit']) && ($_POST['submit']=="login" || $_POST['submit']=="LOGIN" || $_POST['submit']=="Login")) 
  {
    if(!empty(
$_POST['userid']) && !empty($_POST['userpass']) && checkAnum($_POST['userid']) && checkAnum($_POST['userpass'])) 
    {
      
$sqlCmd "SELECT id,login,web_admin,email 
      FROM account.account 
      WHERE login 
      LIKE '"
.mysql_real_escape_string($_POST['userid'])."' 
      AND password=PASSWORD('"
.mysql_real_escape_string($_POST['userpass'])."') 
      LIMIT 1"
;
      
$sqlQry mysql_query($sqlCmd,$sqlServ);
      if(
mysql_num_rows($sqlQry)>0
      {
        
$getAdmin mysql_fetch_object($sqlQry);
        
$_SESSION['user_id'] = $getAdmin->id;
        
$_SESSION['user_name'] = $getAdmin->login;
        
$_SESSION['user_admin'] = $getAdmin->web_admin;
        
$_SESSION['user_email'] = $getAdmin->email;
        
$updateIP mysql_query("UPDATE account.account SET web_ip='".mysql_real_escape_string($_SERVER['REMOTE_ADDR'])."' WHERE id='".mysql_real_escape_string($getAdmin->id)."'",$sqlServ);
        
      }
    }
  }

  if(empty(
$_SESSION['user_id'])) 
  {
    unset(
$_SESSION['user_id']);
    unset(
$_SESSION['user_name']);
    unset(
$_SESSION['user_admin']);
    unset(
$_SESSION['user_email']);
  }
  else {
    
$sqlCmd "SELECT id,login,web_admin,email FROM account.account WHERE web_ip='".mysql_real_escape_string($_SERVER['REMOTE_ADDR'])."' AND id='".mysql_real_escape_string($_SESSION['user_id'])."' LIMIT 1";
    
$sqlQry mysql_query($sqlCmd,$sqlServ);
    if(
mysql_num_rows($sqlQry)>0
    {
      
$getAdmin mysql_fetch_object($sqlQry);
      
$_SESSION['user_id'] = $getAdmin->id;
      
$_SESSION['user_name'] = $getAdmin->login;
      
$_SESSION['user_admin'] = $getAdmin->web_admin;
      
$_SESSION['user_email'] = $getAdmin->email;
      
    }
    else
    {
        unset(
$_SESSION['user_id']);
        unset(
$_SESSION['user_name']);
        unset(
$_SESSION['user_admin']);
        unset(
$_SESSION['user_email']);
    }
  }
  

?>
login.php
PHP Code:
<div id="con-top">UserCP</div>
<div id="con-mid">
<?PHP
  
if(isset($_GET['do']) && $_GET['do']=="aktivieren" && isset($_GET['hash']) && !empty($_GET['hash'])) {
    if(
strlen($_GET['hash'])==32 && $_GET['hash']!=&& checkAnum($_GET['hash'])) {
      
$cmdHash "SELECT id,web_aktiviert FROM account.account WHERE web_aktiviert='".$_GET['hash']."' AND web_aktiviert!='1' LIMIT 1;";
      
$qryHash mysql_query($cmdHash,$sqlServ);
      
      if(
mysql_num_rows($qryHash)) {
      
        
$getData mysql_fetch_object($qryHash);
        
$userUpdate "UPDATE account.account SET web_aktiviert='1',status='OK' WHERE id='".$getData->id."' LIMIT 1;";
        
$updateQry mysql_query($userUpdate,$sqlServ);
        
        if(
$updateQry) {
          echo
'<p class="meldung">Ihr Account wurde erfolgreich aktiviert. Sie können sich nun einloggen.</p>';
          echo
'<meta http-equiv="refresh" content="1; URL=index.php?s=login"> ';
        }
        else {
          echo
'<p class="meldung">Query fehlgeschlagen. Bitte einen Admin kontaktieren!</p>';
        }
        
      }
      else {
        echo
'<p class="meldung">Es wurde kein passender Eintrag gefunden. Aktivierung fehlgeschlagen.</p>';
      }
      
    }
    else {
      echo
'<p class="meldung">Kein valider Hash!</p>';
    }
  }

  if(!empty(
$_SESSION['user_id'])) 
  {

    
    
$cmdStats "SELECT SUM( player.playtime ) AS ges_spielzeit, COUNT( * ) AS ges_chars, player_index.empire
    FROM player.player
    INNER JOIN player.player_index ON player_index.id = player.account_id
    WHERE player.account_id = '"
.$_SESSION['user_id']."'
    LIMIT 1"
;
    
    
$qryStats mysql_query($cmdStats,$sqlServ);
    
$getStats mysql_fetch_object($qryStats);
    
    if(!empty(
$getStats->empire)) {
      
$reich '<img src="img/reiche/'.$getStats->empire.'.png" title="Reich" alt="Reich"/>';
    }
    else {
      
$reich='kein Reich ausgewählt';
    }
    
    
    echo
'<table>
      <tr>
        <th class="topLine">Account:</th>
        <td class="tdunkel">'
.$_SESSION['user_name'].'</td>
      </tr>
      <tr>
        <th class="topLine">Reich:</th>
        <td class="thell">'
.$reich.'</td>
      </tr>
      <tr>
        <th class="topLine">Charaktere:</th>
        <td class="tdunkel">'
.$getStats->ges_chars.'</td>
      </tr>
      <tr>
        <th class="topLine">Gesamte Spielzeit:</th>
        <td class="thell">'
.$getStats->ges_spielzeit.' Minuten</td>
      </tr>'
;
    
$sqlAcc "SELECT account.social_id AS loeschcode, safebox.password AS lagerpw
    FROM account.account 
    LEFT JOIN player.safebox 
    ON account.id=safebox.account_id 
    WHERE account.id='"
.$_SESSION['user_id']."'";

    
$qryAcc mysql_query($sqlAcc) or die(mysql_error());
    
$getAcc mysql_fetch_object($qryAcc);
    
    if(empty(
$getAcc->lagerpw)) $getAcc->lagerpw '000000';
      
      echo
'<tr>
        <th class="topLine">Löschcode:</th>
        <td class="tdunkel">'
.$getAcc->loeschcode.'</td>
      </tr>
    </table>'
;

  }
  else 
  {
  
?>
<h2>Login</h2>
<form action="index.php?s=login" method="POST">
  <table>
    <tr>
      <th class="topLine">User ID:</th>
      <td class="tdunkel"><input type="text" name="userid" maxlength="16" size="20"/></td>
    </tr>
    <tr>
      <th class="topLine">Passwort:</th>
      <td class="thell"><input type="password" name="userpass" maxlength="16" size="20"/></td>
    </tr>
    <tr>
      <td class="topLine" style="text-align:center;" colspan="2"><input type="submit" name="submit" value="Login"/></td>
    </tr>
  </table>
  <p><a href="index.php?s=register">Registrierung</a> &bull; <a href="index.php?s=lostpw">Passwort vergessen</a></p>
</form>
  <?PHP
  
}
  
?>
</div>
<div id="con-bot"></div>
.Onlyx3 is offline  
Old 06/29/2014, 14:27   #2


 
elite*gold: 6
Join Date: Aug 2009
Posts: 1,611
Received Thanks: 859
In der head wird beim Passwort und Username folgende Funktion benutzt: "checkAnum".
In der function.inc.php wird diese so definiert:

PHP Code:
  function checkAnum($wert) {
    
$checkit preg_match("/^[a-zA-Z0-9]+$/",$wert);
    if(
$checkit) {
      return 
true;
    }
    else {
      return 
false;
    }
  } 
Entferne in der head.inc.php einfach diese Abfrage.

PHP Code:
checkAnum($_POST['userid']) && checkAnum($_POST['userpass'
.ŋight is offline  
Thanks
1 User
Old 06/29/2014, 14:36   #3


 
.Onlyx3's Avatar
 
elite*gold: 0
The Black Market: 100/0/1
Join Date: Jun 2011
Posts: 3,382
Received Thanks: 1,796
Wunderbar geht. Danke dir
.Onlyx3 is offline  
Reply


Similar Threads Similar Threads
Sonderzeichen
10/28/2012 - Off Topic - 5 Replies
Hallo ich wollte euch fragen ob es ein generator gibt wo ich ein wort eingebe zb hallo und es mir in Sonderzeichen macht ? Würde gerne das Wort Eskalation umwandeln kennt jemand einen Generator?
[S] Acc mit Sonderzeichen [B] PSC
05/05/2012 - WarRock Trading - 0 Replies
Hi, ich suche einen Account mit Sonderzeichen und / oder Großbuchstaben. Der Account kann gerne LVL 1 sein. Ich biete 10€ PSC bis 25€ PSC an. SKYPE: xlavendettax
Sonderzeichen :)
09/09/2011 - CrossFire - 6 Replies
Ich bins noma ... Wie macht man , wenn man den Namen ändert bzw. bestimmt diese eckige Klammer : "" Danke schonma
Sonderzeichen name
05/14/2011 - Metin2 Private Server - 1 Replies
Hallo ich spiele zurzeit auf einen gm server und mich nervt dauernd so einer der einen komischen namen hat. Er kickt und killt mich immer aber ich kann ihn nicht killen oder kicken .Name steht in der chatleiste ! Screen : Imageshack - mc2011051420135834.png Könnt ihr mir bitte sagen wie man diesen namen schreibt ??;)



All times are GMT +1. The time now is 02:47.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.