hilfe syntax error

10/20/2011 23:32 SpikeXD#1
hilfe ich habe wieder sheibenkleister gebaut...
on line 179
PHP Code:
<?php
    
//THIS MUST COME IN HOME PAGE, BEFORE YOU ALL, INCLUDING <html>
    
require "config.php";
    
session_start();
    
$user $_SESSION['user'];
    
$login $_POST['login'];
    
$senha $_POST['senha'];
    
$act $_GET['a'];
    function 
em()
    {
        
$args func_get_args();
        for (
$cont 1$cont func_num_args(); $cont++)
        {
            
$arg func_get_arg($cont);
            if (
$arg == $args[0])
                return 
true;
        }
        return 
false;
    }
?>


<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<?php
while (1)
{
    if ((
$act != 'login') && ($act != 'char') && ($act != 'job') && ($act != 'setjob') && ($act != 'resetpos') && ($act != 'listbuff') && ($act != 'buffar') && ($act != 'senha'))// && ($act != 'res'))
    
{
        echo 
'<center><form method="post" action="pannel.php?a=login">';
        echo 
'Username: <input type="text" name="login" class="h4"><p>';
        echo 
'Password: <input type="password" name="senha" class="h4"><p>';
        echo 
'<input type="submit" value="Einloggen" name="OK" class="h4">';
        echo 
'</form></center>';
    }
    if (
$act == 'login')
    {
        
$senha md5('kikugalanet' $senha);
        
$resultado mysql_query("select * from accounts where username = '$login' and password = '$senha'");
        if (
is_resource($resultado))
            
$qde_registros mysql_num_rows($resultado);
        if (
$qde_registros != 0)
        {
            
$act 'char';
            
$_SESSION['user'] = $login;
            
$user $login;
            
session_write_close();
        }
        else
        {
            echo 
"<center><br><font color='#FF0000'>Username oder Password Falsch!.</font><br><br>";
            echo 
'<form method="post" action="pannel.php?a=login">';
            echo 
'Username: <input type="text" name="login" class="h4"><p>';
            echo 
'Password: <input type="password" name="senha" class="h4"><p>';
            echo 
'<input type="submit" value="Einloggen" name="OK" class="h4">';
            echo 
'</form></center>';
        }
    }
    if (
$act == 'char')



        if (isset(
$_SESSION['user']))



    if (
$act == 'senha')
    {
        if (isset(
$_SESSION['user']))
        {
            
$login $_POST["login"];
            
$senhaA $_POST["senhaAntiga"];
            
$senhaN $_POST["senhaNova"];
            
$senhaN2 $_POST["senhaNova2"];
            if ((!isSet(
$_POST["login"])) && (!isSet($_POST["senhaAntiga"])) && (!isSet($_POST["senhaNova"])) && (!isSet($_POST["senhaNova2"])))
            {
                echo 
'<form method="post" action="index.php?site=usercp&a=senha">';
                echo 
'<br>Login <input size ="15" class="h4" type="text" name="login" READONLY value="' $user '"><p>';
                echo 
'Old Password <input size ="15" class="h4" type="password" name="senhaAntiga"><p>';
                echo 
'New Password <input size ="15" class="h4" type="password" name="senhaNova"><p>';
                echo 
'Confirm New Password <input size ="15" class="h4" type="password" name="senhaNova2"><p>';
                echo 
'<input class="h4" size="15" type="submit" value="OK" name="OK">';
                echo 
'</form>';
            }
            else
            {
                
$senhaNova md5("kikugalanet" $senhaN);
                if (
md5("kikugalanet" $senhaN2) != $senhaNova)
                {
                    echo 
"<h3><font color='#FF0000'>WARNUNG</font>: Das neue Passwort ist nicht bekannt!.</h3>";
                    unset(
$_POST["login"]);
                    unset(
$_POST["senhaAntiga"]);
                    unset(
$_POST["senhaNova"]);
                    unset(
$_POST["senhaNova2"]);
                    
$act 'senha';
                    continue;
                }
                else
                {
                    
$senhaAntiga md5("kikugalanet" $senhaA);
                    
$res mysql_query("select * from accounts where username = '$login' AND password = '$senhaAntiga'");
                    
$qtde mysql_num_rows($res);
                    if (
$qtde == 0)
                    {
                        echo 
"<h3><font color='#FF0000'>NOTICE</font>: Please fill up all fields.</h3>";
                        unset(
$_POST["login"]);
                        unset(
$_POST["senhaAntiga"]);
                        unset(
$_POST["senhaNova"]);
                        unset(
$_POST["senhaNova2"]);
                        
$act 'senha';
                        continue;
                    }
                    else
                    {
                        
$res mysql_query("update accounts set password = '$senhaNova' where username = '$login' and password = '$senhaAntiga'");
                        if (
mysql_affected_rows() != 0)
                        {
                            echo 
"<font size='2'>Password changed successfully.</font>";
                            unset(
$_POST["login"]);
                            unset(
$_POST["senhaAntiga"]);
                            unset(
$_POST["senhaNova"]);
                            unset(
$_POST["senhaNova2"]);
                            
$act 'senha';
                            continue;
                        }
                        else
                        {
                            echo 
"<h3><font color='#FF0000'>WARNUNG</font>: Ändern des Passworts fehlgeschlagen.</h3>";
                            unset(
$_POST["login"]);
                            unset(
$_POST["senhaAntiga"]);
                            unset(
$_POST["senhaNova"]);
                            unset(
$_POST["senhaNova2"]);
                            
$act 'senha';
                            continue;
                        }
                    }
                }
            }
        }
    }
/*    if ($act == 'res')
    {
        if (isset($_SESSION['user']))
        {
            $id = $_GET["char"];
            //$resultado = mysql_query("select * from characters AS c INNER JOIN accounts AS a ON a.username = c.accountname WHERE c.id = $id AND a.username = '$user'");
            $resultado = mysql_query("select * from accounts where username = '$user'");
            $qde_registros = mysql_num_rows($resultado);
            if ($qde_registros != 0)
            {
                $res = mysql_query("select * from characters where id = $id");
                $reg = mysql_fetch_assoc($res);
                $lvl = $reg["level"];
                $res = $reg["resets"];
                $res2 = $res + 1;
                $idJob = $reg["class"];
                if (($lvl == 120) && ($idJob >= 24) && ($idJob <= 31))
                {
                    $res2 = mysql_query("update characters set resets = $res2, level = 1, exp = 0 where id = $id");
                    if (mysql_affected_rows() != 0)
                    {
                        echo "<h3>Reset erfolgreich.</h3>";
                        $act = 'char';
                        continue;
                    }

                {
                    echo "<h3><font color='#FF0000'>WARNUNG</font>: Dieser Character kann nicht resettet werden.</h3>";
                    $act = 'char';
                    continue;
                }
            }
        }
    }
*/
    
break;


?>
ich selber finde den fehler nicht wirklich da ich php noch immer noch nicht so kann
10/20/2011 23:43 Devil589#2
Mach vor das ?> noch eine geschlossene geschweifte Klammer " } ".
Sprich mach es in Zeile 178.

Wenn man eine Schleife öffnet, sollte man diese auch wieder schließen. ;)

See Ya!
10/20/2011 23:45 SpikeXD#3
danke ich hätte es jetz nicht gefunden da ich wie gesagt noch beim lernen bin

hier noch ein fehler er erkennt oder mag wohl das else nicht und das brauche ich aber um den login zu bestätigen
PHP Code:
<?php
    
//THIS MUST COME IN HOME PAGE, BEFORE YOU ALL, INCLUDING <html>
    
require "config.php";
    
session_start();
    
$user $_SESSION['user'];
    
$login $_POST['login'];
    
$senha $_POST['senha'];
    
$act $_GET['a'];
    function 
em()
    {
        
$args func_get_args();
        for (
$cont 1$cont func_num_args(); $cont++)
        {
            
$arg func_get_arg($cont);
            if (
$arg == $args[0])
                return 
true;
        }
        return 
false;
    }
?>


<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<?php
while (1)
{
    if ((
$act != 'login') && ($act != 'char') && ($act != 'job') && ($act != 'setjob') && ($act != 'resetpos') && ($act != 'listbuff') && ($act != 'buffar') && ($act != 'senha'))// && ($act != 'res'))
    
{
        echo 
'<center><form method="post" action="pannel.php?a=login">';
        echo 
'Username: <input type="text" name="login" class="h4"><p>';
        echo 
'Password: <input type="password" name="senha" class="h4"><p>';
        echo 
'<input type="submit" value="Einloggen" name="OK" class="h4">';
        echo 
'</form></center>';
    }
    if (
$act == 'login')
    {
        
$senha md5('kikugalanet' $senha);
        
$resultado mysql_query("select * from accounts where username = '$login' and password = '$senha'");
        if (
is_resource($resultado))
            
$qde_registros mysql_num_rows($resultado);
        if (
$qde_registros != 0)
        {
            
$act 'char';
            
$_SESSION['user'] = $login;
            
$user $login;
            
session_write_close();
        }
        else
        {
            echo 
"<center><br><font color='#FF0000'>Username oder Password Falsch!.</font><br><br>";
            echo 
'<form method="post" action="pannel.php?a=login">';
            echo 
'Username: <input type="text" name="login" class="h4"><p>';
            echo 
'Password: <input type="password" name="senha" class="h4"><p>';
            echo 
'<input type="submit" value="Einloggen" name="OK" class="h4">';
            echo 
'</form></center>';
        }
    }
    if (
$act == 'char')
    {
        if (isset(
$_SESSION['user']))
        {
            
$resultado mysql_query("select * from accounts AS a WHERE a.username = '$user'");
            
$qde_registros mysql_num_rows($resultado);
            if (
$qde_registros != 0)


             {
        else
        {

            echo 
"<font color='#FF0000'>You signed on this, please log.</font><br>";
            echo 
'<form method="post" action="pannel.php?a=login">';
            echo 
'Username: <input class="4" size="15" type="text" name="login"><p>';
            echo 
'Password: <input class="4" size="15" type="password" name="senha"><p>';
            echo 
'<input class="4" size="15" type="submit" value="login" name="OK">';
            echo 
'</form>';
        }
    }




    if (
$act == 'senha')
    {
        if (isset(
$_SESSION['user']))
        {
            
$login $_POST["login"];
            
$senhaA $_POST["senhaAntiga"];
            
$senhaN $_POST["senhaNova"];
            
$senhaN2 $_POST["senhaNova2"];
            if ((!isSet(
$_POST["login"])) && (!isSet($_POST["senhaAntiga"])) && (!isSet($_POST["senhaNova"])) && (!isSet($_POST["senhaNova2"])))
            {
                echo 
'<form method="post" action="index.php?site=usercp&a=senha">';
                echo 
'<br>Login <input size ="15" class="h4" type="text" name="login" READONLY value="' $user '"><p>';
                echo 
'Old Password <input size ="15" class="h4" type="password" name="senhaAntiga"><p>';
                echo 
'New Password <input size ="15" class="h4" type="password" name="senhaNova"><p>';
                echo 
'Confirm New Password <input size ="15" class="h4" type="password" name="senhaNova2"><p>';
                echo 
'<input class="h4" size="15" type="submit" value="OK" name="OK">';
                echo 
'</form>';
            }
            else
            {
                
$senhaNova md5("kikugalanet" $senhaN);
                if (
md5("kikugalanet" $senhaN2) != $senhaNova)
                {
                    echo 
"<h3><font color='#FF0000'>WARNUNG</font>: Das neue Passwort ist nicht bekannt!.</h3>";
                    unset(
$_POST["login"]);
                    unset(
$_POST["senhaAntiga"]);
                    unset(
$_POST["senhaNova"]);
                    unset(
$_POST["senhaNova2"]);
                    
$act 'senha';
                    continue;
                }
                else
                {
                    
$senhaAntiga md5("kikugalanet" $senhaA);
                    
$res mysql_query("select * from accounts where username = '$login' AND password = '$senhaAntiga'");
                    
$qtde mysql_num_rows($res);
                    if (
$qtde == 0)
                    {
                        echo 
"<h3><font color='#FF0000'>NOTICE</font>: Please fill up all fields.</h3>";
                        unset(
$_POST["login"]);
                        unset(
$_POST["senhaAntiga"]);
                        unset(
$_POST["senhaNova"]);
                        unset(
$_POST["senhaNova2"]);
                        
$act 'senha';
                        continue;
                    }
                    else
                    {
                        
$res mysql_query("update accounts set password = '$senhaNova' where username = '$login' and password = '$senhaAntiga'");
                        if (
mysql_affected_rows() != 0)
                        {
                            echo 
"<font size='2'>Password changed successfully.</font>";
                            unset(
$_POST["login"]);
                            unset(
$_POST["senhaAntiga"]);
                            unset(
$_POST["senhaNova"]);
                            unset(
$_POST["senhaNova2"]);
                            
$act 'senha';
                            continue;
                        }
                        else
                        {
                            echo 
"<h3><font color='#FF0000'>WARNUNG</font>: Ändern des Passworts fehlgeschlagen.</h3>";
                            unset(
$_POST["login"]);
                            unset(
$_POST["senhaAntiga"]);
                            unset(
$_POST["senhaNova"]);
                            unset(
$_POST["senhaNova2"]);
                            
$act 'senha';
                            continue;
                        }
                    }
                }
            }
        }
    }
/*    if ($act == 'res')
    {
        if (isset($_SESSION['user']))
        {
            $id = $_GET["char"];
            //$resultado = mysql_query("select * from characters AS c INNER JOIN accounts AS a ON a.username = c.accountname WHERE c.id = $id AND a.username = '$user'");
            $resultado = mysql_query("select * from accounts where username = '$user'");
            $qde_registros = mysql_num_rows($resultado);
            if ($qde_registros != 0)
            {
                $res = mysql_query("select * from characters where id = $id");
                $reg = mysql_fetch_assoc($res);
                $lvl = $reg["level"];
                $res = $reg["resets"];
                $res2 = $res + 1;
                $idJob = $reg["class"];
                if (($lvl == 120) && ($idJob >= 24) && ($idJob <= 31))
                {
                    $res2 = mysql_query("update characters set resets = $res2, level = 1, exp = 0 where id = $id");
                    if (mysql_affected_rows() != 0)
                    {
                        echo "<h3>Reset erfolgreich.</h3>";
                        $act = 'char';
                        continue;
                    }

                {
                    echo "<h3><font color='#FF0000'>WARNUNG</font>: Dieser Character kann nicht resettet werden.</h3>";
                    $act = 'char';
                    continue;
                }
            }
        }
    }
*/
    
break;
}

?>
10/21/2011 01:14 Devil589#4
Was ist denn genau der Fehler?
Denn ohne eine Fehlermeldung kann man kaum weiter helfen.
10/22/2011 18:13 SpikeXD#5
Parse error: syntax error, unexpected T_ELSE on line 69
aber wenn ich das wegmache dann kann ich das loginscript vergessen weil der mich dann nnicht mer einloggen lässt da bei den "if" das "else" fehlt und es soll ja nur dannn ausgeführt werden wenn das if nicht geht und nicht beides auf ein mal. wenn meine logik kappierst biste gut xD.
10/22/2011 18:44 Devil589#6
Kein Wunder dass es auch nicht funktioniert.
Du solltest dir mal angewöhnen, sobald du eine geschweifte Klammer auf machst, diese auch wieder zu schließen.
Denn es fehlten wieder einmal 2 geschweifte Klammern.

Der Code hier hat die beiden geschweiften Klammern drin. Versuch es damit.
Code:
<?php
    //THIS MUST COME IN HOME PAGE, BEFORE YOU ALL, INCLUDING <html>
    require "config.php";
    session_start();
    $user = $_SESSION['user'];
    $login = $_POST['login'];
    $senha = $_POST['senha'];
    $act = $_GET['a'];
    function em()
    {
        $args = func_get_args();
        for ($cont = 1; $cont < func_num_args(); $cont++)
        {
            $arg = func_get_arg($cont);
            if ($arg == $args[0])
                return true;
        }
        return false;
    }
?>


<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">

<?php
while (1)
{
    if (($act != 'login') && ($act != 'char') && ($act != 'job') && ($act != 'setjob') && ($act != 'resetpos') && ($act != 'listbuff') && ($act != 'buffar') && ($act != 'senha'))// && ($act != 'res'))
    {
        echo '<center><form method="post" action="pannel.php?a=login">';
        echo 'Username: <input type="text" name="login" class="h4"><p>';
        echo 'Password: <input type="password" name="senha" class="h4"><p>';
        echo '<input type="submit" value="Einloggen" name="OK" class="h4">';
        echo '</form></center>';
    }
    if ($act == 'login')
    {
        $senha = md5('kikugalanet' . $senha);
        $resultado = mysql_query("select * from accounts where username = '$login' and password = '$senha'");
        if (is_resource($resultado))
            $qde_registros = mysql_num_rows($resultado);
        if ($qde_registros != 0)
        {
            $act = 'char';
            $_SESSION['user'] = $login;
            $user = $login;
            session_write_close();
        }
        else
        {
            echo "<center><br><font color='#FF0000'>Username oder Password Falsch!.</font><br><br>";
            echo '<form method="post" action="pannel.php?a=login">';
            echo 'Username: <input type="text" name="login" class="h4"><p>';
            echo 'Password: <input type="password" name="senha" class="h4"><p>';
            echo '<input type="submit" value="Einloggen" name="OK" class="h4">';
            echo '</form></center>';
        }
    }
    if ($act == 'char')
    {
        if (isset($_SESSION['user']))
        {
            $resultado = mysql_query("select * from accounts AS a WHERE a.username = '$user'");
            $qde_registros = mysql_num_rows($resultado);
            if ($qde_registros != 0)
             {
			 }
		}
        else
        {

            echo "<font color='#FF0000'>You signed on this, please log.</font><br>";
            echo '<form method="post" action="pannel.php?a=login">';
            echo 'Username: <input class="4" size="15" type="text" name="login"><p>';
            echo 'Password: <input class="4" size="15" type="password" name="senha"><p>';
            echo '<input class="4" size="15" type="submit" value="login" name="OK">';
            echo '</form>';
        }
    }




    if ($act == 'senha')
    {
        if (isset($_SESSION['user']))
        {
            $login = $_POST["login"];
            $senhaA = $_POST["senhaAntiga"];
            $senhaN = $_POST["senhaNova"];
            $senhaN2 = $_POST["senhaNova2"];
            if ((!isSet($_POST["login"])) && (!isSet($_POST["senhaAntiga"])) && (!isSet($_POST["senhaNova"])) && (!isSet($_POST["senhaNova2"])))
            {
                echo '<form method="post" action="index.php?site=usercp&a=senha">';
                echo '<br>Login <input size ="15" class="h4" type="text" name="login" READONLY value="' . $user . '"><p>';
                echo 'Old Password <input size ="15" class="h4" type="password" name="senhaAntiga"><p>';
                echo 'New Password <input size ="15" class="h4" type="password" name="senhaNova"><p>';
                echo 'Confirm New Password <input size ="15" class="h4" type="password" name="senhaNova2"><p>';
                echo '<input class="h4" size="15" type="submit" value="OK" name="OK">';
                echo '</form>';
            }
            else
            {
                $senhaNova = md5("kikugalanet" . $senhaN);
                if (md5("kikugalanet" . $senhaN2) != $senhaNova)
                {
                    echo "<h3><font color='#FF0000'>WARNUNG</font>: Das neue Passwort ist nicht bekannt!.</h3>";
                    unset($_POST["login"]);
                    unset($_POST["senhaAntiga"]);
                    unset($_POST["senhaNova"]);
                    unset($_POST["senhaNova2"]);
                    $act = 'senha';
                    continue;
                }
                else
                {
                    $senhaAntiga = md5("kikugalanet" . $senhaA);
                    $res = mysql_query("select * from accounts where username = '$login' AND password = '$senhaAntiga'");
                    $qtde = mysql_num_rows($res);
                    if ($qtde == 0)
                    {
                        echo "<h3><font color='#FF0000'>NOTICE</font>: Please fill up all fields.</h3>";
                        unset($_POST["login"]);
                        unset($_POST["senhaAntiga"]);
                        unset($_POST["senhaNova"]);
                        unset($_POST["senhaNova2"]);
                        $act = 'senha';
                        continue;
                    }
                    else
                    {
                        $res = mysql_query("update accounts set password = '$senhaNova' where username = '$login' and password = '$senhaAntiga'");
                        if (mysql_affected_rows() != 0)
                        {
                            echo "<font size='2'>Password changed successfully.</font>";
                            unset($_POST["login"]);
                            unset($_POST["senhaAntiga"]);
                            unset($_POST["senhaNova"]);
                            unset($_POST["senhaNova2"]);
                            $act = 'senha';
                            continue;
                        }
                        else
                        {
                            echo "<h3><font color='#FF0000'>WARNUNG</font>: Ändern des Passworts fehlgeschlagen.</h3>";
                            unset($_POST["login"]);
                            unset($_POST["senhaAntiga"]);
                            unset($_POST["senhaNova"]);
                            unset($_POST["senhaNova2"]);
                            $act = 'senha';
                            continue;
                        }
                    }
                }
            }
        }
    }
/*    if ($act == 'res')
    {
        if (isset($_SESSION['user']))
        {
            $id = $_GET["char"];
            //$resultado = mysql_query("select * from characters AS c INNER JOIN accounts AS a ON a.username = c.accountname WHERE c.id = $id AND a.username = '$user'");
            $resultado = mysql_query("select * from accounts where username = '$user'");
            $qde_registros = mysql_num_rows($resultado);
            if ($qde_registros != 0)
            {
                $res = mysql_query("select * from characters where id = $id");
                $reg = mysql_fetch_assoc($res);
                $lvl = $reg["level"];
                $res = $reg["resets"];
                $res2 = $res + 1;
                $idJob = $reg["class"];
                if (($lvl == 120) && ($idJob >= 24) && ($idJob <= 31))
                {
                    $res2 = mysql_query("update characters set resets = $res2, level = 1, exp = 0 where id = $id");
                    if (mysql_affected_rows() != 0)
                    {
                        echo "<h3>Reset erfolgreich.</h3>";
                        $act = 'char';
                        continue;
                    }

                {
                    echo "<h3><font color='#FF0000'>WARNUNG</font>: Dieser Character kann nicht resettet werden.</h3>";
                    $act = 'char';
                    continue;
                }
            }
        }
    }
*/
    break;
}

?>