[2.3] Link-Avatar

Markx

Neuer Benutzer
hi; danke für den hack rellek, habe da mal was gefunden
PHP:
<?php
   $img = "logo.jpg";
   $size = getimagesize( $img);
   echo "Bildbreite: " . $size[0];
   echo "Bildhöhe: " . $size[1];
?>
das ist ein script, damit man die maße der bilder auslesen kann, habe das von dieser seite http://www.skoom.de/

könnte das dir helfen, um die maße zu überprüfen der externen avatare und das man dan nicht größere avatare als gegeben nutzen kann? Danke schonmal im vorraus, achja getestet habe ich das, indem ich einfach einen link von einer seite reinkopiert habe, und es hat funktioniert, dann müsste es doch auch mit deinen hack zusammenarbeiten können oder? naja, bis dann ^^
 

rellek

relativ sensationell
Teammitglied
Hi,

ist bekannt, wird aber absichtlich nicht genutzt.

Gründe:
a) Es gibt PHP-Konfigurtationen, die aus den später genannten Gründen das nur bei lokalen Dateien erlauben
b) Dann müsste der Server sich bei jedem Aufruf das Bild holen und checken
c) Das würde für deinen Server und den Bilderserver zusätzlichen Traffic bedeuten - und zwar bei jedem Aufruf
d) Zusätzliche Serverlast für deinen Server (was das kleinere Übel ist)
(kannste ja mal auf 1000 Anfragen mal 100 User hochrechnen)

Nun könntest du sagen, dann wirds eben nur beim Abspeichern geprüft.
Und wer garantiert dir, dass das Bild nachdem es abgespeichert wurde nicht noch mal geändert wird?
 

Ricken

[inaktiv]
Hi Rellek,

schöne Idee dieser Hack, ich könnte den im Moment gut gebrauchen, ich möchte einen Avatarrotator im php Format nutzen. Aber ich möchte nicht, das andere User auch das Avatar als Link auswählen können, also entweder nur ich als Administrator, oder alle Administratoren, könnte man das ohne großen Aufwand einbauen ?

Mfg Ricken
 

Diokhan

Neuer Benutzer
Hi ich hab das jetzt mal gelesen und bin durchaus interessiert an dem Hack ... jedoch das mit dem größen Testen würde ich drinnen haben müssen.

Da oben schon die idee im gespräch war die Größe nur beim abspeichern überprüft wird wäre mir die möglichkeit durchaus auch recht, da ich meine user privat kenne und nich denke dass da einer sich den umstand macht und den link nochmal ändert usw.
;) also wenn dir mal langweilig wäre und es nicht zu viel aufwand ist könntest das ja mal für mich so einbauen :angle:

und achja nochwas ... könnte man evt. es nicht so machen dass man die avatare dann im endeffekt nicht immer über den link aufruft sondern, dass man beim speichern einen avatar von nem anderen server angibt und der dann einfach auf den eigenen server hochgeladen wird und sich wie ein normaler avatar verhält ... das würde den usern auch schon einiges an rumklickerei ersparen und hätte den selben effekt ;)

mfg Diokhan
 

rellek

relativ sensationell
Teammitglied
Hi,

das wäre natürlich auch eine Idee... mal sehen, wann ich da Zeit für finde...
 

michse02

Neuer Benutzer
Danke, super Hack.

Original von mkkcs
1. wenn man wieder ins usercp - avatar geht zeigt er das Ava nicht an, denn als Bild versucht er mit der Board-URL ein Ava anzuzeigen, drück ich speichern, ist es vom externen Space wieder da !

Dazu kann ich was beitragen:

In der Anleitung steht für usercp.php:
Code:
suche (Zeile 955):
			$lang->items['LANG_USERCP_USE_OWNAVATAR_NOTE'] = $lang->get("LANG_USERCP_USE_OWNAVATAR_NOTE", array('$allowed_avatar_extensions' => getAllowedExtensions($wbbuserdata['allowed_avatar_extensions']), '$max_avatar_width' => $wbbuserdata['max_avatar_width'], '$max_avatar_height' => $wbbuserdata['max_avatar_height'], '$max_avatar_size' => formatFilesize($wbbuserdata['max_avatar_size'])));

davor einfügen:
			if($wbbuserdata['avatarlink'] != "") eval("\$ownavatar = \"".$tpl->get("avatar_image_linked")."\";");

wenn man daraus
Code:
suche (Zeile 955):
			$lang->items['LANG_USERCP_USE_OWNAVATAR_NOTE'] = $lang->get("LANG_USERCP_USE_OWNAVATAR_NOTE", array('$allowed_avatar_extensions' => getAllowedExtensions($wbbuserdata['allowed_avatar_extensions']), '$max_avatar_width' => $wbbuserdata['max_avatar_width'], '$max_avatar_height' => $wbbuserdata['max_avatar_height'], '$max_avatar_size' => formatFilesize($wbbuserdata['max_avatar_size'])));

davor einfügen:
			$linkavatar = $wbbuserdata['avatarlink'];
			if($wbbuserdata['avatarlink'] != "") eval("\$ownavatar = \"".$tpl->get("avatar_image_linked")."\";");
macht funktioniert es.

Gruß
 

psprofi

New Member
Hallo

ich hab den Hack eingebaut. Wenn ich nun einen Externen Avatar eingetragen haben, erscheint die Nachricht:

Warning: unlink() [function.unlink]: No such file or directory in /nfs/extra/prepend/prepend.php(187) : system created function on line 19
und Außerdem möchte ich, dass man NUR einen Avatar verlinken kann, nichtmehr hochladen. Gibts da ne möglichkeit?
 

rellek

relativ sensationell
Teammitglied
Also die Fehlermeldung hat wohl eher nichts mit dem Hack zu tun, eine prepend.php bringt der Hack nicht mit und zum wBB gehört die Datei auch nicht.


Wegen dem anderen müsste man mal schauen. Ist kein großes Problem, aber es ist schon spät. Äh früh. Na wie auch immer... *g*
 

psprofi

New Member
Hab selbst mal weiter Probiert und folgendes macht mich voll und ganz zufrieden. ( Fehler weg und kein Hochladen mehr)


Code:
editiere template usercp_avatars

suche

     </tr>
     <tr align="left">
      <td class="tablea" style="width:50%"><span class="normalfont"><b>{$lang->items['LANG_USERCP_UPLOAD_AVATAR']}</b></span></td>
      <td class="tablea" style="width:50%">$havatar<input type="hidden" name="MAX_FILE_SIZE" value="$wbbuserdata[max_avatar_size]" /><input name="avatar_file" type="file" class="input" size="35" /></td>
     </tr> 

ersetze mit

<!---     </tr>
     <tr align="left">
      <td class="tablea" style="width:50%"><span class="normalfont"><b>{$lang->items['LANG_USERCP_UPLOAD_AVATAR']}</b></span></td>
      <td class="tablea" style="width:50%">$havatar<input type="hidden" name="MAX_FILE_SIZE" value="$wbbuserdata[max_avatar_size]" /><input name="avatar_file" type="file" class="input" size="35" /></td>
     </tr> --->

MFG

psprofi
 

rellek

relativ sensationell
Teammitglied
Okay, so gehts natürlich. Aber lass dir gesagt sein, dass mit einer modifizierten HTML-Datei (von der Festplatte) ein Upload noch immer möglich ist...
 

psprofi

New Member
Soll nur ne Übergangslösung sein.

Kannst du dann nochmal schauen, wie man das entfernen kann, damit man Avatare nicht mehr hochladen kann ?

ich währe dir ewig Dankbar


MFG

psprofi
 

rellek

relativ sensationell
Teammitglied
Naja bevor ichs morgen wieder vergesse...

usercp.php, suche:
Code:
if ($wbbuserdata['can_use_avatar'] == 0 || $wbbuserdata['can_upload_avatar'] == 0) access_error();
                $badavatar = 0;

aus der 0 eine 1 machen

... und probiers mal mit dem originalen template ein (gültiges) avatar hochzuladen - sollte einen fehler geben...
 

psprofi

New Member
aus welcher 0


EDIT: Hat sich erledigt ist ja logisch ^^

es funzt danke!!
 
Zuletzt bearbeitet von einem Moderator:
Oben