» Signaturgröße automatisch ermitteln und bei Bedarf ablehnen

Google weiterleiten, falls Session ID in der URL stehtNeuen Thread eröffnenNeue Antwort erstellenini_set('memory_limit') je nach Auflösung, Farbtiefe, usw
AutorNachricht
Administrator 

Name: Marc
Geschlecht:
Anmeldedatum: 28.08.2004
Beiträge: 52420
Wohnort: Lohmar


Meine eBay-Auktionen:
20.02.2009, 02:28
zitieren

Jeder kennt das als Forenbetreiber. Die User hauen große Grafiken in die Signatur oder gar animierte GIFs ohne Ende. Da setzen wir doch glatt einen Riegel vor:
// check image size 
if (stripos($this->value, '[/img') !== false) {
   if (preg_match_all('#\](http.*?)\[/img#i', $this->value, $matches)) {
      foreach ($matches[1] as $url) {
         $url = @parse_url($url);
         if ($fp = @fsockopen($url['host'], 80, $errno, $errstr, 5)) {
            $data = '';
            fwrite($fp, "GET " . $url['path'] . ($url['query'] ? "?" . $url['query'] : '') . " HTTP/1.0\r\nHost: " . $url['host'] . "\r\n" . ($opts ? $opts . "\r\n" : '') . "Referer: http://" . $_SERVER['HTTP_HOST'] . "/\r\nConnection: close\r\n\r\n");
            while (!feof($fp)) {
               $data .= fgets($fp);
               // break if 20 kb have been reached
               if (strlen($data) > 20480) {
                  _error('Bilder in der Signatur dürfen maximal 20 kb groß sein!');
                  return;
               }
            }
            fclose($fp);
         }
      }
   }
}

Das Script liest alle Bilder aus $this->value aus und lehnt die Signatur ab, sofern ein Bild die Größe von 20kB überschreitet. Das Script ist sehr performant aufgebaut, da es das Bild aufhört weiter einzulesen, wenn die 20kB erreicht wurden. Also selbst 5MB Bilder sind kein Problem und sind demnach in wenigen Millisekunden abgelehnt.

Gruß


pn email
Gast 
20.02.2009, 02:28
zitieren

Mach mit!

Wenn Dir die Beiträge zum Thread "Signaturgröße automatisch ermitteln und bei Bedarf ablehnen" gefallen haben oder Du noch Fragen hast oder Ergänzungen machen möchtest, solltest Du Dich gleich bei uns anmelden:



Registrierte Mitglieder genießen die folgenden Vorteile:
✔ kostenlose Mitgliedschaft
keine Werbung
✔ direkter Austausch mit Gleichgesinnten
✔ neue Fragen stellen oder Diskussionen starten
✔ schnelle Hilfe bei Problemen
✔ Bilder und Videos hochladen
✔ und vieles mehr...


Neuen Thread eröffnenNeue Antwort erstellen
Ähnliche BeiträgeRe:
Letzter Beitrag
eBay Auktionen rechtlich sicher abbrechen / Lieferung ablehnen
Ich habe gerade das Problem, dass ein Verkäufer nicht liefert. Die Ware wurde ca. für die Hälfte verkauft was im Schnitt bei eBay möglich ist. Der Verkaufszeitpunkt war einfach schlecht gewählt. Aber für die Uhrzeit eben ein realistischer Preis. Der...
von mgutt
1
260
23.02.2016, 13:20
mgutt
CSV Delimiter ermitteln
Die Funktion durchläuft die bekannten Delimiter und gibt als Ergebnis das Zeichen aus, was die meisten Spalten resultierte: function csv_delimiter($filename) { $delimiters = array('|', ';',...
[PHP]von mgutt
0
400
16.02.2015, 22:37
mgutt
Batteriezustand ermitteln!?
Hallo Jungs, hab mal sone frage: Meine Autobatterie ist vor ein paar Tagen entladen, wahrscheinlich durch zuviel musik hören und licht anlassen, wärend der Motor aus ist! So nun hab ich das Auto mit Überbrückungskabeln angekriegt und war damit ca....
von JohnnyB
7
1.563
27.11.2007, 17:48
JohnnyB
Farbe von Querlenker ermitteln
Hallo, habe mir Focuz Querlenker gekauft nun brauche ich die ganuere Farbe da ich meine anderen Achsteile auch so lackieren will. Könnt mir evtl jemand helfen? Also farbe ist ca Bronze bzw...
von ArTo_1HGEJ2
9
872
02.11.2009, 17:07
silent
Windows 8 Key aus Recovery ermitteln?
Kann ich aus einem Recovery den Windows 8 Key ermitteln und damit dann eine neue Installation durchführen? Damals als ich den Notebook gekauft hatte, war Windows 8 vorinstalliert und natürlich keine Installations-DVD dabei. Ich finde auch nirgends einen...
von mgutt
4
137
07.01.2015, 15:53
mgutt
Wie kann ich die kleinste Zahl ermitteln?
#include <stdio.h> #include <conio.h> int max(int a, int b) { if (a > b) return (a); else return (b); } int min (int a, int b) { if (a < b) return (a); else return (b); ...
[C]von Torti87
1
895
28.09.2011, 14:05
hugo17
Domain Namen ermitteln (in URL bzw Hostnamen)
Es ist gar nicht so einfach eine Domain aus einer URL zu ermitteln, denn es gibt viele URLs, die exakt den selben Aufbau besitzen, aber unterschiedliche Bedeutungen haben: - bbc.co.uk ist eine Domain - www.db.de ist eine Subdomain Man benötigt also...
[PHP]von mgutt
1
7.576
04.02.2017, 03:26
mgutt
Lackfarbe: wie ermitteln ohne Farbcode?
Hallo, ich möchte mir bald einen Type R-Grill in meinen EJ9 einbauen; allerdings ist mein Fahrzeug vom Vorbesitzer, einem wohl bereits ein wenig senilen Rentner, 2 Jahre nach seiner EZ silber umlackiert worden. Jedoch ist dies wohl nicht das...
von MrHighway
9
17.378
26.03.2007, 08:09
STRAUBSTER
Gewindesteigung bestimmen/messen/ermitteln: Wie?
Hi, wie ermittle ich die Gewindesteigung einer Schraube? Messe ich einfach den Abstand zwischen zwei Gewinden oder wie? Gibts was für Deppen so einer Art "Schraublehre"?...
von mgutt
26
44.910
12.07.2012, 20:21
RS188
IP des Besuchers ermitteln REMOTE_ADDR, HTTP_X_FORWARDED_FOR
Auf Grund eines Tipps kam ich zu diesen Funktionen: http://www.dreamincode.net/code/snippet1745.htm http://www.grantburton.com/tag/http_client_ip/ Die waren mir in Sachen Performance zu schlecht, weshalb ich das gecodet habe: // set ip if...
[PHP]von mgutt
2
25.900
20.06.2009, 18:11
mgutt
© 2004 - 2024 www.programmierer-forum.de | Communities | Impressum |