// READ THE README !!!
/****************************************************
* PureFTP - PHP USer Manager by solariz
* Soruce (c) 2002 - www.solariz.de
****************************************************
* Please read the General Public License
* ENGLISH: http://www.gnu.org/licenses/gpl.html
* GERMAN : http://www.gnu.de/gpl-ger.html
****************************************************
CheckOut: http://www.solariz.de
*/
######################
####### SETUP ########
######################
// Your exactly located mysql config file for pureftpd
$PUREFTP_CONFIG_FILE = '/home/admin/ftpmanager/pureftpd-mysql.conf';
// The location where all the Forms directed to. (Mayby no change needed)
$SELF_URL = 'index.php';
// The location of your pure-ftpdwho binary (set this to chmod 4711)
$FTP_WHO = "/usr/local/sbin/pure-ftpwho";
#######################
# DEFAULT NEW-USER PARAMS #
#######################
$DefaultUser = ""; # Default User Logon
$DefaultPass = ""; # Default User Password
$DefaultUid = "ftp"; # Default User ID ( must be a real user acct )
$DefaultGid = "ftp"; # Default Group ID ( must be a real group acct )
$DefaultDir = "/home/ftp"; # Default User Dir ( use /./ at the end to chroot )
$DefaultUL = "0"; # Default Upload Throttle ( 0 disables it )
$DefaultDL = "0"; # Default Download Throttle ( 0 disables it )
$Defaultip = "*"; # Default IP restrictions ( * = any IP )
$DefaultQS = "0"; # Default Quota Size ( 0 disables it )
$Defaultcmt = ""; # Default Comment for user
#################################################################
############### NO NEED FOR CHANGES BELOW HERE ##################
#################################################################
// Config einlesen
if(!file_exists($PUREFTP_CONFIG_FILE)) DIE("FATAL ERROR: Pure FTPD Config file not found. $PUREFTP_CONFIG_FILE");
$USERARRAY = array();
$raw = file($PUREFTP_CONFIG_FILE);
foreach($raw AS $zeile):
if(!ereg("^#",$zeile)): #skip comments
// Einlesen der einzelnen Zeilen als Variable
$tmp = split(" ",trim($zeile));
$var = strtoupper(trim($tmp[0]));
for($n=1;$n".mysql_error());
echo '
';
}#end edit
elseif($action == "save") {
$addnew = addslashes( get_var("addnew") );
$User = addslashes(get_var("requireduser"));
$Password = addslashes(get_var("requiredpass"));
$Uid = addslashes(get_var("requireduid"));
$Gid = addslashes(get_var("requiredgid"));
$Dir = addslashes(get_var("requireddir"));
$ULThrottle = addslashes(get_var("requiredulthrottle"));
$DLThrottle = addslashes(get_var("requireddlthrottle"));
$QuotaSize = addslashes(get_var("requiredQuotaSize"));
$comment = addslashes(get_var("comment"));
$status = addslashes(get_var("status"));
$delete = addslashes(get_var("delete"));
$ipaccess = addslashes(get_var("requiredipaccess"));
if(empty($User) || empty($Password) || empty($Uid) || empty($Gid) || empty($Dir)) DIE("Invalid or missing data entered...");
if(empty($delete)) {
if($addnew == False) {
$Q = DB_QUERY("UPDATE `$DB_TABLE` SET status='$status',Password='$Password',Uid='$Uid',Gid='$Gid',Dir='$Dir',ULBandwidth='$ULThrottle',DLBandwidth='$DLThrottle',comment='$comment',ipaccess='$ipaccess',QuotaSize='$QuotaSize' WHERE User LIKE '$User' LIMIT 1");
if($Q) echo "\n";
}#end if
else{
$Q = DB_QUERY("INSERT INTO `$DB_TABLE` SET User='$User',status='$status',Password='$Password',Uid='$Uid',Gid='$Gid',Dir='$Dir',ULBandwidth='$ULThrottle',DLBandwidth='$DLThrottle',comment='$comment',ipaccess='$ipaccess',QuotaSize='$QuotaSize'");
if($Q) echo "\n";
}#end if
}#end if
elseif($User && !empty($delete)){#DELETE
$Q = DB_QUERY("DELETE FROM `$DB_TABLE` WHERE User LIKE '$User' LIMIT 1");
if($Q) echo "\n";
}#end if
echo "\n";
}#end else (save)
######
elseif($action == "ftpwho") {
echo '
Ok, whats to say about this small script ?
Not much. The Basic version was written due the need of a simply User management for the PureFTPd Daemon.
Now it's more than a simple management script.
';
}#end else
// SQL Verbindung schliessen
DB_CLOSE();
// Seite abschliessen
PAGE_FOOTER();
// EOC <--*
// Funktionen
function PAGE_HEADER() {
?>
PuRE FTPD - User Managemant
}#end func
function PAGE_FOOTER() {
?>
}#end func
function DB_OPEN() {
GLOBAL $MYSQLSERVER,$MYSQLUSER,$MYSQLPASSWORD,$MYSQLDATABASE,$MYSQLCON;
$MYSQLCON = @mysql_connect($MYSQLSERVER,$MYSQLUSER,$MYSQLPASSWORD);
if(!$MYSQLCON OR @mysql_error()) DIE("Can't establish DB connection. ".mysql_error());
if(!@mysql_select_Db($MYSQLDATABASE)) DIE("Can't establish DB connection. ".mysql_error());
}#end func
function DB_CLOSE() {
GLOBAL $MYSQLCON;
RETURN @mysql_close($MYSQLCON);
}#end func
function DB_QUERY($sql) {
GLOBAL $MYSQLCON,$MYSQLDATABASE;
$Q = @MySql_DB_query($MYSQLDATABASE,$sql,$MYSQLCON);
if(@mysql_error()) DIE("MySQL Error during Query !
[$sql] ".mysql_error());
return $Q;
}#end func
function get_var($var){
GLOBAL $$var;
GLOBAL $_POST,$_GET,$HTTP_POST_VAR,$HTTP_GET_VAR;
$inhalt = $$var;
# This function checks if the _GET or _POST var is set or if an old PHP version used
if($_POST[$var]) RETURN $_POST[$var];
elseif($HTTP_POST_VAR[$var]) RETURN $HTTP_POST_VAR[$var];
elseif($_GET[$var]) RETURN $_GET[$var];
elseif($HTTP_GET_VAR[$var]) RETURN $HTTP_GET_VAR[$var];
elseif($inhalt) RETURN $inhalt;
}#end func
?>