Hallo Ihr alle....,
hat jemand ne Idee, warum bei dem Block Random Userphoto, bei der Anzeige des betreffenden User-Namens, der letzte Buchstabe stets nicht angezeigt wird ? Somit erscheint dann auch leider beim Aufrufen dieses Mitgliedes der Hinweis, das es keine Information über ??? gibt.
So sieht meine Block-Datei aus ?
//////////////////////////////////////////
// Blockcache erlauben?
$mxblockcache = TRUE;
// Pfad zu den Bildern
$imagedir = 'images/members';
// maximale Breite des Bildes
$maxwidth = 140;
//////////////////////////////////////////
$imglist = array();
$imgs = dir($imagedir);
while ($file = $imgs -> read()) {
if (preg_match('#(.*)([0-9])(\.gif|\.jpe?g)$#i', $file, $matches)) {
$imglist[] = $matches;
}
}
closedir($imgs->handle);
if (count($imglist)) {
srand ((float)microtime()*100);
shuffle($imglist);
$size = getimagesize($imagedir.'/'.$imglist[0][0]);
$size = ($size[0] > $maxwidth) ? 'width="140' : $size[3];
$content = '
<center>
<img src="'.$imagedir.'/'.$imglist[0][0].'" '.$size.' border="0" alt="'.$imglist[0][1].'"><br>
<a href="modules.php?name=Userinfo&uname='. $imglist[0][1].' "><b>'.$imglist[0][1].'</b></a>
</center>';
}
?>
Danke euch allen und ein schönes Wochenende ..
Peter
Hallo !
Entweder 1 Subpattern bei der Regex falsch, oder
shuffle() macht irgendwas was es nicht soll.
Ich würde sowieso eher zu rand() raten, da dies besser funzt als shuffle()
MfG
jubilee
Danke für Deine Antwort jubilee ...
...hmmm..muss allerdings leider zugeben..verstehe nur "Bahnhof" ..smile....!
Kein Modul irgendwo erhältlich, welches funktioniert ?
Danke
Hallo !
Änder das mal so ab und probier dann nochmal :
Zitat//////////////////////////////////////////
// Blockcache erlauben?
$mxblockcache = TRUE;
// Pfad zu den Bildern
$imagedir = 'images/members';
// maximale Breite des Bildes
$maxwidth = 140;
//////////////////////////////////////////
$imglist = array();
$imgs = dir($imagedir);
while ($file = $imgs -> read()) {
if (preg_match('#(.+)([0-9])(\.gif|\.jpe?g)$#i', $file, $matches)) {
$imglist[] = $matches;
}
}
closedir($imgs->handle);
$a=(count($imglist));
if (isset($a)) && ($a>0);
{
mt_srand((double)microtime()*1000000);
$id=(mt_rand(1,$a)-1);
$size = getimagesize($imagedir.'/'.$imglist[$id][0]);
$size = ($size[0] > $maxwidth) ? 'width="140' : $size[3];
$content = "
<center>
<img src=\"".$imagedir."/".$imglist[$id][0]."\" ".$size." border=\"0\" alt=\"".$imglist[$id][1]."\">
<a href=\"modules.php?name=Userinfo&uname=". $imglist[$id][1]." \"><b>".$imglist[$id][1]."</b></a>
</center>";
}
else
{
content="";
}
?>
Aber ohne gewähr, weil nicht getestet (Backup vom Originalblock machen !)
MfG
jubilee
[Editiert am 20/6/2004 von jubilee]
Nochmal ein Danke. ! Zeigt jedoch "Parse error: parse error ", muss irgendwo hier liegen der Fehler;
$id=(mt_rand(1,$a)-1);
$size = getimagesize($imagedir.'/'.$imglist[$id][0]);
$size = ($size[0] > $maxwidth) ? 'width="140' : $size[3];
$content = "
<center>
Hallo !
Stimmt, waren noch fehler drin.
Dies sollte besser funktionieren:
Zitat<?php
//////////////////////////////////////////
// Blockcache erlauben?
$mxblockcache = TRUE;
// Pfad zu den Bildern
$imagedir = 'images/members';
// maximale Breite des Bildes
$maxwidth = 140;
//////////////////////////////////////////
$imglist = array();
$imgs = dir($imagedir);
while ($file = $imgs -> read()) {
if (preg_match('#(.+)([0-9])(\.gif|\.jpe?g)$#i', $file, $matches)) {
$imglist[] = $matches;
}
}
closedir($imgs->handle);
$a=(count($imglist));
if ((isset($a)) && ($a>0))
{
mt_srand((double)microtime()*1000000);
$id=(mt_rand(1,$a)-1);
$size = getimagesize($imagedir.'/'.$imglist[$id][0]);
$size = ($size[0] > $maxwidth) ? 'width="140' : $size[3];
$content = "
<center>
<img src=\"".$imagedir."/".$imglist[$id][0]."\" ".$size." border=\"0\" alt=\"".$imglist[$id][1]."\">
<a href=\"modules.php?name=Userinfo&uname=". $imglist[$id][1]." \"><b>".$imglist[$id][1]."</b></a>
</center>";
}
else
{
$content="";
}
?>
MfG
jubilee
Hmmmm...., fehlt leider nach wie vor das letzte Zeichen des Usernamens. Zum Beispiel erscheint "Turbo12" anstelle "Turbo123" Einfach zum "narrigwerden".....
Dennoch Danke und viele Grüße
Peter
Hallo !
So, habs jetzt mal bei mir getestet und es funktioniert
einwandfrei ?!
Bei mir wird das letzte Zeichen des Usernamens nicht verschluckt.
MfG
jubilee
Hmmm...dann kann es ja nur an irgend einer anderen Einstellung liegen.
Gruß
Peter
Hmm ...
Hast Du den Quelltext oben (im Zitatblock) denn so 1 zu 1 übernommen ?
Der muss eigentlich gehen.
MfG
jubilee
Eben..habe es detailiert so übernommen. Dachte, es würde eventuell nicht mit meinen Themeneinstellungen passen, aber auch als CenterBlock fehlen die beschriebenen Zeichen.
???
Gruß und Dank
Peter