T_ELSE beklemiyordum, T_FUNCTION bekliyor - alındığında Benim Kod tatili

0 Cevap php

Ben lamba, wamp ve xampp benim kod denedim - sadece lamba üzerinde çalışan ile. Ben xampp içine lambadan php.ini dosyasını takas Ancak, çalışır - bu nedenle, benim php.ini bir irritatingly hoşgörülü LAMP özensiz bir şekilde kodlama ediyorum tahmin.

Şu anda, benim LAMBASI php.ini benim xampp mysqli tatili, ve bu benim lamba kod her durumda kirli olması gerekir gibi geliyor bana, siz burada temizlik ihtiyaçlarını görmek eğer ben merak ediyorum?

class datamanagement{


 protected $mysql_host = "localhost";
 protected $mysql_username = "root";
 protected $mysql_password = "";
 protected $mysql_database = "data";

 protected $security_table = "users";

 function __construct($security_level = 0)
 {
   $this->security($security_level);
 }

 protected function mysql_connect_func(){ 
          // ...standard mysql connect stuff
 }

 protected function security($security_level){


  session_start();

  if(isset($_GET['logout'])){

   session_unset();
  }


  if($security_level > 0)
  {


   if(!isset($_SESSION['initiated'])){

    if(!isset($_POST['username']) || empty($_POST['username']) || empty($_POST['password']))
    {

     if(isset($_GET['logout']))
     {
     $string = rtrim($_SERVER['PHP_SELF'], '?logout');
     }


     ?>

     <div class="main_container">
    <div class="form_container">

    <?php

    if(isset($_GET['logout']))
    {
     echo "<p>successfully logged out</p>";

    }else
    {

     echo "<p>Access to this section require logging in</p>";

    }
    ?>

       <form method="post" action="<?php echo $string ?>"><input
        type="hidden" name="login" value="true"></input>

       <div><label for="title">Username:</label> <input name="username"
        type="text" value="<?php echo $_POST['username']; ?>"></input><?php if(isset($_POST['username']) && $_POST['username'] == ''){echo "username required";}?><br>
       </div>

       <div><label for="post">Password:</label> <input name="password"
        type="password"></input><?php if(isset($_POST['username']) && $_POST['password'] == ''){echo "password required";}?><br>
       </div>

<input type="submit" value="Sign in" name="submit"></input></form>

     </div>
    </div>

    <?


     exit();


    } // end if - no username or password were posted
    else{

     $this->mysql_connect_func();

     $sql = "SELECT * FROM " . $this->security_table . " WHERE  username='" . $_POST['username'] . "'";


     $result = mysql_query($sql) or die(mysql_error());
     $row = mysql_fetch_assoc($result);


     if(mysql_num_rows($result) != 0)
     {


      if(sha1($_POST['password']) == $row['password'])
      {
      session_regenerate_id();
      $_SESSION['initiated'] = "true";
      $_SESSION['username'] = $row['username'];
      $_SESSION['authority'] = $row['authority'];

      } // end if sha1 of $_POST password == $row password
      else {
       ?>

        <div class="main_container">
        <div class="form_container">


       <?php
       echo 'Incorrect password<br><a href="' . $_SERVER['PHP_SELF'] . '">Please try again</a>';
       ?>
       </div>
       </div>


       <?php

       exit();


      }  // if password is wrong


     } // end if no rows with username returned
     else{
?>

        <div class="main_container">
        <div class="form_container">


       <?php
       echo 'Incorrect username <br><a href="' . $_SERVER['PHP_SELF'] . '">Please try again</a>';
       ?>
       </div>
       </div>


       <?php

       exit();

     } // if username not found


    } // end else - no username or password were posted

   } // end if - check the session !initiated

   else {   //*THIS IS THE LINE THAT THROWS THE ERROR IN XAMPP AND WAMP*

    if($_SESSION['authority'] < $security_level)
    {

     die("security clearance insufficient");
    }


   } // end else - check the session !initiated


  } // end if $security_level <= 0

 } // end of function security()

}

Ben bu kod böyle bir ağır parça bulunuyor özür dileriz, bana hatayı bulmak için kişinin yeteneğini ödün vermeden bunu kırmak için mantıklı bir yol gelmiyordu. Siz daha okunabilir bir miktar aşağı canavarın boyutunu getirme konusunda herhangi bir öneriniz varsa, demek lütfen!

0 Cevap