You are here: Home Linux Webserver MyScripts (php) MYSQL Administartion Tool
Search
Advanced Search…
E-Mail

Webmail: webmail.wyden.com

E-Mail Preferences: postfix.wyden.com/users

E-Mail Administration: postfix.wyden.com

Statistics
Total: 473
Total Pages: 286
Total Folders: 87
Total Files: 18
Total Links: 26
Last modification: 19.04.2012 15:21
 

MYSQL Administartion Tool

by Wyden Silvan last modified 17.11.2009 13:58

<?

session_start();

?>

<style type="text/css">
<!--

body {
font-family: Arial,Sans;
}

a:link
{text-decoration: underline;
color: #000000;}
a:active
{text-decoration: underline;
color: #000000;}
a:visited
{text-decoration: underline;
color: #000000;}
a:hover
{text-decoration: underline;
color: #000000;}

-->
</style>

<?

//verbindung zu datenbank
$mysqlhost="localhost";
$mysqluser="root";
$mysqlpwd="MYPASS";
$connection=mysql_connect($mysqlhost, $mysqluser, $mysqlpwd) or die;
$mysqldb="mysql";
mysql_select_db($mysqldb, $connection) or die;

//variablen
$make = $_POST['make']; if($make=="") $make = $_GET['make'];
$username = $_POST['username'];
$userpass = $_POST['userpass'];

if ($make ==  "login")
    {
   
    $sql = "SELECT Password FROM user WHERE User = '$username'";
    $query = mysql_query($sql);
    $row = mysql_fetch_array($query);
    $pass_orig = $row['Password'];
   
    $sql = "SELECT Password('$userpass')";
    $query = mysql_query($sql);
    $row = mysql_fetch_array($query);
    $userpass = "Password('$userpass')";
    $userpass = $row[$userpass];
   
    if ($pass_orig == $userpass && $pass_orig != "")
        {
        $_SESSION['username'] = $username;
        }   
    else
        {
        echo "<br><br><center><b>Benutzer oder Passwort ist falsch!</center></b>";
        }
    $make = "";
    }

if ($make == "logout")
    {
    $_SESSION['username'] = "";
    unset($_SESSION);
    }

if (isset($_SESSION['username']) && $_SESSION['username'] != "")
    {
   
    if ($_SESSION['username'] == "root")
        {
        echo "<center>";
        echo "<a href=\"?make=\">Übersicht</a> | ";   
        echo "<a href=\"?make=user_add\">Benutzer erstellen</a> | ";
        echo "<a href=\"?make=logout\">Logout</a></center>";
        echo "</center>";
        }
    else
        {
        echo "<center><a href=\"?make=\">Übersicht</a> | ";   
        echo "<a href=\"?make=db_add\">Datenbank erstellen</a> | ";
        echo "<a href=\"?make=passwd\">Passwort ändern</a> | ";
        echo "<a href=\"?make=logout\">Logout</a></center>";
        }

    if ($make == "user_passwd" && $_SESSION['username'] == "root")
        {
        $user = $_GET['user'];
       
        $sql = "GRANT USAGE ON *.* TO '$user'@'localhost' IDENTIFIED BY '$user'";
        $query = mysql_query($sql);
        $sql = "FLUSH PRIVILEGES";
        $query2 = mysql_query($sql);
       
        $make = "";
        }
       
    if ($make == "user_del" && $_SESSION['username'] == "root")
        {
        $user = $_GET['user'];

        //löschen der datenbanken des users
        $sql = "SELECT Db FROM db WHERE user = '$user'";
        $query = mysql_query($sql);
        while ($row = mysql_fetch_array($query))
            {
            $sql = "DROP DATABASE " . $row[Db];
            $query1 = mysql_query($sql);
            $sql = "DELETE FROM db WHERE Db = '" . $row[Db] . "'";
            $query2 = mysql_query($sql);
            }
           
        //benutzer löschen
        $sql = "DELETE FROM user WHERE User = '$user'";
        $query = mysql_query($sql);
           
        $sql = "FLUSH PRIVILEGES";
        $query3 = mysql_query($sql);
       
        if ($query == 1)
            {
            echo "<br><br><br><b><center>User $user wurde gelöscht!<br></b></center>";
            }
        else
            {
            echo "<br><br><br><b><center>User $user konnte nicht gelöscht werden!<br></b></center>";
            }
        $make = "";
        }
       
       
    if ($make == "user_add2" && $_SESSION['username'] == "root")
        {
        $username = $_POST['username'];

        $sql = "SELECT * FROM user WHERE User = '$username'";
        $query = mysql_query($sql);
        $total = mysql_num_rows($query);
       
        if ($total == 0)
            {
            //user erstellen oder passwort ändern
            $sql = "GRANT USAGE ON *.* TO '$username'@'localhost' IDENTIFIED BY '$username'";
            $query = mysql_query($sql);
            $sql = "FLUSH PRIVILEGES";
            $query2 = mysql_query($sql);
           
            if ($query == 1)
                {
                echo "<br><br><br><b><center>Benutzer $username mit Passwort $username wurde hinzugefügt!</b></center><br><br>";
                }
            else
                {
                echo "<br><br><br><b><center>Benutzer konnte nicht erstellt werden! Grund dafür können Sonderzeichen oder Leerschläge im Datenbanknamen sein!</b></center><br><br>";
                }
            }
        else
            {
            echo "<br><br><br><b><center>Benutzer existiert bereits!</b></center><br><br>";
            $make = "user_add";
            }
               
        }

    if ($make == "user_add" && $_SESSION['username'] == "root")
        {
        echo "<form action=\"\" method=\"post\">";
        echo "<input type=\"hidden\" name=\"make\" value=\"user_add2\">";
        echo "<center><br><br><table>";
        echo "<tr><td>Neuer Benutzername</td><td><input type=\"text\" name=\"username\" value=\"$username\"></td></tr>";
        echo "<td><td colspan=\"2\"><input type=\"submit\" value=\"Hinzufügen\"></td></tr></table>";
        echo "</form><br><br>";
        }

    if ($make == "db_del")
        {
        $database = $_GET['db'];

        //löschen einer db
        $sql = "DROP DATABASE $database";
        $query = mysql_query($sql);
        $sql = "DELETE FROM db WHERE Db = '$database'";
        $query2 = mysql_query($sql);
        $sql = "FLUSH PRIVILEGES";
        $query3 = mysql_query($sql);
        if ($query == 1 && $query2 == 1)
            {
            echo "<br><br><br><b><center>Datenbank $database wurde gelöscht!<br></b></center>";
            }
        else
            {
            echo "<br><br><br><b><center>Datenbank $database konnte nicht gelöscht werden!<br></b></center>";
            }
        $make = "";
        }

    if ($make == "passwd2")
        {       
        $userpass_old = $_POST['userpass_old'];
        $userpass_new = $_POST['userpass_new'];
        $userpass_new2 = $_POST['userpass_new2'];
       
        $sql = "SELECT Password FROM user WHERE User = '$_SESSION[username]'";
        $query = mysql_query($sql);
        $row = mysql_fetch_array($query);
        $pass_orig = $row['Password'];

        $sql = "SELECT Password('$userpass_old')";
        $query = mysql_query($sql);
        $row = mysql_fetch_array($query);
        $userpass_old = "Password('$userpass_old')";
        $userpass_old = $row[$userpass_old];
       
        if ($pass_orig == $userpass_old)
            {
            if ($userpass_new != $userpass_new2)
                {
                echo "<br><br><br><center><b>Die neuen Passwörert stimmen nicht überein!</center></b>";
                $make = "passwd";
                }
            else
                {
                if (strlen($userpass_new) <= 3)
                    {   
                    echo "<br><br><br><center><b>Das neue Passwort muss mindestens 4 Zeichen lang sein!</center></b>";
                    $make = "passwd";
                    }
                else
                    {
                    $sql = "GRANT USAGE ON *.* TO '$_SESSION[username]'@'localhost' IDENTIFIED BY '$userpass_new'";
                    $query = mysql_query($sql);
                    $sql = "FLUSH PRIVILEGES";
                    $query = mysql_query($sql);
                    if ($query == 1)   
                        {
                        echo "<br><br><br><center><b>Passwort wurde geändert!</b><br><br>";
                        }
                    else
                        {
                        echo "<br><br><br><center><b>Password konnte nicht geändert werden!</b><br><br>";
                        $make = "passwd";
                        }
                    }
                }
            }
        else
            {
            echo "<br><br><br><center><b>Altes Passwort ist falsch!</center></b>";
            $make = "passwd";
            }
       
        }
   
    if ($make == "passwd")
        {
        echo "<form action=\"\" method=\"post\">";
        echo "<input type=\"hidden\" name=\"make\" value=\"passwd2\">";
        echo "<center><br><br><table>";
        echo "<tr><td>Alter Passwort</td><td><input type=\"password\" name=\"userpass_old\"></td></tr>";
        echo "<tr><td>Neues Passwort</td><td><input type=\"password\" name=\"userpass_new\"></td></tr>";
        echo "<tr><td>Passwort wiederholen</td><td><input type=\"password\" name=\"userpass_new2\"></td></tr>";
        echo "<td><td colspan=\"2\"><input type=\"submit\" value=\"Speichern\"></td></tr></table>";
        echo "</form><br><br>";
        }
   
    if ($make == "db_add2")
        {
        $database = $_SESSION[username] . "_" . $_POST['database'];       
           
        $sql = "SELECT * FROM db WHERE Db = '$database'";
        $query = mysql_query($sql);
        $total = mysql_num_rows($query);

        if ($total == 0)
            {
            //datenbank erstellen
            $sql = "CREATE DATABASE $database";
            $query = mysql_query($sql);

            if ($query == 1)
                {
                //berechtigungen einfügen
                $sql = "INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,  Update_priv,Delete_priv,Create_priv,Drop_priv) VALUES('localhost','$database','$_SESSION[username]', 'Y','Y','Y','Y','Y','Y')";
                $query = mysql_query($sql);

                $sql = "FLUSH PRIVILEGES";
                $query = mysql_query($sql);
       
   
                echo "<br><br><br><b><center>Die Datenbank " . $database . " wurde hinzuegefügt!</b><br><br></center>";
                }
            else
                {
                echo "<br><br><br><b><center>Datenbank wurde nicht erstellt! Grund dafür können Sonderzeichen oder Leerschläge im Datenbanknamen sein!";
                $make = "db_add";
                }
            }
        else
            {
            echo "<br><br><br><b><center>Datenbank $database existiert bereits! Wählen Sie bitte einen anderen Namen!</b></center>";
            $make = "db_add";
            }
        }

    if ($make == "db_add")
        {
        echo "<form action=\"\" method=\"post\">";
        echo "<input type=\"hidden\" name=\"make\" value=\"db_add2\">";
        echo "<center><br><br><table>";
        echo "<tr><td>Datenbankname </td><td><input type=\"text\" name=\"database\" value=\"" . $_POST['database'] . "\"></td></tr>";
        echo "<td><td colspan=\"2\"><input type=\"submit\" value=\"Hinzufügen\"></td></tr></table>";
        echo "</form><br><br>";
        }   
       
    if ($_SESSION['username'] == "root")
        {
        if ($make == "")
            {
            $sql = "SELECT User FROM user WHERE User != 'root' AND User != 'debian-sys-maint' AND User != '' ORDER BY User";
            $query = mysql_query($sql);
            $total = mysql_num_rows($query);

            echo "<br><br><center>Anzahl Benutzer: $total<br><br>";   
            echo "<table>";
            while ($row = mysql_fetch_array($query))
                {
                echo "<tr><td><b>" . $row[User] . " [<a href=\"?make=user_del&user=" . $row[User] .
                "\" onclick=\"javascript:return confirm('Soll der Benutzer " . $row[User] .
                " und alle seine Datenbanken wirklich gelöscht werden?')\">löschen</a> | <a href=\"?make=user_passwd&user=" . $row[User] .
                "\" onclick=\"javascript:return confirm('Soll das Passwort vom Benutzer " . $row[User] .
                " wirklich zurückgesetzt werden?')\">Passwort zurücksetzen</a>]</td></tr>";
                $sql = "SELECT Db FROM db WHERE User = '" . $row[User] . "'";
                $query2 = mysql_query($sql);
                while ($row2 = mysql_fetch_array($query2))
                    {
                    echo "<tr><td colspan=\"2\">   " . $row2[Db] . "</td></tr>";
                    }
                }
       
            echo "</table></center><br><br>";

            }
        }
    else
        {
        if ($make == "")
            {
            $sql = "SELECT Db FROM db WHERE User = '$_SESSION[username]' ORDER BY Db";
            $query = mysql_query($sql);
            $total = mysql_num_rows($query);

            echo "<br><br><center>Anzahl Datenbanken: $total<br><br>";   
            echo "<table>";
            while ($row = mysql_fetch_array($query))
                {
                echo "<tr><td>" . $row[Db] . " [<a href=\"?make=db_del&db=" . $row[Db] . "\" onclick=\"javascript:return confirm('Soll die Datenbank " . $row[Db] . " wirklich gelöscht werden?')\">löschen</a>]</td></tr>";
                }
       
            echo "</table></center><br><br>";

            }
        }

    }
else
    {
    echo "<form action=\"\" method=\"post\">";
    echo "<input type=\"hidden\" name=\"make\" value=\"login\">";
    echo "<center><br><br><br><br><table>";
    echo "<tr><td>MySQL Benutzer</td><td><input type=\"text\" name=\"username\"></td></tr>";
    echo "<tr><td>Passwort</td><td><input type=\"password\" name=\"userpass\"></td></tr>";
    echo "<td><td colspan=\"2\"><input type=\"submit\" value=\"Login\"></td></tr></table>";
    echo "</form><br><br>";
    }

//copyright
echo "<hr><center>&copy; 2009 Wyden Silvan</center>";


?>