Hey @ll!!!
Es gab da doch mal einen block mit dem konnte ich alle xx Minuten ein anderes Photo aus einem bestimten Verzeichnis anzeigen lassen!
Weiß vielleicht jemand wo ich denn block bekomme?
Hab bei warp-speed.de schon gesucht, aber leider nicht das gefunden was ich suche!!!!
Viellei9cht könnt ihr mir weiter helfen!!!
Sascha1981! :D
Hmmm....also als Block habe ich sowas noch nicht gesehen.
Aber probiere es doch mal mit einem Java Script. Da gibt es sowas.
MFG! :)
So hab denn block jetzt gefunden denn ich gesucht habe!!!!!!!
Jetzt hab ich ein kleines problem!!!!
Ich möchte in denn block zusätzlich zum Photo einen Link zum Profil des jeweiligen users eionbauen!
Vielleicht könnt ihr mir dabei helfen??
Hier der Code
<?php
if (eregi("block-RandomPic.php",$PHP_SELF)) {
Header("Location: index.php");
die();
}
mt_srand((double)microtime()*1000000);
$imgs = dir('modules/User_Fotoalbum/album');
while ($file = $imgs->read()) {
if (eregi("gif", $file) || eregi("jpg", $file)) {
$imglist .= "$file ";
}
}
closedir($imgs->handle);
$imglist = explode(" ", $imglist);
$a = sizeof($imglist)-2;
$random = mt_rand(0, $a);
$image = $imglist[$random];
$asin = explode(".", $image);
$content .= "<img src=\"modules/User_Fotoalbum/album/$image\" border=\"0\"></center>";
?>
Das würde ich auch sehr gerne wissen, ach ja wie kann man die größe der angezeigten Bilder im Block einstellen?
Die größe kannst du mit width=\"xxx\" einstellen!!
xxx durch deine gewünschte größe ersetzen!!
Ja aber
Zitatwidth=\"xxx\
steht nirgends im Code.
In welche Zeile würde das rein gehören?
Das steht jetzt aber in jeder HTML-Doku drin .....
Zitat$content .= "<img src=\"modules/User_Fotoalbum/album/$image\" border=\"0\" width=\"XXX\" height=\"XXX\" ></center>";
MfG
jubilee
Das mußt du dir eben dann selber rein schreiben!
Ich mußte das auchs elber rein scchreiben!
Hab aber trotzdem noch ein paar probleme !!!
Ist es irgendwie möglich das ich da bild dann mit dem User Profil des jeweiligen users verlinke????
Du müsstest irgendwie nur denn file namen rausbekommen also ohnr .jpg oda .gif dann wäre es ziemlich simple einen passenden link einzubinden
Also wenn ein user ein photo upploadet dann wird das mit $uname1 u.sw. gespeichert!!!
hab es jetzt schon so versucht!!!!
modules.php?name=Userinfo&uname=$uname
Aber da wird dann irgendwie nix angezeigt!! bzw. der parameter $uname wird nicht übergeben!!!
Hab es so versucht!!
<?php
global $prefix,$user_prefix,$uname;
if (eregi("block-RandomPic.php",$PHP_SELF)) {
Header("Location: index.php");
die();
}
mt_srand((double)microtime()*1000000);
$imgs = dir('modules/User_Fotoalbum/album');
while ($file = $imgs->read()) {
if (eregi("gif", $file) || eregi("jpg", $file)) {
$imglist .= "$file ";
}
}
closedir($imgs->handle);
$imglist = explode(" ", $imglist);
$a = sizeof($imglist)-2;
$random = mt_rand(0, $a);
$image = $imglist[$random];
$asin = explode(".", $image);
$content .= "<center><img src=\"modules/User_Fotoalbum/album/$image\" width=\"120\" border=\"0\"><br><a href=\"modules.php?name=Userinfo&uname=$uname\"><b>Profil</b></a></center>";
?>
Der Block funktioniert jetzt zwar jedoch die verknüpfung mit den jeweilgen Profil des Users wäre dennoch wünschenswert, ich hoffe Sascha und mir kann geholfen werden.!
Es steht bei mir zwar drunter aber der parameter $uname wird leider nicht übergeben!!
Da erscheint nur der link!
www.domain.at/modules.php?name=Userinfo&uname=$uname
@Sascha, mir fällt im übrigen auf das beim Bild keine verknüpfung statt findet, ich glaube daran könnte es auch liegen oder?
Ja hab ich auchb grad gesehen!!
Daran arbeite ich gerade!!!
Spitze Sascha!
Also an der verlinkung liegt es nicht!!
Hab das jetzt grad versucht, aber es wird trotzdem der parameter $uname nicht übergeben!!
Hier der Code!
<?php
global $prefix,$user_prefix,$uname;
if (eregi("block-RandomPic.php",$PHP_SELF)) {
Header("Location: index.php");
die();
}
mt_srand((double)microtime()*1000000);
$imgs = dir('modules/User_Fotoalbum/album');
while ($file = $imgs->read()) {
if (eregi("gif", $file) || eregi("jpg", $file)) {
$imglist .= "$file ";
}
}
closedir($imgs->handle);
$imglist = explode(" ", $imglist);
$a = sizeof($imglist)-2;
$random = mt_rand(0, $a);
$image = $imglist[$random];
$asin = explode(".", $image);
$content .= "<center><a href=\"modules.php?name=Userinfo&uname=$uname\"><img src=\"modules/User_Fotoalbum/album/$image\" width=\"120\" border=\"0\"></a></center>";
?>
So ich hab jetzt die Lösung!!!
Hier der neue Code der funktionieren müßte!!
<?php
global $prefix,$user_prefix,$uname;
if (eregi("block-RandomPic.php",$PHP_SELF)) {
Header("Location: index.php");
die();
}
$isseruser = 0;
$username = "";
if (mxIsUser()){
$isseruser = 1;
$cookie=mxGetUserSession();
$username = $cookie[1];
$uid = $cookie[0];
}
mt_srand((double)microtime()*1000000);
$imgs = dir('modules/User_Fotoalbum/album');
while ($file = $imgs->read()) {
if (eregi("gif", $file) || eregi("jpg", $file)) {
$imglist .= "$file ";
}
}
closedir($imgs->handle);
$imglist = explode(" ", $imglist);
$a = sizeof($imglist)-2;
$random = mt_rand(0, $a);
$image = $imglist[$random];
$asin = explode(".", $image);
$content .= "<center><a href=\"modules.php?name=Userinfo&uname=$username\"><img src=\"modules/User_Fotoalbum/album/$image\" width=\"120\" border=\"0\"></a></center>";
?>
ok das war es dann doch nicht!!
Da wird bei jedem Photo der selbe Link angezeigt!!
Wir haben es fast geschafft Sascha, bei der verknüpfung kommt zur Zeit leider noch raus
http://www.schmidtianer.de/modules.php?name=Userinfo&uname=
das hatte ich schon mal gelöst das Problem, nur wie?
Ja das hab ich weiter oben schon geschrieben!!
Ich hatte die Lösung zu dem ganze auch schon mal!!
Ic nur leider jetzt nicht rdauf wie ich das gemacht habe!!
Das problem ist das er auch das Photo dann denn richtigen User zuordnen muß!!
[Editiert am 9/3/2004 von Sascha1981]
mt_srand((double)microtime()*1000000);
$imgs = dir('modules/User_Fotoalbum/album');
while ($file = $imgs->read()) {
if (eregi("gif", $file) || eregi("jpg", $file)) {
$imglist .= "$file ";
}
}
closedir($imgs->handle);
$imglist = explode(" ", $imglist);
$a = sizeof($imglist)-2;
$random = mt_rand(0, $a);
$image = $imglist[$random];
$asin = explode(".", $image);
$content .= "<center><a href=\"modules.php?name=Userinfo&uname=$username\"><img src=\"modules/User_Fotoalbum/album/$image\" width=\"120\" border=\"0\"></a></center>";
So Sascha wie soll der gute denn raus bekommen das $image = $username sein soll??
Ums besser da zustellen: NeMeSiSX2LC.gif = NeMeSiSX2LC
Kannst wohl nicht so ganz sein oder??
Irgendwie muss die endung der Grafik weg dann klappt das spiel erst.
Also ich benötige den Block für das Modul Members Photo Upload und hier wäre doch eine verknüpfung zwischen Bild und Username.
Ich kenne es nicht DB gestützt und das Member upload fügt nix der db hinzu wo man auslesen könnte
Das macht das user_photoalbum auch nicht!!
Ich hätte eine Idee, nur weiß ich leider nicht wie ich den Block umbauen müßte bzw welche teile ich verwenden könnte......
Und zwar geht es um den Random Avatar Block, dieser wäre mit den Userprofil verknüpft:
if (!defined("mxMainFileLoaded")) die ("You can't access this file directly...");
global $prefix;
$blockheigth = 80;
$pic = sql_fetch_array(sql_query("SELECT typ,aid FROM ${prefix}_avatar ORDER BY rand() LIMIT 1"));
if(!empty($pic))
{
$content = "<b>".$pic['aid'].":</b><br><a href='modules.php?name=Userinfo&uname=".$pic['aid']."' border='0'> <img src='".MX_PATH_MEMBERAVATAR."/".$pic['typ']."'></a>";
}
else
{
$content = "<b>Keine</b> Avatare hochgeladen<br><br><b>No</b> Avatar's uploaded";
}
Das funktioniert aber nur wenn das Photo Upload Modul das du verwendest die Daten auch in der DB speichert und das macht weder das Members Photo Upload und das das User_Photoalbum macht es auch nicht!!
Frage warum versucht du nicht mal denn Uname aus der mx_users auszulesen und machst statt $image ein ".$uname.".gif und .jpg draus??
Hab ich schon versucht!!
Aber dann sieht die verlinkung so aus!!
modules.php?name=Userinfo&file=user_statistik&uname=Sascha1.jpg
Kann uns niemand weiter helfen?
Wartet mal wartet mal eben läufts auseinander!
Schreib gleich noch was
Schaut euch mal das an (Sascha wirst woll eher mit klar kommen):
if (is_uploaded_file($uploadtemp1)) {
if(($uploadfile1_type=="image/pjpeg")||($uploadfile1_type=="image/jpeg")){
$savepath = "modules/$modname/images/members/".$uid.".jpg";
if(@move_uploaded_file($uploadtemp1, $savepath))
{
$upfile = "modules/$modname/images/members/".$uid.".jpg";
$path2= "modules/$modname/images/members/thumbs/".$uid.".jpg";
create_thum($upfile,$thumb_max_width,$thumb_max_height,$path2);
$result=sql_query("update ".$user_prefix."_user_profile1 set photopath='$uid.jpg' where ".$user_prefix."_user_profile1.ffusername='$check'",$dbi);
$result=sql_query("select ffusername from ".$user_prefix."_user_photo where ffusername='$check'",$dbi);
$row=sql_num_rows($result,$dbi);
if($row>=1)
{
$result=sql_query("update ".$user_prefix."_user_photo set ffusername='$check',approved='0',denied='0' where ffusername='$check'",$dbi);
}
else{
$result=sql_query("insert into ".$user_prefix."_user_photo values (NULL,'$check',0,0)", $dbi);
}
Damit wird beim upload der file ein eintrag in die DB gemacht (Felder und Tabellen ändern). Und das approved und Denied auf 1 stellen
So dann zum block(muss auch angepasst werden):
global $user,$user_prefix,$dbi,$prefix;
$total = sql_fetch_array(sql_query("SELECT COUNT(id) AS total FROM ".$user_prefix."_user_profile1 where photo='1' and approved='1'",$dbi),$dbi);
$p = mt_rand(0,($total[total] - 1));
$pic = sql_fetch_array(sql_query("SELECT ffusername,photopath FROM ".$user_prefix."_user_profile1 where photo='1' and approved='1' LIMIT $p,1",$dbi),$dbi);
So das wäre für mich jetzt wirklich die einzige lösung
P.S.: Angepasst dauert noch weil ich grad an dem FreindFinder module dran bin und mir ideen hole
[Editiert am 9/3/2004 von NeMeSiSX2LC]
@NeMeSiSX2LC für welches Modul hast du das gedacht Members_photo_Upload oder User_photoalbum
if (is_uploaded_file($uploadtemp1)) {
if(($uploadfile1_type=="image/pjpeg")||($uploadfile1_type=="image/jpeg")){
$savepath = "modules/$modname/images/members/".$uid.".jpg";
if(@move_uploaded_file($uploadtemp1, $savepath))
{
$upfile = "modules/$modname/images/members/".$uid.".jpg";
$path2= "modules/$modname/images/members/thumbs/".$uid.".jpg";
create_thum($upfile,$thumb_max_width,$thumb_max_height,$path2);
$result=sql_query("update ".$user_prefix."_user_profile1 set photopath='$uid.jpg' where ".$user_prefix."_user_profile1.ffusername='$check'",$dbi);
$result=sql_query("select ffusername from ".$user_prefix."_user_photo where ffusername='$check'",$dbi);
$row=sql_num_rows($result,$dbi);
if($row>=1)
{
$result=sql_query("update ".$user_prefix."_user_photo set ffusername='$check',approved='0',denied='0' where ffusername='$check'",$dbi);
}
else{
$result=sql_query("insert into ".$user_prefix."_user_photo values (NULL,'$check',0,0)", $dbi);
}
Also dieser Code funktioniert bei mir nicht, habe zur Zeit folgenden Code der bis auf die Verknüpfung mit den Userprofil funktioniert.
global $prefix,$user_prefix,$uname;
if (eregi("block-RandomPic.php",$PHP_SELF)) {
Header("Location: index.php");
die();
}
mt_srand((double)microtime()*1000000);
$imgs = dir('images/members/');
while ($file = $imgs->read()) {
if (eregi("gif", $file) || eregi("jpg", $file)) {
$imglist .= "$file ";
}
}
closedir($imgs->handle);
$imglist = explode(" ", $imglist);
$a = sizeof($imglist)-2;
$random = mt_rand(0, $a);
$image = $imglist[$random];
$asin = explode(".", $image);
$content .= "<a href=\"modules.php?name=Userinfo&uname=$uname\"><img src=\"images/members/$image\"border=\"0\" width=\"140\" height=\"140\"</a></center>";
hehe leute das nur en beispiel auf eure module müsst ihr das schon selbst anwenden :D
thx für die Hilfe!!
Dann muß das bei mir wohl noch etwas warten!
hab für das im mom. keine zeit dazu!!
Ok mal anderst da bleibt es sich egal welches module es ist. es sollte eine DB INSERT bzw UPDATE und die upload.php mit rein. Halt so in der richtung:
if($row>=1)
{
$result=sql_query("update ".$user_prefix."_user_photo set ffusername='$check',approved='0',denied='0' where ffusername='$check'",$dbi);
}
else{
$result=sql_query("insert into ".$user_prefix."_user_photo values (NULL,'$check',0,0)", $dbi);
}
Am besten ihr besorgt euch mal das Friendfinder module (ver. 2.1.3 - Nuke 5.5) und schau euch das mal an ist eigentlich kein grosses ding. Aber ich kann da leider im mom nicht helfen da ich das alles eigenständig zusammen setzen tu.
Und habt ihr aufgegeben :cry ? denn ich suche das für das Members foto upload.
Ne aufgegeben nicht nur momentan keine zeit dazu
Hi :)
beziehe mich mal auf den ersten codeschnippsel von Sascha.
wenn die Bilder in der Form username.Dateieendung im Ordner liegen, müsste hier $asin = explode(".", $image); in $asin der Username + Dateiendung gespeichert sein.
Also:
$temp = explode('.',$asin); // teile den String in 2 Teile
$username = $temp[0]; // verwende nur den ersten
Hab das jetzt so versucht!!
<?php
if (eregi("block-RandomPic.php",$PHP_SELF)) {
Header("Location: index.php");
die();
}
mt_srand((double)microtime()*1000000);
$imgs = dir('modules/User_Fotoalbum/album');
while ($file = $imgs->read()) {
if (eregi("gif", $file) || eregi("jpg", $file)) {
$imglist .= "$file ";
}
}
closedir($imgs->handle);
$imglist = explode(" ", $imglist);
$a = sizeof($imglist)-2;
$random = mt_rand(0, $a);
$uname = $imglist[$random];
$asin = explode(".", $uname);
$temp = explode('.',$asin); // teile den String in 2 Teile
$uname = $temp[0]; // verwende nur den ersten
$content .= "<a href=\"modules.php?name=Userinfo&uname=$uname\"><img src=\"modules/User_Fotoalbum/album/$uname\" width=\"120\" border=\"0\"></a></center>";
?>
Aber das funktioniert irgendwie nicht!
Vielleicht bin ich auch zu blöd dazu!!
Hallo!
Schnell mal geschaut ....
das
Zitat$random = mt_rand(0, $a);
$uname = $imglist[$random];
$asin = explode(".", $uname);
$temp = explode('.',$asin); // teile den String in 2 Teile
$uname = $temp[0]; // verwende nur den ersten
$content .= "<a href=\"modules.php?name=Userinfo&uname=$uname\"><img src=\"modules/User_Fotoalbum/album/$uname\" width=\"120\" border=\"0\"></a></center>";
mal so ändern :
Zitat$random = mt_rand(0, $a);
$uname = $imglist[$random];
$asin = explode(".", $uname);
$content .= "<a href=\"modules.php?name=Userinfo&uname=$asin[0]\"><img src=\"modules/User_Fotoalbum/album/$uname\" width=\"120\" border=\"0\"></a></center>";
MfG
jubilee
Jetzt ist zwar eine verlinkung aber leider diese
http://localhost/vkpmx/modules.php?name=Userinfo&uname=Sascha
So jetzt funktioniert ist!!!
Hab kurzer hand das User_photoalbum so ungeschrieben das daß erste Photo nicht in der form $uname1.gif/jpg gespeichert wird sondern so $uname.gif/jpg
So, für alle anderen, die mX 2.2 Version:
php
//////////////////////////////////////////
// Blockcache erlauben?
$mxblockcache = TRUE;
// Pfad zu den Bildern
$imagedir = 'modules/User_Fotoalbum/album';
// maximale Breite des Bildes
$maxwidth = 120;
//////////////////////////////////////////
$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()*1000000);
shuffle($imglist);
$size = getimagesize($imagedir.'/'.$imglist[0][0]);
$size = ($size[0] > $maxwidth) ? 'width="120"' : $size[3];
$content = '
<center>
<img src="'.$imagedir.'/'.$imglist[0][0].'" '.$size.' border="0" alt="'.$imglist[0][1].'">
<a href="modules.php?name=Userinfo&uname='.$imglist[0][1].'">
<b>'.$imglist[0][1].'</b></a>
</center>';
}
naja, hier gleich zum downloaden....
//modules.php?name=Downloads&d_op=getit&lid=349
[Editiert am 12.3.2004 von Tora]
Wenn wir grad so schön dabei sind Idee von mir!
Das mit dem block ist ja schon eine nette sache aber wie wäre es denn wenn es das random verfahren auch im YA geben würde??
Wie meinst du das jetzt????
Na jeder User kann doch 6 Bilder hochladen. Und normalerweise wird davon das erste im Profil angezeigt. So aber wäre es auch nicht nicht wenn zufällig bei jedem User Besuch ein anderes aus denn 6 Bilder ausgefällt wird?
Super Tora!
Leider ist noch ein kleiner Bug mit Zahlen noch drinnen,
und zwar wenn ein Benutzername aus Buchstaben und Zahlen besteht, so wird das leider falsch verknüpft-angezeigt-weggeschnitten.
Beispiele:
Benutzername: ganymed1610 wird zu ganymed161
oder schmidtfan53 wird zu schmidtfan5
:) ;)
uuups, da muss ich den regex nochmal checken....
Konnte das Problem schon gelöst werden?
Das problem besteht leider immer noch! :'(
Gibt es für mein problem noch keine Lösung? ZitatLeider ist noch ein kleiner Bug mit Zahlen noch drinnen,
und zwar wenn ein Benutzername aus Buchstaben und Zahlen besteht, so wird das leider falsch verknüpft-angezeigt-weggeschnitten.
Beispiele:
Benutzername: ganymed1610 wird zu ganymed161
oder schmidtfan53 wird zu schmidtfan5
Wenn du dauernd wieder fragst belasstet uns das Problem immer weniger. Ist dir aber klar ne?
Hmmm ....
Antwort darauf müsste hier irgendwo im Forum stehen.
Habe ich schon mal für den Cramp gerichtet.
Naja, egal.
Diese Code sollte funktionieren :
<?php // $Id: block-Random_Userphoto.php,v 1.3 2004/04/02 14:35:40 EllselAn Exp $
/**********************************************************************/
/* pragmaMx 0.2 / Mx 2.2 Content Management System Platform */
/* ================================================================== */
/* Copyright (C) 2004 by the vkpMx & pragmaMx Developer Team */
/* email: team@pragmamx.org */
/* homepage: http://www.maax-design.de & http://www.pragmaMx.org */
/* ================================================================== */
/* The vkpMx is distributed free of charge by maax-design.de. */
/* The use of this system is allowed until copyright information */
/* is shown perspicuous visible and correcty on all system pages. */
/* Sales, rent out and the use of single code parts from this */
/* system must be allowed by maax-design.de. */
/**********************************************************************/
if (!defined("mxMainFileLoaded")) die ("You can't access this file directly...");
//////////////////////////////////////////
// Blockcache erlauben?
$mxblockcache = TRUE;
// Pfad zu den Bildern
$imagedir = 'modules/User_Fotoalbum/album';
// maximale Breite des Bildes
$maxwidth = 120;
//////////////////////////////////////////
$imglist = array();
$imgs = dir($imagedir);
while ($file = $imgs -> read()) {
if (preg_match('#(.*)([0-9]{1})\.(gif|jpe?g)$#i', $file, $matches)) {
$imglist[] = $matches;
}
}
closedir($imgs->handle);
#mxDebugFuncVars($imglist);
if (count($imglist)) {
srand ((float)microtime()*1000000);
shuffle($imglist);
$size = getimagesize($imagedir.'/'.$imglist[0][0]);
$size = ($size[0] > $maxwidth) ? 'width="120"' : $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>';
}
?>
MfG
jubilee
Danke jubilee für den Block! :)