Subversion-Projekte lars-tiefland.webhosting

Revision

Revision 78 | Blame | Vergleich mit vorheriger | Letzte Änderung | Log anzeigen | RSS feed

<?php
        //$URL: http://repos.lars-tiefland.de:8080/svn/webhosting/trunk/admin/gen_dbs.php $ last modified in Revision $Rev: 57 $ by $Author: lars $ at $Date: 2007-06-10 16:34:45 +0200 (So, 10. Jun 2007) $
        require_once("common.php");
        $mode=(isset($_POST["mode"]))?$_POST["mode"]:"";
        $id=intval(isset($_POST["id"])?$_POST["id"]:0);
        $user=(isset($_POST["user"]))?$_POST["user"]:"";
        $pass=(isset($_POST["pass"]))?$_POST["pass"]:"";
        $prefix=(isset($_POST["prefix"]))?$_POST["prefix"]:"";
        $smarty->assign("title","Datenbanken anlegen");
        $smarty->assign("h1","Datenbanken für Kunden $id anlegen");
        if($id==0)
        {
                $smarty->assign("error",true);
                $smarty->assign("meld","Es ist ein Fehler aufgetreten!");
                $smarty->assign("db_meld","Keine Kundennummer übergeben!");
                $smarty->display("meld.tpl");
                exit;
        }
        $smarty->assign("k_nr",$id);
        switch($mode)
        {
                case "save":
                        $query="SELECT db_anz FROM kunden WHERE k_id=$id";
                        $res=$db->query($query);
                        $row=$res->fetchRow(MDB2_FETCHMODE_ASSOC);
                        $db_anz=$row["db_anz"];
                        $query="UPDATE kunden SET db_user='$user', db_pass='$pass', db_prefix='$prefix'";
                        $res=$db->exec($query);
                        if (PEAR::isError($res))
                        {
                                $smarty->assign("error",true);
                                $smarty->assign("meld","Es ist ein Fehler aufgetreten!");
                                $smarty->assign("db_meld",$res->getUserInfo());
                                $error=true;
                                $smarty->display("meld.tpl");
                                exit;
                        }
                        for ($i=1; $i <= $db_anz;$i++)
                        {
                                $db_name=$prefix.sprintf("%02d",$i);
                                $query="CREATE DATABASE $db_name";
                                $res=$db->exec($query);
                                if (PEAR::isError($res))
                                {
                                        $smarty->assign("error",true);
                                        $smarty->assign("meld","Es ist ein Fehler aufgetreten!");
                                        $smarty->assign("db_meld",$res->getUserInfo());
                                        $error=true;
                                        break;
                                }
                                $error=false;
                                $query_r="GRANT ALL PRIVILEGES ON `$db_name`.* TO $user@localhost IDENTIFIED BY '$pass'";
                                $res_r=$db->exec($query_r);
                                if (PEAR::isError($res_r))
                                {
                                        $smarty->assign("error",true);
                                        $smarty->assign("meld","Es ist ein Fehler aufgetreten!");
                                        $smarty->assign("db_meld",$res_r->getUserInfo());
                                        $error=true;
                                        break;
                                }
                                $error=false;
                        }
                        if(!$error)
                        {
                                $smarty->assign("meld","Datenbanken für Kunden $id erfolgreich angelegt!");
                                $smarty->assign("db_meld","");
                        }
                        $smarty->display("meld.tpl");
                        break;
                default:
                        $smarty->assign("title","Datenbanken anlegen");
                        $smarty->assign("h1", "Datenbanken für Kunde $id anlegen");
                        $smarty->display("gen_dbs.tpl");
                        break;
        }
?>