Confixx2 Trafficbegrenzung

Plesk, Confixx, Froxlor, SysCP, SeCoTo, IspCP, etc.
rhartinger
Posts: 16
Joined: 2003-04-28 10:31
 

gibt es alle dateien zum laden

Post by rhartinger »

hab auch das problem das mein transfervolumen nicht angezeigt wird. geht das mit euren dateien? gibt es alle dateien komplett irgendwo zum laden mit anleitung?
demo
Posts: 48
Joined: 2002-07-31 14:21
 

Re: Confixx2 Trafficbegrenzung

Post by demo »

bei mir funktioniert das mit cronjob nicht habe es auch so probiert* * * * * lynx -dump http://meine.domain.de/check_traffic.php >/dev/null 2>&1 , aber wenn ich das script Browser aufrufe klapt es :?:
oliver
Posts: 68
Joined: 2002-09-20 09:38
Location: Norderstedt
 

Re: Confixx2 Trafficbegrenzung

Post by oliver »

Super Scripte! Die funktionieren 1a :-D

Großes Lob an alle Beteiligten.
drbunsen
Posts: 31
Joined: 2003-05-26 10:56
 

Re: Confixx2 Trafficbegrenzung

Post by drbunsen »

CyberLine wrote:man kann dem Kunden ja theoretisch auch so eine mail zukommen lassen damit er auch was davon weiß :)
ich hab das ganz einfach gelöst:

Code: Select all

$text = "Sie haben ihren erlaubten Traffic von $result[maxtransfer] kb überschritten und wurden gesperrt!";
mail("$result[emailadresse]","Trafficüberschreitung ihres Webspaceaccounts",$text,"From: webmaster@xxx.netnReply-To: webmaster@xxx.netnX-Mailer: PHP/" . phpversion());
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW
 

Re: Confixx2 Trafficbegrenzung

Post by distanzcheck »

könnte mir evtl. mal jemand diese dateien mailen ?

Dirk
drbunsen
Posts: 31
Joined: 2003-05-26 10:56
 

Re: Confixx2 Trafficbegrenzung

Post by drbunsen »

gibts auf meinem Server zu laden:

http://www.html-server.de/confixx-scripts
Outlaw
Posts: 1500
Joined: 2002-12-04 10:22
Location: 4. Server von rechts, 2. Reihe von oben
 

Re: Confixx2 Trafficbegrenzung

Post by Outlaw »

drbunsen wrote:gibts auf meinem Server zu laden:

http://www.html-server.de/confixx-scripts
Hallo,

darf ich die Geschichte (und die Skripts) mit ins HowTo auf http://www.netsecond.net/howto/ aufnehmen ??

Gruß Outi
:D Gruß Outi :D
distanzcheck
Posts: 531
Joined: 2003-01-09 08:58
Location: NRW
 

Re: Confixx2 Trafficbegrenzung

Post by distanzcheck »

ist in dem download nun alles drin so mit email an mich und an kunden und angabe in MB ???

Wenn nicht könnte mir das evtl mal jemand mailen ?

Dirk
wolfhenk
Posts: 8
Joined: 2003-08-15 21:05
 

Re: Confixx2 Trafficbegrenzung

Post by wolfhenk »

hmm.

Kleines Problem:

X-Powered-By: PHP/4.2.3
Content-type: text/html

<br />
<b>Warning</b>: Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2) in <b>/path/traffic_check.php</b> on line <b>2</b><br />
<br />


BS Debian, Confixx 2.0.11

Was tun?

Danke
WolfHenk
sven-reichelt
Posts: 92
Joined: 2003-04-25 15:08
 

Re: Confixx2 Trafficbegrenzung

Post by sven-reichelt »

Was muss ich nun nehmen, um was zu ändern?

HTTP:
FTP:
POP3:
Confixx-Menü:

Kann mir da jemand helfen???

Mezga wrote:Hab noch ne ergänzung zum Script von CyberLine :

Wenn ich es ausführe, dann wird zwar diesem Kunden der Zugriff auf das Confixx Menü gesperrt, aber die HTML Seite, wie auch Mail und FTP sind noch voll erreichbar.

Das dies auch gesperrt wird, muss man in der Tabelle "allgemein" in der Confixx DB noch 2 Werte von 0 auf 1 ändern, damit das counterscript merkt, dass sich was getan hat und dann die FTP-User und ApacheVitualHost Datei neu generiert.

Das hier einfach unter
"mysql_query("UPDATE confixx.kunden SET gesperrt='1' WHERE kunde='$result[kunde]'");"
einfügen:

mysql_query("UPDATE confixx.ftp SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.pop3 SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.allgemein SET newpwd='1', httpd='1'");



Bei dem User-Freischalt-Script muss das hier eingefügt werden:

mysql_query("UPDATE confixx.ftp SET gesperrt='0' WHERE 1");
mysql_query("UPDATE confixx.pop3 SET gesperrt='0' WHERE 1");
mysql_query("UPDATE confixx.allgemein SET newpwd='1', httpd='1'");



Eigentlich bräuchte man nur jeweils die letzte Zeile, aber die ftp Zeile sperrt dann auch noch die zusätzlichen FTP-Benutzer und die pop3 Zeile alle Postfächer des betreffenden Kunden.
wolfhenk
Posts: 8
Joined: 2003-08-15 21:05
 

Re: Confixx2 Trafficbegrenzung

Post by wolfhenk »

ok, ich hab meine Sach nu am Laufen.
Meine Files sehen so aus:

traffic_check.php
#!/usr/bin/php
<?
$dat = mysql_connect ("localhost","DBuser","DBpass");
$query = mysql_query("SELECT * FROM confixx.kunden ORDER BY kunde");
$monat = date("m"); $jahr = date("Y");

while($result = mysql_fetch_array($query)) {
$qtraffic = mysql_query("SELECT (sum(ftp) + sum(web) + sum(email)) AS gtransfer FROM confixx.transfer WHERE kunde='$result[kunde]' AND monat='$monat' AND jahr='$jahr' AND geloescht='0'");
$traffic = mysql_fetch_array($qtraffic);
if($result[maxtransfer]<=$traffic["gtransfer"] && $result[maxtransfer] != "-1") {
mysql_query("UPDATE confixx.kunden SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.ftp SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.pop3 SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.allgemein SET newpwd='1', httpd='1'");
$text1 = "Der Kunde $result[kunde] hat seinen erlaubten Traffic von ".($result[maxtransfer] / 1024)." MB um ".round((($traffic[gtransfer] - $result[maxtransfer]) / 1024),2)." MB überschritten und wurde deswegen automatisch gesperrt!" ;
mail("wolfhenk@mydomain.de","Trafficüberschreitung $result[kunde]",$text1,"From: webmaster@mydomain.denReply-To: noreply@mydomain.denX-Mailer: PHP/" . phpversion());
$text2 = "Sehr geehrter Kunde,/nSie haben ihren erlaubten Traffic von ".($result[maxtransfer] / 1024)." MB um ".round((($traffic[gtransfer] - $result[maxtransfer]) / 1024),2)." MB überschritten./nIhr Webspace auf unserem Server wurde deswegen automatisch gesperrt!/nBitte setzen Sie sich mit uns in Verbindung, wenn Sie vor Ablauf des Monatsendes wieder freigeschaltet werden möchten/nSie erreichen uns unter +49 815 4711/nMit freundlichen Grüßen/nWolfHenk";
mail("$result[emailadresse]","Trafficüberschreitung ihres Webspaceaccounts",$text2,"From: webmaster@mydomain.denReply-To: webmaster@mydomain.denX-Mailer: PHP/" . phpversion());
}
}
mysql_close($dat);
?>
und

traffic_unlock.php
#!/usr/bin/php
<?
$db = mysql_connect("localhost","DBuser","DBpass");
mysql_query("UPDATE confixx.kunden SET gesperrt='0' WHERE 1");
mysql_query("UPDATE confixx.ftp SET gesperrt='0' WHERE 1");
mysql_query("UPDATE confixx.pop3 SET gesperrt='0' WHERE 1");
mysql_query("UPDATE confixx.allgemein SET newpwd='1', httpd='1'");
mysql_close($db);
mail("webmaster@mydomain.de","Trafficsperren geöffnet","Gesperrte Kunden wurden wieder geöffnet, bitte kontrollieren.","from: webmaster@mydomain.de");
?>
wobei: Wenn Traffic_check per Cron alle 5 Minuten läuft krieg ich UND der Kunde alle 5 Minuten ne Mail.
Ich denke man sollte das noch erweitern um die Abfrage gesperrt = 0 aus der confixx.kunden. Leider hab ich nur wenig Plan von MySql und PHP, deswegen bitte ich mal hier um nen Vorschlag, den ich gerne teste und hier auch die Ergebnisse veröffentliche.

--

Ach das warums bei mir net ging: Ich hab Debian und mein Socket ist nicht /tmp/mysql.sock sondern /tmp/mysqld.sock.
Ich habe entsprechend ein symlink namens /tmp/mysql.sock erstellt, was nach /tmp/mysqld.sock verweist...

Wolfram
Last edited by wolfhenk on 2003-08-18 05:58, edited 1 time in total.
wolfhenk
Posts: 8
Joined: 2003-08-15 21:05
 

Re: Confixx2 Trafficbegrenzung

Post by wolfhenk »

@Sven Reichelt:
Was muss ich nun nehmen, um was zu ändern?

HTTP:
FTP:
POP3:
Confixx-Menü:
mysql_query("UPDATE confixx.kunden SET gesperrt='1' WHERE kunde='$result[kunde]'");
sperrt http; Es kommt das berühmte confixx-logo. Das ist wie wenn der Reseller das Account sperrt....

mysql_query("UPDATE confixx.ftp SET gesperrt='1' WHERE kunde='$result[kunde]'"); killt alle FTP zugänge

mysql_query("UPDATE confixx.pop3 SET gesperrt='1' WHERE kunde='$result[kunde]'"); verhindert POP3 mailerei


WH
drbunsen
Posts: 31
Joined: 2003-05-26 10:56
 

Re: Confixx2 Trafficbegrenzung

Post by drbunsen »

WolfHenk wrote:wobei: Wenn Traffic_check per Cron alle 5 Minuten läuft krieg ich UND der Kunde alle 5 Minuten ne Mail.
Ich denke man sollte das noch erweitern um die Abfrage gesperrt = 0 aus der confixx.kunden. Leider hab ich nur wenig Plan von MySql und PHP, deswegen bitte ich mal hier um nen Vorschlag, den ich gerne teste und hier auch die Ergebnisse veröffentliche.

Wolfram
Hi, ja mit dem Problem hab ich auch bis jetzt wegen fehlender PHP Kenntnisse gelebt. Aber inzwieschen kann ich PHP und MySQL relativ gut daher:

Code: Select all

$query = mysql_query("SELECT * FROM confixx.kunden ORDER BY kunde");
einfach ersetzen durch

Code: Select all

$query = mysql_query("SELECT * FROM confixx.kunden WHERE gesperrt='0' ORDER BY kunde");
bzw. ich habe mir einen extra Reseller angelegt für alle die ein Trafficlimit wollen (res2)

Code: Select all

$query = mysql_query("SELECT * FROM confixx.kunden WHERE gesperrt='0' AND anbieter='res2' ORDER BY kunde");
wolfhenk
Posts: 8
Joined: 2003-08-15 21:05
 

Re: Confixx2 Trafficbegrenzung

Post by wolfhenk »

ok, getestet. Nu siehts bei mir so aus:

traffic_check.php

Code: Select all

#!/usr/bin/php 
<? 
$dat = mysql_connect ("localhost","DBuser","DBpass"); 
$query = mysql_query("SELECT * FROM confixx.kunden WHERE gesperrt='0' ORDER BY kunde");
$monat = date("m"); $jahr = date("Y"); 

while($result = mysql_fetch_array($query)) { 
$qtraffic = mysql_query("SELECT (sum(ftp) + sum(web) + sum(email)) AS gtransfer FROM confixx.transfer WHERE kunde='$result[kunde]' AND monat='$monat' AND jahr='$jahr' AND geloescht='0'"); 
$traffic = mysql_fetch_array($qtraffic); 
if($result[maxtransfer]<=$traffic["gtransfer"] && $result[maxtransfer] != "-1") { 
mysql_query("UPDATE confixx.kunden SET gesperrt='1' WHERE kunde='$result[kunde]'"); 
mysql_query("UPDATE confixx.ftp SET gesperrt='1' WHERE kunde='$result[kunde]'"); 
mysql_query("UPDATE confixx.pop3 SET gesperrt='1' WHERE kunde='$result[kunde]'"); 
mysql_query("UPDATE confixx.allgemein SET newpwd='1', httpd='1'"); 
$text1 = "Der Kunde $result[kunde] hat seinen erlaubten Traffic von ".($result[maxtransfer] / 1024)." MB um ".round((($traffic[gtransfer] - $result[maxtransfer]) / 1024),2)." MB überschritten und wurde deswegen automatisch gesperrt!" ; 
mail("wolfhenk@mydomain.de","Trafficüberschreitung $result[kunde]",$text1,"From: [email]webmaster@mydomain.de[/email]nReply-To: [email]noreply@mydomain.de[/email]nX-Mailer: PHP/" . phpversion()); 
$text2 = "Sehr geehrter Kunde,
Sie haben ihren erlaubten Traffic von ".($result[maxtransfer] / 1024)." MB um ".round((($traffic[gtransfer] - $result[maxtransfer]) / 1024),2)." MB überschritten.
Ihr Webspace auf unserem Server wurde deswegen automatisch gesperrt!
Bitte setzen Sie sich mit uns in Verbindung, wenn Sie vor Ablauf des Monats wieder freigeschaltet werden möchten.
Sie erreichen uns unter +49 (0)815 4711
Mit freundlichen Grüßen
Meine Wenigkeit"; 
mail("$result[emailadresse]","Trafficüberschreitung ihres Webspaceaccounts",$text2,"From: [email]webmaster@mydomain.de[/email]nReply-To: [email]webmaster@mydomain.de[/email]nX-Mailer: PHP/" . phpversion()); 
} 
} 
mysql_close($dat); 
?> 
und

traffic_unlock.php

Code: Select all

 
#!/usr/bin/php 
<? 
$db = mysql_connect("localhost","DBuser","DBpass"); 
mysql_query("UPDATE confixx.kunden SET gesperrt='0' WHERE 1"); 
mysql_query("UPDATE confixx.ftp SET gesperrt='0' WHERE 1"); 
mysql_query("UPDATE confixx.pop3 SET gesperrt='0' WHERE 1"); 
mysql_query("UPDATE confixx.allgemein SET newpwd='1', httpd='1'"); 
mysql_close($db); 
mail("webmaster@mydomain.de","Trafficsperren geöffnet","Gesperrte Kunden wurden wieder geöffnet, bitte kontrollieren.","from: [email]webmaster@mydomain.de[/email]"); 
?> 
die Cronjobs:

Code: Select all

10,20,30,40,50,00 * * * * root path/to/the/file/traffic.php > /dev/null 2
00 00 01 * * root path/to/the/file/traffic_unlock.php   
Außerdem mußte ich im /tmp ein Symlink anlegen:
Dateiname: mysql.sock, Owner root, group root, chmod 777+sticky-bit
Ziel der Verknüpfung: /var/run/mysqld/mysqld.sock

das Ergebnis: eine Mail an den Kunden:
Sehr geehrter Kunde,
Sie haben ihren erlaubten Traffic von 1 MB um 0.07 MB überschritten.
Ihr Webspace auf meinem Server wurde deswegen automatisch gesperrt!
Bitte setzen Sie sich mit mir in Verbindung, wenn Sie vor Ablauf des Monats wieder freigeschaltet werden möchten. Sie erreichen mich unter +49 YYY YYY XXXX
Mit freundlichen Grüßen
Dein Serveradmin
Eine Mail an mich:
Der Kunde web1 hat seinen erlaubten Traffic von 1 MB um 0.07 MB überschritten und wurde deswegen automatisch gesperrt!

außerdem Seite gesperrt, Siehe hier:
kloewer
Posts: 22
Joined: 2003-10-16 17:44
 

TO MUCHE TRAFFIC

Post by kloewer »

Hab das ganze ein bischen erweitert, und zwar habe ich in die datenbank eine neue zeile eingefügt mit dem namen "tomuchetraffic", welche den wert "1" zugewiesen bekommt, wenn zuviel traffic entstanden ist.

Entsperrt wird nur wenn der max traffic > größerals der traffic ist und das feld tomuchtraffic "1" ist.

d.h. kunden die wegen anderer "vergehen" gesperrt wurden haben natürlich nicht tomuchtraffic=1 und werden deshalb vom script auch nicht entsperrt...

wer allerdings in zahlungsverzug ist und zusätzlich zuviel traffic hat, wird trotzdem entsperrt (kleiner schönheitsfehler...)

wie mann am quelltext erkennen kann bin ich kein programierer, wenn also jemand lust hat meinen code zusammenzufassen mit else und/oder elseif oder while oder sowas, es würden sich bestimmt alle hier im forum darüber freuen !!!



#!/usr/bin/php
<?
$db = mysql_connect("localhost","DBuser","DBpass");

$query = mysql_query("SELECT * FROM confixx.kunden ORDER BY kunde");
$monat = date("m"); $jahr = date("Y");

while($result = mysql_fetch_array($query)) {

$qtraffic = mysql_query("SELECT (sum(ftp) + sum(web) + sum(email)) AS gtransfer FROM confixx.transfer WHERE kunde='$result[kunde]' AND monat='$monat' AND jahr='$jahr' AND geloescht='0'");

$traffic = mysql_fetch_array($qtraffic);
if($result[maxtransfer]<=$traffic["gtransfer"] && $result[maxtransfer] != "-1") {
mysql_query("UPDATE confixx.kunden SET gesperrt='1' WHERE kunde='$result[kunde]'");
}

if($result[maxtransfer]<=$traffic["gtransfer"] && $result[maxtransfer] != "-1") {
mysql_query("UPDATE confixx.kunden SET tomuchetraffic='1' WHERE kunde='$result[kunde]'");
}

if($result[maxtransfer]>$traffic["gtransfer"] && $result[tomuchetraffic] != "0") {
mysql_query("UPDATE confixx.kunden SET gesperrt='0' WHERE kunde='$result[kunde]'");
}

if($result[maxtransfer]>$traffic["gtransfer"] && $result[tomuchetraffic] != "0") {
mysql_query("UPDATE confixx.kunden SET tomuchetraffic='0' WHERE kunde='$result[kunde]'");
}

}

mysql_close($db);
?>
Last edited by kloewer on 2003-10-22 13:13, edited 1 time in total.
pickel
Posts: 48
Joined: 2002-05-30 17:47
 

Re: Confixx2 Trafficbegrenzung

Post by pickel »

mal ne Frage zum Crontab, warum lasst ihr dies jede Minute bzw. alle 5 Minuten ausführen? Confixx berechnet doch mitten in der Nacht erst den Traffic. Wäre es da nicht sinnvoller das Script auch nach der Berechnung erst auszuführen?

Oder habt ihr die Trafficberechnung von der Zeit her geändert.

mfg
Nils
mezga
Posts: 147
Joined: 2002-12-10 13:59
 

Re: Confixx2 Trafficbegrenzung

Post by mezga »

Hm, macht eigentlich kein Sinn. Hast schon recht :wink:
valior
Posts: 5
Joined: 2003-12-21 22:52
Location: Oldenburg
 

Re: Confixx2 Trafficbegrenzung

Post by valior »

könntest du das Berechnungs Script posten wenn es geht ?
Wäre für mich ganz hilfreich :-D
mezga
Posts: 147
Joined: 2002-12-10 13:59
 

Re: Confixx2 Trafficbegrenzung

Post by mezga »

#!/usr/bin/php
<?
$db = mysql_connect("localhost","confixx","PASSWORT");

$query = mysql_query("SELECT * FROM confixx.kunden WHERE gesperrt='0' ORDER BY kunde");
$monat = date("m"); $jahr = date("Y");

while($result = mysql_fetch_array($query)) {

$qtraffic = mysql_query("SELECT (sum(ftp) + sum(web) + sum(email)) AS gtransfer FROM confixx.transfer WHERE kunde='$result[kunde]' AND monat='$monat' AND jahr='$jahr' AND geloescht='0'");

$traffic = mysql_fetch_array($qtraffic);
if($result[maxtransfer]<=$traffic["gtransfer"] && $result[maxtransfer] != "-1") {

mysql_query("UPDATE confixx.kunden SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.ftp SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.pop3 SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.allgemein SET newpwd='1', httpd='1'");


// Mail verschicken
$text = "Der Kunde $result[kunde] hat seinen erlaubten Traffic von ".($result[maxtransfer] / 1024)." MB um ".round((($traffic[gtransfer] - $result[maxtransfer]) / 1024),2)." MB überschritten!" ;

mail("webmaster@domain.net","Trafficüberschreitung $result[kunde]",$text,"From: webmaster@domain.netnReply-To: webmaster@domain.netnX-Mailer: PHP/" . phpversion());

}
}
mysql_close($db);
?>
valior
Posts: 5
Joined: 2003-12-21 22:52
Location: Oldenburg
 

Re: Confixx2 Trafficbegrenzung

Post by valior »

CyberLine wrote:Aber mal was anderes: warum stellste den Ã?berhangtraffik deinen Kunden nicht einfach in Rechnung und schlägst noch was oben drauf ???

Ein Script um das zu Berechnen hab ich auch :)
Ich meinte das :)
cyberline
Posts: 97
Joined: 2003-01-28 10:11
Location: Hürth
 

Re: Confixx2 Trafficbegrenzung

Post by cyberline »

Wow, jetzt ist dieser Thread schon über ein Jahr aktiv, wahnsinn :)
Ich sollte mal was neues ausdenken was dieses Thema angeht, vieleicht so eine Extra Confixx Extension mit Menüoberfläche, hehe.
rick
Posts: 24
Joined: 2003-12-20 19:38
 

Re: Confixx2 Trafficbegrenzung

Post by rick »

mezga
Posts: 147
Joined: 2002-12-10 13:59
 

Re: Confixx2 Trafficbegrenzung

Post by mezga »

Solltest schon einen Benutzernamen angeben zum auf die Datenbank connecten...

Acess for "@localhost". Der versucht sich mit nix anzumelden.. also MÃ?Ã?P

Dann versucht der sich mit wwwrun anzumelden. Ohne Passwort -> wieder MÃ?Ã?P
recoilmaster
Posts: 188
Joined: 2003-10-02 10:35
 

Re: Confixx2 Trafficbegrenzung

Post by recoilmaster »

WolfHenk wrote:ok, ich hab meine Sach nu am Laufen.
Meine Files sehen so aus:

traffic_check.php
#!/usr/bin/php
<?
$dat = mysql_connect ("localhost","DBuser","DBpass");
$query = mysql_query("SELECT * FROM confixx.kunden ORDER BY kunde");
$monat = date("m"); $jahr = date("Y");

while($result = mysql_fetch_array($query)) {
$qtraffic = mysql_query("SELECT (sum(ftp) + sum(web) + sum(email)) AS gtransfer FROM confixx.transfer WHERE kunde='$result[kunde]' AND monat='$monat' AND jahr='$jahr' AND geloescht='0'");
$traffic = mysql_fetch_array($qtraffic);
if($result[maxtransfer]<=$traffic["gtransfer"] && $result[maxtransfer] != "-1") {
mysql_query("UPDATE confixx.kunden SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.ftp SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.pop3 SET gesperrt='1' WHERE kunde='$result[kunde]'");
mysql_query("UPDATE confixx.allgemein SET newpwd='1', httpd='1'");
$text1 = "Der Kunde $result[kunde] hat seinen erlaubten Traffic von ".($result[maxtransfer] / 1024)." MB um ".round((($traffic[gtransfer] - $result[maxtransfer]) / 1024),2)." MB überschritten und wurde deswegen automatisch gesperrt!" ;
mail("wolfhenk@mydomain.de","Trafficüberschreitung $result[kunde]",$text1,"From: webmaster@mydomain.denReply-To: noreply@mydomain.denX-Mailer: PHP/" . phpversion());
$text2 = "Sehr geehrter Kunde,/nSie haben ihren erlaubten Traffic von ".($result[maxtransfer] / 1024)." MB um ".round((($traffic[gtransfer] - $result[maxtransfer]) / 1024),2)." MB überschritten./nIhr Webspace auf unserem Server wurde deswegen automatisch gesperrt!/nBitte setzen Sie sich mit uns in Verbindung, wenn Sie vor Ablauf des Monatsendes wieder freigeschaltet werden möchten/nSie erreichen uns unter +49 815 4711/nMit freundlichen Grüßen/nWolfHenk";
mail("$result[emailadresse]","Trafficüberschreitung ihres Webspaceaccounts",$text2,"From: webmaster@mydomain.denReply-To: webmaster@mydomain.denX-Mailer: PHP/" . phpversion());
}
}
mysql_close($dat);
?>
und

traffic_unlock.php
#!/usr/bin/php
<?
$db = mysql_connect("localhost","DBuser","DBpass");
mysql_query("UPDATE confixx.kunden SET gesperrt='0' WHERE 1");
mysql_query("UPDATE confixx.ftp SET gesperrt='0' WHERE 1");
mysql_query("UPDATE confixx.pop3 SET gesperrt='0' WHERE 1");
mysql_query("UPDATE confixx.allgemein SET newpwd='1', httpd='1'");
mysql_close($db);
mail("webmaster@mydomain.de","Trafficsperren geöffnet","Gesperrte Kunden wurden wieder geöffnet, bitte kontrollieren.","from: webmaster@mydomain.de");
?>
wobei: Wenn Traffic_check per Cron alle 5 Minuten läuft krieg ich UND der Kunde alle 5 Minuten ne Mail.
Ich denke man sollte das noch erweitern um die Abfrage gesperrt = 0 aus der confixx.kunden. Leider hab ich nur wenig Plan von MySql und PHP, deswegen bitte ich mal hier um nen Vorschlag, den ich gerne teste und hier auch die Ergebnisse veröffentliche.

--

Ach das warums bei mir net ging: Ich hab Debian und mein Socket ist nicht /tmp/mysql.sock sondern /tmp/mysqld.sock.
Ich habe entsprechend ein symlink namens /tmp/mysql.sock erstellt, was nach /tmp/mysqld.sock verweist...

Wolfram
Aufwärm, es muss ja überall wo @mydomain.de steht meine Emailadresse rein, aber wie bekommt das Script dann die Emaialdresse des Kuden raus, an die die Mail gehen muss ?

Thx

Bye Nils
hazze
Posts: 46
Joined: 2003-06-04 08:03
Location: Bern (Schweiz)
Contact:
 

Re: Confixx2 Trafficbegrenzung

Post by hazze »

Moin

Bei mir funzt das script nicht

Ausgabe des Befehls /root/traffic_unlock.php ..

X-Powered-By: PHP/4.1.2
Content-type: text/html

<br />
<b>Fatal error</b>: Call to undefined function: mysql_connect() in <b>/root/traffic_unlock.php</b> on line <b>2</b><br />

Das kommt beim ausführen des Cron
Post Reply