[Mod] Userpic

Ich habe einen Blog Artikel verfasst - Wie benutze ich die Suche richtig - Bitte diesen beachten und auch umsetzen bevor Ihr ein Neues Thema eröffnet!

  • [infobox]Da der Post hier schon recht unübersichtlich wird, habe ich die Dateien, die geändert werden angehangen![/infobox]
    [warnbox]Achtung beim Austausch der Dateien, eventuelle Änderungen die Ihr selbst vorgenommen habt, werden dann natürlich überschrieben![/warnbox]



    [infobox]Jetzt auch mit Profilbild anstatt des Favoritenbild in der Statistik des Profils, einfach img/php/profil.php austauschen[/infobox]
    Moin,
    da hier ja mittlerweile nach einem MOD für das Profilbild gefragt wurde und ein Kumpel mich deswegen auch angesprochen hat, hab ich mir mal die Zeit genommen und dies für das WM-Script angepasst :-)
    Danach kann man auf der "Profil ändern"-Seite sein eigenes Profilbild hochladen
    [infobox] Achtung, manchmal spielt der Cache verrückt und man muss die Seite erneut laden bzw den Cache löschen, damit das Bild auch angezeigt wird![/infobox]
    Ausserdem wird dann das Profilbild auf der linken Seite oberhalb des Usermenü angezeigt und in der Teilnehmerliste.


    Folgendes muss gemacht werden, damit dies auch bei Euch klappt :-)


    [warnbox]Ich berufe mich bei Zeilenangaben etc. immer auf die Original Script-Dateien, also sollte jemand schon was gebastelt haben, dann ist dies natürlich zu berücksichtigen!
    Desweiteren macht es immer Sinn, seine Daten vorher zu sichern, auch die Datenbank.[/warnbox]
    [warnbox]Und immer schön an UTF-8 denken[/warnbox]

    • User-Datenbank um Spalte "Userpic" erweitern
      Folgenden SQL-Befehl in PHPMyAdmin o.ä. ausführen:

      Code
      1. ALTER TABLE wmtipp_users ADD COLUMN userpic VARCHAR(50) NOT NULL Default 'empty.jpg'


      Dieser trägt in eurer Tabelle wmtipp_users die Spalte "userpic" und das Bild empty.jpg als Standardbild für jeden User ein.
      (Ihr könnt auch jedes andere Standardbild benutzen)


    • Ordner /userpic erstellen mit empty.jpg
      Nun per ftp im Ordner img einen Ordner mit dem Namen: userpic erstellen und diesem Ordner Schreibzugriff geben chmod 777.
      Dann in den Ordner das Bild empty.jpg einfügen. (Bild ist hier mit angehangen)


    • Datei intern.profil.php anpassen
      Die Profil ändern Seite muss angepasst werden, dass man hier sein Bild hochladen kann.
      Dazu in der intern.profil.php ganz am Ende folgenden Code anfügen:
      [warnbox]Im Quelltext sind Fehler, da irgendwie hier die Formatierung verändert wird, auch wenn ich es als Code deklariere!!![/warnbox]
      [warnbox]Er löscht in den span-Befehlen den Schrägstrich! Es heisst bei den $meldungs-Aufrufen so:[/warnbox]

      Zitat

      $meldung = "<span style=\"color:#FF0000;font-weight:bold;\">



    • Im Usermenü Bild einfügen
      In der Index.php nach

      Code
      1. <tr><td colspan="2"><hr style="border:1px dotted #cccccc;"></td></tr>


      suchen (Bei Original-index.php nach Zeile 701).
      Davor diesen Code einfügen.

      PHP
      1. <!-- Mod Userpic Beginn --><?php$get_pic = mysql_query("SELECT userpic FROM ". $CONFIG['MYSQL']['PREFIX'] ."users WHERE id = '".$_SESSION['s_id']."'");$bild = mysql_fetch_array($get_pic);$userpic = "img/userpic/".$bild['userpic'];?><img src="<?php echo $userpic; ?>" title="Profilbild" alt="Profilbild" style="position:top; "><!-- Mod Userpic Ende -->


      dann erscheint das aktuelle Userbild im User-Menü.


    • Userpic in Teilnehmerliste


      Damit das Userpic auch in der Teilnehmerliste angezeigt wird, muss die teilnehmer.ansicht.php angepasst werden.
      Dazu muss die Tabelle um eine Spalte erweitert werden, direkt neben der Favoritenflagge, also nach Zeile 58 ein weiteres

      Code
      1. <td class="tabHeaderMid">&nbsp;</td>


      einfügen, somit stehen da jetzt zwei untereinander dann.
      Dann nach folgendem Code weiter unten:

      PHP
      1. <td class="tabCKMid" style="<?php echo $tdstyle; ?>text-align:left!important; width:30px;"><img style="border:0px; width:28px; height:20px; padding:0px; margin:0px;" src="<?php echo $CONFIG['PATH']."img/flags/". $row['fav'] .".png"; ?>" alt="fav"></td>


      Dies danach einfügen:

      PHP
      1. <td class="tabCKMid" style="<?php echo $tdstyle; ?>text-align:left!important; width:30px;"><img style="border:0px; width:28px; height:28px; padding:0px; margin:0px;" src="<?php echo "img/userpic/".$row['userpic']; ?>" alt="userpic"></td>


      Ich habe hier mal die Höhe auf 28px gesetzt.
      Wer die Bilder größer haben möchte, der muss nur die Breite und Höhe dementsprechend anpassen:

      Code
      1. width:28px; height:28px;


    • Einbinden in wer ist/war Online


      Dazu muss die user.online.php angepasst werden.
      In Zeile 44 den SQL-Aufruf ändern in:

      PHP
      1. $query = "SELECT u.id AS uid, u.name, u.usr, u.fav AS fav, u.userpic AS userpic, t.id AS tid FROM ". $CONFIG['MYSQL']['PREFIX'] ."users AS u" ." LEFT JOIN ". $CONFIG['MYSQL']['PREFIX'] ."teams AS t ON t.id = u.fav" ." WHERE UNIX_TIMESTAMP(u.lastaction) > ". ($now - $skript['actiontime']) ." ORDER BY u.name DESC";


      und weiter unten gibt es noch einen SQL-Befehl so ca. Zeile 104, den ändern in:

      PHP
      1. $query = "SELECT u.id AS uid, u.name, DATE_FORMAT(u.lastaction, '%H.%i ') AS lastdate, u.usr, u.fav, u.userpic AS userpic, t.id AS tid FROM ". $CONFIG['MYSQL']['PREFIX'] ."users AS u" ." LEFT JOIN ". $CONFIG['MYSQL']['PREFIX'] ."teams AS t ON t.id = u.fav" ." WHERE UNIX_TIMESTAMP(u.lastaction) <= ".($now - $skript['actiontime']) ." AND UNIX_TIMESTAMP(u.lastaction) >= " . mktime(0,0,0,date("m",$now),date("d",$now),date("Y",$now)) ." ORDER BY u.lastaction DESC";


      Somit haben wir schon mal den Aufruf das auch das Profilbild mit gesucht wird.


      Dann muss es noch angezeigt werden, dies geht mit folgendem Aufruf:

      PHP
      1. <td style="border:1px solid #b0b0b0;border-right:0px;<?php echo $styletext?>text-align:center; width: 38px"><img style="border:0px; width:28px; height:28px; padding:0px; margin:0px;" src="<?php echo "img/userpic/".$row['userpic']; ?>" alt="userpic"></td>


      [infobox]Bei WAR-Online sollte die Backgroundfarbe auf grau gesetzt werden, also einfach text-align:center;background-color:#dddddd;" width="38"> dann einfach benutzen.[/infobox]
      Dieser muss nach dem Aufruf des Fav-Icons eingebaut werden oder kann auch anstelle dessen.
      Achtung gibt den Aufruf ja zweimal, einmal für IST-ONLINE und für WAR-ONLINE, einfach nach der Passage suchen:

      PHP
      1. <td style="border:1px solid #b0b0b0;border-right:0px;<?php echo $styletext?>text-align:center;background-color:#dddddd;" width="38"><img style="border:0px" src="<?php echo $CONFIG['PATH']?>img/flags/<?php echo $row['fav']?>.png" width="28" height="20"></td>


      Zeile 62 und 122 (kann auch etwas verschoben sein, wenn ihr schon den ersten Aufruf eingebaut habt.)


    • Einbinden ins Forum (Danke an Chris)
      forum.thread.php Zeile 181


      Diese Zeile ersetzen

      PHP
      1. <img src="<?php echo $CONFIG['PATH']?>img/flags/<?php echo loadField($row['autor'],"fav")?>.png" style="padding:1px;margin-left:5px;margin-right:7px;border:0px;" alt="Favorit"> <div style="margin:7px 0 0 0;"><?php echo getTipper($row['autor'])?></div>


      durch

      PHP
      1. <img src="<?php echo $CONFIG['PATH']?>img/userpic/<?php echo loadField($row['autor'],"userpic")?>" style="padding:1px;margin-left:5px;margin-right:7px;border:0px;" alt="Userpic"> <div style="margin:7px 0 0 0;"><?php echo getTipper($row['autor'])?></div>


    • Einbindung in Rangliste und Siegertreppchen
      Die Änderungen hat Marcelinho weiter unten mal gepostet.
      Ich habe die in den jeweiligen Dateien mit übernommen, allerdings mit der kleinen Änderungen, dass ich den Favorit und das Userpic anzeigen lasse.



    Alle Änderungen sind im ZIP-File drin und können ausgetauscht werden nach Bedarf :-)
    Das macht das Ganze einfacher für viele.


    Ich hoffe es ist verständlich für jeden :-)


    Viel Spaß damit!

  • Super vielen Dank! Läuft.


    Jetzt fehlt glaube ich nur noch das einbinden ins "Forum" und nach "Wer ist Online" bzw. optional in die Rangliste.


    Einbinden ins Forum:


    forum.thread.php Zeile 181


    Diese Zeile ersetzen

    PHP
    1. <img src="<?php echo $CONFIG['PATH']?>img/flags/<?php echo loadField($row['autor'],"fav")?>.png" style="padding:1px;margin-left:5px;margin-right:7px;border:0px;" alt="Favorit"> <div style="margin:7px 0 0 0;"><?php echo getTipper($row['autor'])?></div>


    durch

    PHP
    1. <img src="<?php echo $CONFIG['PATH']?>img/userpic/<?php echo loadField($row['autor'],"userpic")?>" style="padding:1px;margin-left:5px;margin-right:7px;border:0px;" alt="Userpic"> <div style="margin:7px 0 0 0;"><?php echo getTipper($row['autor'])?></div>
  • Super vielen Dank! Läuft.


    Jetzt fehlt glaube ich nur noch das einbinden ins "Forum" und nach "Wer ist Online" bzw. optional in die Rangliste.


    Es gibt kein Forum beim WM-Tipp ;)
    Und auch kein direktes "Wer ist Online", nur für den Admin, aber ich denke da muss es nicht rein.


    Das Optionale für die Rangliste habe ich weggelassen, weil dann hätte man in der inc.config auch noch rangemusst.
    Wer es nicht möchte, der lässt den Code in der Teilnehmer-Datei einfach weg ;)


    Es sei denn, das WM-Script bleibt weiterhin so bestehen und es soll dauerhaft mit integriert werden, dann können wir es optional einbauen :)
    Aber das entscheide nicht ich alleine.


    Was Du vergessen hast, ist das Siegertreppchen, da fehlt es auch noch, aber da hatte ich bis jetzt noch keine Muse zu gehabt :)

  • Ups ich merke gerade das die Profl ändern Seite nach einbinden des Codes nicht mehr geladen wird.
    Ich schaus mir gleich mal genauer an..



    Zum Forum: Klar gibt es das Forum ?! Habe den Code oben in den Beitrag hinzugefügt.


    Und es gibt doch auch "user.online.php" ist für alle einsehbar..


    Stimmt Siegertreppechen, na da ist ja noch Zeit für ;)

  • Und es gibt doch auch "user.online.php" ist für alle einsehbar..


    Upps, ist mir noch nie aufgefallen ;)
    Aber wird natürlich bearbeitet :-)
    Und gleich oben gepostet.


    -----------------
    Hab´s oben eingefügt mit, auch den Forumumbau.
    (Ich hab Forum bei mir ausgeschaltet, daher hatte ich keines :-) )

  • Zitat

    Ups ich merke gerade das die Profl ändern Seite nach einbinden des Codes nicht mehr geladen wird.
    Ich schaus mir gleich mal genauer an..


    Hi..


    habe den Fehler in Bezug auf das Problem, dass die Profilseite nicht lädt, gefunden ... der Textstring für intern.profil.php hat bei den Meldungen "Bild zu gross" etc. mehrfache Hochkommas, die in einem Textstring als Fehler ausgegeben werden.


    Beispiel: $meldung = "<span style="color:#FF0000;font-weight:bold;">Bild ist zu gross</span>";


    Geändert: $meldung = "<span style=\"color:#FF0000;font-weight:bold;\">Bild ist zu gross</span>";


    Wenn man das bei allen Meldungen macht, klappt es auch! :thumbsup:

  • Geändert: $meldung = "<span style=\"color:#FF0000;font-weight:bold;\">Bild ist zu gross</span>";


    Wenn man das bei allen Meldungen macht, klappt es auch! :thumbsup:


    Hatte ich oben auch schon angepasst.
    Problem ist, dass man hier beim Verfassen zwar nett PHP-Script oder Quelltext angeben kann, er aber den Backslash dann eigenmächtig rauslöscht :-(
    Nur bei Zitate lässt er ihn drin...
    Echt Klasse .. :cursing:

  • Funktioniert hervorragend und sieht einfach nur klasse aus. Herzlichen Dank.


    Ich habe bei der user.online.php hinsichtlich der beiden grundsätzlich identischen Userpic-Aufrufe übrigens noch einen kleinen Unterschied festgestellt. Bei „Wer war heute online?“ ist der Hintergrund im Gegensatz zu „Wer ist online?“ grau statt weiß. Für transparente Userpics macht es deshalb durchaus Sinn, hier beim Userpic ebenfalls grau als Hintergundfarbe zu wählen. Sieht einfach schöner aus.


    Beim ersten Aufruf "Wer ist online?" also wie oben gepostet:
    <text-align:center; width: 38px">


    Beim zweiten Aufruf "Wer war heute online?" noch die Hintergrundfarbe (grau) ergänzen:
    <text-align:center;background-color:#dddddd;" width="38">


    Nochmals Danke. Die WM kann kommen. :sdanke:

    Erfolg ist kein Zufall. Es ist harte Arbeit, Ausdauer, Lernen, Studieren, Aufopferung.

    Jedoch vor allem Liebe zu dem, was du tust oder dabei bist zu lernen.
    Pele

  • Super Mod, vielen Dank dafür! Es wäre klasse, wenn der fest mit ins Script implementiert werden würde. :)

    The definition of open: mkdir android ; cd android ; repo init -u git://android.git.kernel.org/platform/ manifest.git ; repo sync ; make

  • Zitat

    Geändert: $meldung = "<span style=\"color:#FF0000;font-weight:bold;\">Bild ist zu gross</span>";


    Wenn man das bei allen Meldungen macht, klappt es auch! :thumbsup:


    Leider wird die Profilseite bei mir auch dann nicht mehr geladen. Hab es nun x-mal probiert. Wäre vielleicht jemand so nett und stellt die fertigen Dateien hier ein? Wäre wirklich nett! :sdanke:

  • Leider wird die Profilseite bei mir auch dann nicht mehr geladen. Hab es nun x-mal probiert. Wäre vielleicht jemand so nett und stellt die fertigen Dateien hier ein? Wäre wirklich nett! :sdanke:

    Probier's mal mit der angehängten Datei...

    Dateien

    The definition of open: mkdir android ; cd android ; repo init -u git://android.git.kernel.org/platform/ manifest.git ; repo sync ; make

  • Leider gibt´s hier ein Problem mit der Foramtierung vom Code, wenn man ihn postet.


    Eventuell packe ich alle veränderten Dateien mal zusammen und dann tauscht man die einfach aus.
    Allerdings überspielt man dann auch schon selbstgemachte Änderungen ;)
    Wobei ich schon versuche, Änderungen im Script auch einleitend mit einer Bemerkung zu kennzeichnen.


    Vorab kann ich schon mal sagen, dass wohlmöglich noch heute im Laufe des Tages für die Rangliste und auch Siegertreppchen die Userpic-Mod kommen wird ;)
    Marcelinho hat Urlaub und hat etwas rumgebastelt und mir gerade mal gezeigt...

  • Hier schon mal die Anpassungen für die Siegertreppe (Datei "sieger.php" im Verzeichnis "content").


    Statt:


    while ($ar = mysql_fetch_array($sql))
    {
    $sql2 = mysql_query("SELECT usr FROM ". $CONFIG['MYSQL']['PREFIX'] ."users WHERE id = '".$ar['uid']."'");
    $row = mysql_fetch_array($sql2);
    $i = $i + 1;
    if($i == 1)
    {
    $sieger = $row['usr'];
    $pktsieger = $ar['pkt'];
    $idsieger = $ar['uid'];
    };
    if($i == 2)
    {
    $zweiter = $row['usr'];
    $pktzweiter = $ar['pkt'];
    $idzweiter = $ar['uid'];

    };
    if($i == 3)
    {
    $dritter = $row['usr'];
    $pktdritter = $ar['pkt'];
    $iddritter = $ar['uid'];

    };
    };



    folgenden Code einfügen (oder entsprechend ändern...Änderungen habe ich fett markiert):



    while ($ar = mysql_fetch_array($sql))
    {
    $sql2 = mysql_query("SELECT usr, userpic FROM ". $CONFIG['MYSQL']['PREFIX'] ."users WHERE id = '".$ar['uid']."'");
    $row = mysql_fetch_array($sql2);
    $i = $i + 1;
    if($i == 1)
    {
    $sieger = $row['usr'];
    $pktsieger = $ar['pkt'];
    $idsieger = $ar['uid'];
    $picsieger = $row['userpic'];
    };
    if($i == 2)
    {
    $zweiter = $row['usr'];
    $pktzweiter = $ar['pkt'];
    $idzweiter = $ar['uid'];
    $piczweiter = $row['userpic'];
    };
    if($i == 3)
    {
    $dritter = $row['usr'];
    $pktdritter = $ar['pkt'];
    $iddritter = $ar['uid'];
    $picdritter = $row['userpic'];
    };
    };



    Dann nach diesen Zeilen:



    <table style="margin-left:auto; margin-right:auto; border-collapse: collapse;" width="<?php echo $tdwidth*3; ?>">
    <tr height="<?php echo $trheight; ?>">
    <td width="<?php echo $tdwidth; ?>">&nbsp;</td>
    <td width="<?php echo $tdwidth; ?>" style="text-align:center; vertical-align:middle;" >
    <span style="font-weight:bold; font-size:20px">
    <a href="index.php?page=statistik/profil/<?php echo $idsieger; ?>" style="text-decoration:none;">
    <?php echo $sieger; ?>
    </a><br>
    </span>



    unmittelbar diese Zeilen anhängen:



    <?php
    $userpic = "img/userpic/".$picsieger;
    ?>
    <img src="<?php echo $userpic; ?>"; width=155px height=155px;>



    Dann nach diesen Zeilen:



    <?php echo $zweiter; ?>
    </a><br>
    </span>



    unmittelbar diese Zeilen anhängen:



    <?php
    $userpic = "img/userpic/".$piczweiter;
    ?>
    <img src="<?php echo $userpic; ?>"; width=155px height=155px;>



    Dann nach diesen Zeilen:



    <?php echo $dritter; ?>
    </a><br>
    </span>



    unmittelbar diese Zeilen anhängen:



    <?php
    $userpic = "img/userpic/".$picdritter;
    ?>
    <img src="<?php echo $userpic; ?>"; width=155px height=155px;>



    Das war es auch schon...bei mir funktioniert es. Viel Spaß! :thumbsup:


    Vorschaubild:

    Dateien

    • sieger.zip

      (2,34 kB, 8 Mal heruntergeladen, zuletzt: )

    Erfolg ist kein Zufall. Es ist harte Arbeit, Ausdauer, Lernen, Studieren, Aufopferung.

    Jedoch vor allem Liebe zu dem, was du tust oder dabei bist zu lernen.
    Pele

    Einmal editiert, zuletzt von Marcelinho ()

  • Kannst du die bearbeitete sieger.php vielleicht anhängen? :)

    The definition of open: mkdir android ; cd android ; repo init -u git://android.git.kernel.org/platform/ manifest.git ; repo sync ; make

  • Direkt in inc.functions.php hinter dieser Zeile (etwa Zeile 2092):
    // START: Umstellung auf zweizeiliges Design


    Das hier einfügen:
    $sql2 = mysql_query("SELECT userpic,usr FROM ". $CONFIG['MYSQL']['PREFIX'] ."users WHERE id = '".$ar['uid']."'");
    $row = mysql_fetch_array($sql2);
    if (file_exists("img/userpic/".$row['userpic']))
    $userpic = $CONFIG['PATH']."img/userpic/".$row['userpic'];
    else
    $userpic = $CONFIG['PATH']."img/userpic/empty.jpg";
    ?>
    <td class="tabContentMid" align="center"><img src="<?php echo $userpic?>" style="padding:1px;border:0px; width:50px; height:50px;"></td>
    <?php



    Und nach diesem Eintrag (Zeile 1974):
    <td class="tabHeaderMid" align="center" colspan="2">&plusmn;</td>


    Diesen unmittelbar danach hinzufügen:
    <td class="tabHeaderMid" align="center">Bild</td>




    Das hier nach Zeile 1878 Einfügen:


    <td class="tabHeaderMid" style="width: 20px" align="center">Bild</td>


    Die Zeile 1878 selbst muss wie folgt auskommentiert werden:
    <!-- <td class="tabHeaderMid" style="width: 20px" align="center">Favorit</td> -->


    Dann weiter unten ca. ab Zeile 1898 den Code wie folgt verändern:


    $sql2 = mysql_query("SELECT userpic,usr FROM ". $CONFIG['MYSQL']['PREFIX'] ."users WHERE id = '".$ar['uid']."'");
    $row = mysql_fetch_array($sql2);

    if (file_exists("img/userpic/".$row['userpic']))
    $userpic = $CONFIG['PATH']."img/userpic/".$row['userpic'];
    else
    $userpic = $CONFIG['PATH']."img/userpic/empty.jpg";



    Und zu guter Letzt etwas weiter unten (ca. ab Zeile 1934) hinter:


    if ($own == $ar['platz'])
    echo "</b>";
    ?></td>



    die Zeile so verändern:


    <td class="tabContentMid" align="center"><img src="<?php echo $userpic?>" style="padding:1px;border:0px; width:50px; height:50px;"></td>


    In der rangliste.custom.php muss vor diesem Eintrag:


    <td class="tabContentMid" align="center"><?php echo $ar['tipps']?></td>
    <td class="tabContentMid" align="center"><?php echo $ar['ergebnis']?></td>
    <td class="tabContentMid" align="center"><?php echo $ar['differenz']?></td>
    <td class="tabContentMid" align="center"><?php echo $ar['tendenz']?></td>

    dieser eingepflegt werden:


    <td class="tabContentMid" align="center"><img src="<?php echo $flag?>" style="padding:1px;border:0px; width:50px; height:50px;"></td>


    und nach:


    <?php
    $platz = 1;
    foreach ($array as $i => $ar)
    {
    if (isset($ar['uid']) &&$ar['uid'] > 0)
    {


    muss dieses stehen:


    $sql2 = mysql_query("SELECT userpic,usr FROM ". $CONFIG['MYSQL']['PREFIX'] ."users WHERE id = '".$ar['uid']."'");
    $row = mysql_fetch_array($sql2);
    if (file_exists("img/userpic/".$row['userpic']))
    $flag = $CONFIG['PATH']."img/userpic/".$row['userpic'];
    else
    $flag = $CONFIG['PATH']."img/userpic/empty.jpg";




    Ich hoffe, ich habe nichts vergessen...bei mir klappt es wunderbar. Tugsi wird das bestimmt noch etwas geordneter in seinem oben stehenden Beitrag integrieren. :thumbup:

    Dateien

    • WM2014.zip

      (21,3 kB, 15 Mal heruntergeladen, zuletzt: )

    Erfolg ist kein Zufall. Es ist harte Arbeit, Ausdauer, Lernen, Studieren, Aufopferung.

    Jedoch vor allem Liebe zu dem, was du tust oder dabei bist zu lernen.
    Pele

    Einmal editiert, zuletzt von Marcelinho ()

  • Es gibt ja auch die Möglichkeit, statt des gewählten Theme Previews im Userprofil das Userpic anzuzeigen.
    Dazu ändert man in "/img/php/profil.php" folgendes:


    Suche:

    Code
    1. $src = imagecreatefromjpeg($CONFIG['FOLDER']."./img/previews/".($user['color'] == 0 ? getDefaultDesignIndex() : $user['color']).".jpg");



    und ersetze das durch:

    Code
    1. #$src = imagecreatefromjpeg($CONFIG['FOLDER']."./img/previews/".($user['color'] == 0 ? getDefaultDesignIndex() : $user['color']).".jpg");
    2. $src = imagecreatefromjpeg($CONFIG['FOLDER']."./img/userpic/".($user['userpic']));


    Allerdings scheint das bei PNGs nicht zu klappen. Das Bild wird nicht angezeigt. Bei JPGs und GIFs funktioniert das.
    Liegt das eventuell an der Transparenz bei PNGs?

    The definition of open: mkdir android ; cd android ; repo init -u git://android.git.kernel.org/platform/ manifest.git ; repo sync ; make

  • Soweit war ich gestern auch schon und hatte das für 3 Minuten schon hochgepostet und die profil.php mit im ZIP-Ordner reingepackt.
    Aber dann fiel mir auf, was auch klar ist, dass es nur für JPEGs gilt, bei PNGs etc bekommst nur ein kleines Quadrat angezeigt, also Schrott...
    Daher hab ich das sofort auch wieder rausgenommen.


    Die Frage ist, gibt es ein Befehl imagecreatefrom* ? Also universal?


    Oder man muss die Leute gängelt dass nur jpegs genommen werden und das finde ich persönlich nicht ganz so schön.

  • Du solltest dir mal die Funktion imagecreatefromstring() angucken. Nachfolgend ein Beispiel:


    PHP
    1. function imagecreatefromfile($imagepath=false) {
    2. if(!$imagepath || !$is_readable($imagepath) return false;
    3. return @imagecreatefromstring(file_get_contents($imagepath));
    4. }
    5. $img_resource=imagecreatefromfile($imagepath);