Hier kann eine Notiz zum Merk-Eintrag hinzugefügt werden (optional)
| [ 1 | 2 ] | [ Anmelden zum schreiben ] |
| Usergallery begrenzen, aber wie? | |||
|---|---|---|---|
| mv-tuning Mitglied
Posts: 11 |
so hallo, ich wieder.
2tes problem. ich will in der usergallery die maximale pic größe (60KB) begrenzen. meine user laden mir den ganzen rechner mit digicam bilder voll. und dann will ich auch auf 30 bilder maximal begrenzen. wie mach ich das am besten? ich habe mir schon ne ganze nacht nen kopf gemacht und probiert, aber es ist einfach nicht meine welt. vielen danke schon mal im vorraus. gruß mv verwendete ilchClan Version: 1.1 betroffene Homepage: www.atk-racing.de |
||
| mv-tuning Mitglied
Posts: 11 |
hallo? keiner ne lösung?
|
||
| SLJ Hall Of Fame
Posts: 15485 |
Du kannst bei nem bild die filesize auslesen und dan sagen wenn die größer wie 60 kb dann wirds nicht gesicher,... Und wegen der anzahl lass doch einfach die abfrage über nen count laufen und wenn der 30 hat wir die hochlade box deaktiviert und dann kommt halt nen text maximal 30 bilder erlaubt,...
![]() www.zocker-eppingen.de (ZE 1.6.8 next ZE 2.1) Mal schauen ob noch was neues kommt,... 2012! |
||
| mv-tuning Mitglied
Posts: 11 |
das hört sich gut an. kannst du mir nen beispiel für den code geben? kein plan wie ich das schreiben soll. habe das zwar mal ein wenig in der ausbildung gehabt, aber nicht viel von da geblieben. danke
|
||
| mv-tuning Mitglied
Posts: 11 |
habe da schon mal was reingebastelt. aber bestimmt völlig falsch. funzt nicht. ;-(
<?php # Copyright by: Manuel # Support: www.ilch.de defined ('main') or die ( 'no direct access' ); if ($allgAr['forum_usergallery'] == 0) { exit(); } $uid = escape($menu->get(2), 'integer'); $img_per_site = $allgAr['gallery_imgs_per_site']; $img_per_line = $allgAr['gallery_imgs_per_line']; # zeige alle gallery if (empty($uid)) { $title = $allgAr['title'].' :: Users :: Gallery'; $hmenu = $extented_forum_menu.'<a class="smalfont" href="?user">Users</a><b> » </b>Gallery'.$extented_forum_menu_sufix; $design = new design ( $title , $hmenu, 1, 'forum/index.htm' ); $design->header(); $i = 0; $class = 'Cmite'; $x = ''; if (loggedin()) { $x .= '<a href="index.php?user-usergallery-'.$_SESSION['authid'].'">Meine Gallery</a><br /><br />'; } $erg = db_query("SELECT uid, prefix_user.name as uname, COUNT as anz FROM prefix_usergallery LEFT JOIN prefix_user ON prefix_usergallery.uid = prefix_user.id GROUP BY uid, uname ORDER BY anz DESC" ;
while ($r = db_fetch_assoc($erg)) { $class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' ); $x .= '<div class="'.$class.'" style="float: left; padding: 5px;"><a href="index.php?user-usergallery-'.$r['uid'].'">'.$r['uname'].'</a><br /><span class="smalfont">Anzahl Bilder: '.$r['anz'].'</span></a></div>'; if ( $i <> 0 AND ($i % 5 ) == 0 ) { $x .= '<br />'; } } $tpl = new tpl ( 'user/gallery'); $tpl->set_out('x',$x,4); $design->footer(); exit(); } # user gallery zeigen $uname = db_result(db_query("SELECT name FROM prefix_user WHERE id = ".$uid),0,0); $title = $allgAr['title'].' :: Users :: Gallery'; $hmenu = $extented_forum_menu.'<a class="smalfont" href="index.php?user">Users</a><b> » </b><a class="smalfont" href="?user-usergallery">Gallery</a><b> » </b>von '.$uname.$extented_forum_menu_sufix; $design = new design ( $title , $hmenu, 1, 'forum/index.htm' ); $design->header(); $tpl = new tpl ('user/gallery'); $tpl->set('uid', $uid); $tpl->set('uname', $uname); # bild loeschen... if ($menu->getA(4) == 'd' AND is_numeric($menu->getE(4)) AND loggedin() AND (is_siteadmin() OR $uid == $_SESSION['authid'])) { $delid = escape($menu->getE(4), 'integer'); $x = @db_result(db_query("SELECT endung FROM prefix_usergallery WHERE uid = ".$uid." AND id = ".$delid),0,0); if (!empty($x)) { @unlink ( 'include/images/usergallery/img_thumb_'.$delid.'.'.$x ); @unlink ( 'include/images/usergallery/img_'.$delid.'.'.$x ); @db_query("DELETE FROM prefix_usergallery WHERE uid = ".$uid." AND id = ".$delid); } } # bild hochladen if (is_writeable('include/images/usergallery') AND loggedin() AND $uid == $_SESSION['authid']) { require_once('include/includes/func/gallery.php'); $size = @getimagesize ($_FILES['file']['tmp_name']); if($size > "120000" {
$err[] = "Die Datei welche du hochladen willst, ist zu gross! Maximale Dateigrosse beträgt 15 KB!"; } if (!empty($_FILES['file']['name']) AND ($size[2] == 2 OR $size[2] == 3)) { $name = $_FILES['file']['name']; $tmp = explode('.',$name); $tm1 = count($tmp) -1; $endung = escape($tmp[$tm1], 'string'); unset($tmp[$tm1]); $name = escape(implode('',$tmp), 'string'); $besch = escape($_POST['text'], 'string'); $id = db_result(db_query("SHOW TABLE STATUS FROM `". DBDATE ."` LIKE 'prefix_usergallery'" ,0,'Auto_increment');
$bild_url = 'include/images/usergallery/img_'.$id.'.'.$endung; if (@move_uploaded_file ($_FILES['file']['tmp_name'], $bild_url)) { db_query("INSERT INTO prefix_usergallery (uid,name,endung,besch) VALUES (".$uid.",'".$name."','".$endung."','".$besch."')" ;
$bild_thumb = 'include/images/usergallery/img_thumb_'.$id.'.'.$endung; create_thumb ($bild_url, $bild_thumb, $allgAr['gallery_preview_width']); echo '<b>Datei '.$name.'.'.$endung.' erfolgreich hochgeladen</b><br />'; $page = $_SERVER["HTTP_HOST"]. dirname($_SERVER["SCRIPT_NAME"]); echo 'Bildlink: <a target="_blank" href="http://'.$page.'/'.$bild_url.'">http://'.$page.'/'.$bild_url.'</a><br />'; echo 'Oder klein: <a target="_blank" href="http://'.$page.'/'.$bild_thumb.'">http://'.$page.'/'.$bild_thumb.'</a><br /><br />'; } } } # bilder abfragen $limit = $img_per_site; $page = ($menu->getA(3) == 'p' ? $menu->getE(3) : 1 ); $MPL = db_make_sites ($page , '' , $limit , 'index.php?user-usergallery-'.$uid , "usergallery WHERE uid = ".$uid); $anfang = ($page - 1) * $limit; $erg = db_query("SELECT name, besch, endung, id FROM prefix_usergallery WHERE uid = ".$uid." ORDER BY id DESC LIMIT ".$anfang.",".$limit); $tpl->set('imgperline', $allgAr['gallery_imgs_per_line']); $tpl->set('MPL',$MPL); $tpl->out(0); $class = 'Cnorm'; $i = 0; if ( db_num_rows($erg) > 0 ) { while($row = db_fetch_assoc($erg) ) { $class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' ); $row['class'] = $class; $row['besch'] = unescape($row['besch']); if (loggedin() AND (is_siteadmin() OR $uid == $_SESSION['authid'])) { $row['besch'] .= '<a href="index.php?user-usergallery-'.$uid.'-p'.$page.'-d'.$row['id'].'"><img src="include/images/icons/del.gif" border="0" alt="löschen" title="löschen" /></a>'; } $row['width'] = round( 100 / $img_per_line ); if ( $i <> 0 AND ($i % $img_per_line ) == 0 ) { echo '</tr><tr>'; } $tpl->set_ar_out($row,1); $i++; } if ( $i % $img_per_line <> 0 ) { $anzahl = $img_per_line - ($i % $img_per_line); for($x=1;$x<=$anzahl;$x++){ echo '<td class="'.$class.'"></td>'; } } } $tpl->out(2); # bilder abfragen # bild hochladen if (is_writeable('include/images/usergallery') AND loggedin() AND $uid == $_SESSION['authid']) { $tpl->out(3); } $design->footer(); ?> |
||
| Mairu Coder
Posts: 12770 |
So sollte es gehen include/contents/user/usergallery.php
<?php
# Copyright by: Manuel
# Support: www.ilch.de
defined ('main') or die ( 'no direct access' );
if ($allgAr['forum_usergallery'] == 0) { exit(); }
$uid = escape($menu->get(2), 'integer');
$img_per_site = $allgAr['gallery_imgs_per_site'];
$img_per_line = $allgAr['gallery_imgs_per_line'];
# zeige alle gallery
if (empty($uid)) {
$title = $allgAr['title'].' :: Users :: Gallery';
$hmenu = $extented_forum_menu.'<a class="smalfont" href="index.php?user">Users</a><b> » </b>Gallery'.$extented_forum_menu_sufix;
$design = new design ( $title , $hmenu);
$design->header();
$i = 0;
$class = 'Cmite';
$x = '';
if (loggedin()) {
$x .= '<a href="index.php?user-usergallery-'.$_SESSION['authid'].'">Meine Gallery</a><br /><br />';
}
$erg = db_query("SELECT uid, prefix_user.name as uname, COUNT(*) as anz FROM prefix_usergallery LEFT JOIN prefix_user ON prefix_usergallery.uid = prefix_user.id GROUP BY uid, uname ORDER BY anz DESC");
while ($r = db_fetch_assoc($erg)) {
$class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
$x .= '<div class="'.$class.'" style="float: left; padding: 5px;"><a href="index.php?user-usergallery-'.$r['uid'].'">'.$r['uname'].'</a><br /><span class="smalfont">Anzahl Bilder: '.$r['anz'].'</span></a></div>';
if ( $i <> 0 AND ($i % 5 ) == 0 ) { $x .= '<br />'; }
}
$tpl = new tpl ( 'user/gallery');
$tpl->set_out('x',$x,4);
$design->footer();
exit();
}
# user gallery zeigen
$uname = db_result(db_query("SELECT name FROM prefix_user WHERE id = ".$uid),0,0);
$title = $allgAr['title'].' :: Users :: Gallery';
$hmenu = $extented_forum_menu.'<a class="smalfont" href="index.php?user">Users</a><b> » </b><a class="smalfont" href="index.php?user-usergallery">Gallery</a><b> » </b>von '.$uname.$extented_forum_menu_sufix;
$design = new design ( $title , $hmenu );
$design->header();
$tpl = new tpl ('user/gallery');
$tpl->set('uid', $uid);
$tpl->set('uname', $uname);
# bild loeschen...
if ($menu->getA(4) == 'd' AND is_numeric($menu->getE(4)) AND loggedin() AND (is_siteadmin() OR $uid == $_SESSION['authid'])) {
$delid = escape($menu->getE(4), 'integer');
$x = @db_result(db_query("SELECT endung FROM prefix_usergallery WHERE uid = ".$uid." AND id = ".$delid),0,0);
if (!empty($x)) {
@unlink ( 'include/images/usergallery/img_thumb_'.$delid.'.'.$x );
@unlink ( 'include/images/usergallery/img_'.$delid.'.'.$x );
@db_query("DELETE FROM prefix_usergallery WHERE uid = ".$uid." AND id = ".$delid);
}
}
# bild hochladen
$maxsize = 60; //Maximale Größe in KB
if (is_writeable('include/images/usergallery') AND loggedin() AND $uid == $_SESSION['authid']) {
require_once('include/includes/func/gallery.php');
$size = @getimagesize ($_FILES['file']['tmp_name']);
$fsize = $_FILES['file']['size'];
$fende = preg_replace("/.+\.([a-zA-Z]+)$/", "\\1", $_FILES['file']['name']);
if (!empty($_FILES['file']['name']) AND $size[0] > 10 AND $size[1] > 10 AND ($size[2] == 2 OR $size[2] == 3 OR $size[2] == 1) AND ($fende == 'gif' OR $fende == 'jpg' OR $fende == 'jpeg' OR $fende == 'png')) {
if ($_FILES['file']['size'] > $maxsize * 1024) echo "Bild darf nur $maxsize KB groß sein<br />";
else {
$name = $_FILES['file']['name'];
$tmp = explode('.',$name);
$tm1 = count($tmp) -1;
$endung = escape($tmp[$tm1], 'string');
unset($tmp[$tm1]);
$name = escape(implode('',$tmp), 'string');
$besch = escape($_POST['text'], 'string');
$id = db_result(db_query("SHOW TABLE STATUS FROM `". DBDATE ."` LIKE 'prefix_usergallery'"),0,'Auto_increment');
$bild_url = 'include/images/usergallery/img_'.$id.'.'.$endung;
if (@move_uploaded_file ($_FILES['file']['tmp_name'], $bild_url)) {
db_query("INSERT INTO prefix_usergallery (uid,name,endung,besch) VALUES (".$uid.",'".$name."','".$endung."','".$besch."')");
$bild_thumb = 'include/images/usergallery/img_thumb_'.$id.'.'.$endung;
create_thumb ($bild_url, $bild_thumb, $allgAr['gallery_preview_width']);
echo '<b>Datei '.$name.'.'.$endung.' erfolgreich hochgeladen</b><br />';
$page = $_SERVER["HTTP_HOST"]. dirname($_SERVER["SCRIPT_NAME"]);
echo 'Bildlink: <a target="_blank" href="http://'.$page.'/'.$bild_url.'">http://'.$page.'/'.$bild_url.'</a><br />';
echo 'Oder klein: <a target="_blank" href="http://'.$page.'/'.$bild_thumb.'">http://'.$page.'/'.$bild_thumb.'</a><br /><br />';
}
}
}
}
# bilder abfragen
$limit = $img_per_site;
$page = ($menu->getA(3) == 'p' ? $menu->getE(3) : 1 );
$MPL = db_make_sites ($page , '' , $limit , 'index.php?user-usergallery-'.$uid , "usergallery WHERE uid = ".$uid);
$anfang = ($page - 1) * $limit;
$erg = db_query("SELECT name, besch, endung, id FROM prefix_usergallery WHERE uid = ".$uid." ORDER BY id DESC LIMIT ".$anfang.",".$limit);
$tpl->set('imgperline', $allgAr['gallery_imgs_per_line']);
$tpl->set('MPL',$MPL);
$tpl->out(0); $class = 'Cnorm';
$i = 0;
if ( db_num_rows($erg) > 0 ) {
while($row = db_fetch_assoc($erg) ) {
$class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
$row['class'] = $class;
$row['besch'] = unescape($row['besch']);
if (loggedin() AND (is_siteadmin() OR $uid == $_SESSION['authid'])) {
$row['besch'] .= '<a href="index.php?user-usergallery-'.$uid.'-p'.$page.'-d'.$row['id'].'"><img src="include/images/icons/del.gif" border="0" alt="löschen" title="löschen" /></a>';
}
$row['width'] = round( 100 / $img_per_line );
if ( $i <> 0 AND ($i % $img_per_line ) == 0 ) { echo '</tr><tr>'; }
$tpl->set_ar_out($row,1);
$i++;
}
if ( $i % $img_per_line <> 0 ) {
$anzahl = $img_per_line - ($i % $img_per_line);
for($x=1;$x<=$anzahl;$x++){
echo '<td class="'.$class.'"></td>';
}
}
}
$tpl->out(2);
# bilder abfragen
# bild hochladen
$maximgs = 30; //Maximale Anzahl von Bildern
$count = db_result(db_query("SELECT COUNT(*) FROM `prefix_usergallery` WHERE uid = ".$_SESSION['authid']),0);
if ($count >= $maximgs) echo "Es können maximal $maximgs Bilder hochgeladen werden";
elseif (is_writeable('include/images/usergallery') AND loggedin() AND $uid == $_SESSION['authid']) {
$tpl->out(3);
}
$design->footer();
?>
Man kann die Größe und die Anzahl an den entsprechenden Stellen (Zeile 65 + Zeile 133) anpassen. *Updated für Version > 1.1C *Updated sollte jetzt sicher sein Zuletzt modifiziert von Mairu am 16.03.2007 - 12:42:36 Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite |
||
| mv-tuning Mitglied
Posts: 11 |
cool, danke. aber hier hat er noch nen kleinen fehler
zeile 51: $tpl->set('uid',????y?c??I?I????? |
||
| Mairu Coder
Posts: 12770 |
Also bei mir ging es, und die Zeile 51 sieht auch richtig aus und daran hab ich außerdem nix geändert.
Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite |
||
| mv-tuning Mitglied
Posts: 11 |
ja alles klar. fehler lag bei mir. durch copy und paste haben sich zeichen eingeschlichen.
Aber DANKE, jetzt junzt es. zumindest die KB begrenzung. das andere muß ich erst noch testen. aber denke mal das geht auch. nochmal DANKE! |
||
| FrEEd Mitglied
Posts: 64 |
helloooo!
und in welche datei soll ich den obigen code einfügen? für die nachwelt: den code in der datei: $design = new design ( $title , $hmenu, 1, 'forum/index.htm' ); durch den ersetzen: $design = new design ( $title , $hmenu); mfg Zuletzt modifiziert von FrEEd am 21.02.2007 - 20:29:54 www.Alte-Zocker.de Script Version: 1.1 E |
||
| assault Hall Of Fame
Posts: 2928 |
ersetzten....in include/contents/user/usergallery.php
|
||
| FrEEd Mitglied
Posts: 64 |
hatt alles priema gefunzt.
THX mfg Zuletzt modifiziert von FrEEd am 23.06.2007 - 11:26:20 www.Alte-Zocker.de Script Version: 1.1 E |
||
| Mairu Coder
Posts: 12770 |
Hab es mal aktualisiert.
Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite |
||
| FrEEd Mitglied
Posts: 64 |
kann ich die reienfolge so einrichten daß das zuerst upgeloadetet bild auch das erste in der gallery ist
und das zuletzt upgeloadete immer hinten bzw unten ist? www.Alte-Zocker.de Script Version: 1.1 E |
||
| Mairu Coder
Posts: 12770 |
Sicher dafür musst du nur in der Abfrage das DESC hinter id in der Abfrage löschen.
Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite |
||
| FrEEd Mitglied
Posts: 64 |
ok hat gefunzt
hier mal die zeile in der man einfach das DESC löscht. $erg = db_query("SELECT name, besch, endung, id FROM prefix_usergallery WHERE uid = ".$uid." ORDER BY id DESC LIMIT ".$anfang.",".$limit);
thx mfg www.Alte-Zocker.de Script Version: 1.1 E |
||
| Alex1631 Mitglied
Posts: 8 |
Kann man die Anzahl der bilder in einer Reihe auf 3 Begrenzen? Also nach dem 3. Bild soll das nächste Bild in einer neuen Zeile stehen.
Danke im voraus. Edit: Habe es selbst herausgefunden. Im Adminmenü under Konfiguration und Galleryoptionen kann man Anzahl pro Reihe und Anzahl pro Seite einstellen. Gruß Alex Zuletzt modifiziert von Alex1631 am 22.08.2007 - 13:05:18 |
||
| Intra Mitglied
Posts: 7 |
Habe zu dem Thema auch eine Frage. In dem Code den Mairu gepostet hat, ist da noch eine Vorgabe der Größe des Bildes drin außer:
# bild hochladen $maxsize = 60; //Maximale Größe in KB ??? Habe bei mir platz auf dem Server und hätte nichts dagegen wenn die Bilder bis 3263 x 2448 und 3MB gehen würden, nur leider funzt dabei der Code nicht. Habe bei maxsize schon 3000 eingegeben aber trotzdem klappt es nicht. Würde mich freuen wenn mir da jemand helfen könnte Gruß Mark |
||
| Mairu Coder
Posts: 12770 |
Was funktioniert denn nicht?
Meist sind die Uploadgrößen vom Server her beschränkt, wie sie auf deinem Server eingestellt sind, kannst du im Adminbereich bei Serverkonfiguration nachschauen. Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite |
||
| ChrisMX112 Mitglied
Posts: 8 |
Hi,
kann man zu dem Script noch was hinzufügen bzw sichtbar machen für die User. Das Sie wissen wie groß max. das Bild sein darf zum Hochladen? Mfg ChrisMX |
||
| Mairu Coder
Posts: 12770 |
Das kannst du ja eigentlich im Template einfach hinschreiben?
Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite |
||
| ChrisMX112 Mitglied
Posts: 8 |
Hi,
so ich habe es irgendwie zum laufen bekommen. Nun folgende Frage habe ich noch zur Upload sperre! Wenn ich ein zu große Datei (<250 kb) hochlade. Ich sage mal so um 500 -600 kb. Dann bekomme ich den satz wie im Skript (echo "Bild darf nur $maxsize KB groß sein<br />"; ) so weit ist alles in ordnung. So wenn ich jetzt eine noch größere Datei von sage mal so um 1500 oder 2000 kb versuche hochzuladen. Dann kommt bei mir nicht dieser Satz. Stimmt da was nicht mit der Abfrage? Hier mal mein CODE <?php
# Copyright by: Manuel
# Support: www.ilch.de
defined ('main') or die ( 'no direct access' );
if ($allgAr['forum_usergallery'] == 0) { exit(); }
$uid = escape($menu->get(2), 'integer');
$img_per_site = $allgAr['gallery_imgs_per_site'];
$img_per_line = $allgAr['gallery_imgs_per_line'];
# zeige alle gallery
if (empty($uid)) {
$title = $allgAr['title'].' :: Users :: Gallery';
$hmenu = $extented_forum_menu.'<a class="smalfont" href="index.php?user">Users</a><b> » </b>Gallery'.$extented_forum_menu_sufix;
$design = new design ( $title , $hmenu);
$design->header();
$i = 0;
$class = 'Cmite';
$x = '';
if (loggedin()) {
$x .= '<a href="index.php?user-usergallery-'.$_SESSION['authid'].'">Meine Gallery</a><br /><br />';
}
$erg = db_query("SELECT uid, prefix_user.name as uname, COUNT(*) as anz FROM prefix_usergallery LEFT JOIN prefix_user ON prefix_usergallery.uid = prefix_user.id GROUP BY uid, uname ORDER BY anz DESC");
while ($r = db_fetch_assoc($erg)) {
$class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
$x .= '<div class="'.$class.'" style="float: left; padding: 5px;"><a href="index.php?user-usergallery-'.$r['uid'].'">'.$r['uname'].'</a><br /><span class="smalfont">Anzahl Bilder: '.$r['anz'].'</span></a></div>';
if ( $i <> 0 AND ($i % 5 ) == 0 ) { $x .= '<br />'; }
}
$tpl = new tpl ( 'user/gallery');
$tpl->set_out('x',$x,4);
$design->footer();
exit();
}
# user gallery zeigen
$uname = db_result(db_query("SELECT name FROM prefix_user WHERE id = ".$uid),0,0);
$title = $allgAr['title'].' :: Users :: Gallery';
$hmenu = $extented_forum_menu.'<a class="smalfont" href="index.php?user">Users</a><b> » </b><a class="smalfont" href="?user-usergallery">Gallery</a><b> » </b>von '.$uname.$extented_forum_menu_sufix;
$design = new design ( $title , $hmenu, 1);
$design->header();
$tpl = new tpl ('user/gallery');
$tpl->set('uid', $uid);
$tpl->set('uname', $uname);
# bild loeschen...
if ($menu->getA(4) == 'd' AND is_numeric($menu->getE(4)) AND loggedin() AND (is_siteadmin() OR $uid == $_SESSION['authid'])) {
$delid = escape($menu->getE(4), 'integer');
$x = @db_result(db_query("SELECT endung FROM prefix_usergallery WHERE uid = ".$uid." AND id = ".$delid),0,0);
if (!empty($x)) {
@unlink ( 'include/images/usergallery/img_thumb_'.$delid.'.'.$x );
@unlink ( 'include/images/usergallery/img_'.$delid.'.'.$x );
@db_query("DELETE FROM prefix_usergallery WHERE uid = ".$uid." AND id = ".$delid);
}
}
# bild hochladen
$maxsize = 250; //Maximale Größe in KB
if (is_writeable('include/images/usergallery') AND loggedin() AND $uid == $_SESSION['authid']) {
require_once('include/includes/func/gallery.php');
$size = @getimagesize ($_FILES['file']['tmp_name']);
$fsize = $_FILES['file']['size'];
$fende = preg_replace("/.+\.([a-zA-Z]+)$/", "\\1", $_FILES['file']['name']);
if (!empty($_FILES['file']['name']) AND $size[0] > 10 AND $size[1] > 10 AND ($size[2] == 2 OR $size[2] == 3 OR $size[2] == 1) AND ($fende == 'gif' OR $fende == 'jpg' OR $fende == 'jpeg' OR $fende == 'png')) {
if ($_FILES['file']['size'] > $maxsize * 1024) echo "Bild darf nur $maxsize KB groß sein<br />";
else {
$name = $_FILES['file']['name'];
$tmp = explode('.',$name);
$tm1 = count($tmp) -1;
$endung = escape($tmp[$tm1], 'string');
unset($tmp[$tm1]);
$name = escape(implode('',$tmp), 'string');
$besch = escape($_POST['text'], 'string');
$id = db_result(db_query("SHOW TABLE STATUS FROM `". DBDATE ."` LIKE 'prefix_usergallery'"),0,'Auto_increment');
$bild_url = 'include/images/usergallery/img_'.$id.'.'.$endung;
if (@move_uploaded_file ($_FILES['file']['tmp_name'], $bild_url)) {
@chmod($bild_url, 0777);
db_query("INSERT INTO prefix_usergallery (uid,name,endung,besch) VALUES (".$uid.",'".$name."','".$endung."','".$besch."')");
$bild_thumb = 'include/images/usergallery/img_thumb_'.$id.'.'.$endung;
create_thumb ($bild_url, $bild_thumb, $allgAr['gallery_preview_width']);
@chmod($bild_thumb, 0777);
echo '<b>Die Datei '.$name.'.'.$endung.' wurde erfolgreich hochgeladen.</b><br />';
$page = $_SERVER["HTTP_HOST"]. dirname($_SERVER["SCRIPT_NAME"]);
echo 'Bildlink: <a target="_blank" href="http://'.$page.'/'.$bild_url.'">http://'.$page.'/'.$bild_url.'</a><br />';
echo 'Oder klein: <a target="_blank" href="http://'.$page.'/'.$bild_thumb.'">http://'.$page.'/'.$bild_thumb.'</a><br /><br />';
}
}
}
}
# bilder abfragen
$limit = $img_per_site;
$page = ($menu->getA(3) == 'p' ? $menu->getE(3) : 1 );
$MPL = db_make_sites ($page , '' , $limit , 'index.php?user-usergallery-'.$uid , "usergallery WHERE uid = ".$uid);
$anfang = ($page - 1) * $limit;
$erg = db_query("SELECT name, besch, endung, id FROM prefix_usergallery WHERE uid = ".$uid." ORDER BY id DESC LIMIT ".$anfang.",".$limit);
$tpl->set('imgperline', $allgAr['gallery_imgs_per_line']);
$tpl->set('MPL',$MPL);
$tpl->out(0); $class = 'Cnorm';
$i = 0;
if ( db_num_rows($erg) > 0 ) {
while($row = db_fetch_assoc($erg) ) {
$class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
$row['class'] = $class;
$row['besch'] = unescape($row['besch']);
if (loggedin() AND (is_siteadmin() OR $uid == $_SESSION['authid'])) {
$row['besch'] .= '<a href="index.php?user-usergallery-'.$uid.'-p'.$page.'-d'.$row['id'].'"><img src="include/images/icons/del.gif" border="0" alt="löschen" title="löschen" /></a>';
}
$row['width'] = round( 100 / $img_per_line );
if ( $i <> 0 AND ($i % $img_per_line ) == 0 ) { echo '</tr><tr>'; }
$tpl->set_ar_out($row,1);
$i++;
}
if ( $i % $img_per_line <> 0 ) {
$anzahl = $img_per_line - ($i % $img_per_line);
for($x=1;$x<=$anzahl;$x++){
echo '<td class="'.$class.'"></td>';
}
}
}
$tpl->out(2);
# bilder abfragen
# bild hochladen
$maximgs = 3; //Maximale Anzahl von Bildern
$count = db_result(db_query("SELECT COUNT(*) FROM `prefix_usergallery` WHERE uid = ".$_SESSION['authid']),0);
if ($count >= $maximgs) echo "Die maximale Bilder Anzahl in der Usergallery ist erreicht. (Max. $maximgs) </br>Löschen Sie Bilder in Ihrer Usergallery um wieder Bilder hochladen zu dürfen.";
elseif (is_writeable('include/images/usergallery') AND loggedin() AND $uid == $_SESSION['authid']) {
$tpl->out(3);
}
$design->footer();
?>
Mfg ChrisMX |
||
| J.D. Mitglied
Posts: 12 |
hi leute also habe den quellcode von Mairu genommen...
die abfrage mit # bild hochladen $maxsize = 100; //Maximale Größe in KB funktioniert
nun möcht ich gerne die maximale breite der Bilder begrenzen z.B. auf 600px. sry bin php noob.... verwendete ilch version 1.1 Update: M könnte mir da jemand helfen.... wenn das gehen würde und es fehler frei funtzt würde ich es zum download ihr bei euch eintagen (html bissel angepasst diesbezüglich) danke vorab & mfg J.D. Zuletzt modifiziert von J.D. am 22.05.2010 - 22:08:16 Wir glauben, Erfahrungen zu machen, aber die Erfahrungen machen uns. | Eugène Ionesco |
||
| Mairu Coder
Posts: 12770 |
Wenn du in Zeile 72 hinter AND $size[0] > 10 noch AND $size[0] <= 600 setzt, sollte es passen.
Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite |
||
| J.D. Mitglied
Posts: 12 |
1000 Dank, es scheint zu funtzen...
kleine info das das bild zu breit ist bekomm ich glaub ich allein hin... danke nochmal Mairu Wir glauben, Erfahrungen zu machen, aber die Erfahrungen machen uns. | Eugène Ionesco |
||
| whazza Mitglied
Posts: 1113 |
Ist es auch möglich das für Admins keine Beschränkung gibt?
--------------------------------------------------- Klein Neue Ansicht |
||
| webork Mitglied
Posts: 229 |
Hallo Ilcher,
habe Mairus Code probiert selbst reinzubasteln aber ich bekomme es nicht hin. Irgendwas mach ich dauernd falsch. Würde sich wer meiner erbarmen und mir helfen beim Code für die Größe und Anzahl der Bilder ? Ich habe bereits eine umgestaltete Usergallerie mit Kommentarfunktion darum scheint es nich so einfach zu sein. <?php
# Copyright by: Manuel
# Support: www.ilch.de
# Kommentar Mod by OloX
# www.dms-gaming.com [+] mairu.ilch.net
defined ('main') or die ( 'no direct access' );
if ($allgAr['forum_usergallery'] == 0) { exit(); }
$uid = escape($menu->get(2), 'integer');
$img_per_site = $allgAr['gallery_imgs_per_site'];
$img_per_line = $allgAr['gallery_imgs_per_line'];
# zeige alle gallery
if (empty($uid)) {
$title = $allgAr['title'].' :: Users :: Gallery';
$hmenu = $extented_forum_menu.'<a class="smalfont" href="?user">Users</a><b> » </b>Gallery'.$extented_forum_menu_sufix;
$design = new design ( $title , $hmenu, 1);
$design->header();
$i = 0;
$class = 'Cmite';
$x = '';
if (loggedin()) {
$x .= '<br><br><a href="index.php?user-usergallery-'.$_SESSION['authid'].'"><b> <p align="center"><a href="index.php?news"><b></b><center><div style="border:0px #140905 solid;background:#140905;color:#DFC49B;padding:2px;"><font size="-2"><a href="/index.php?user-usergallery"><b><font color="#FAECD1"></b>Usergallerie Übersicht</font></a> </font></font></div></center></font></a></p> ';
}
$erg = db_query("SELECT uid, prefix_user.name as uname, COUNT(*) as anz FROM prefix_usergallery LEFT JOIN prefix_user ON prefix_usergallery.uid = prefix_user.id GROUP BY uid, uname ORDER BY anz DESC");
while ($r = db_fetch_assoc($erg)) {
$class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
$x .= '<center> <div class="'.$class.'" style="float:left; padding: 10px; width:96px; margin:2 auto;"><a href="index.php?user-usergallery-'.$r['uid'].'"><b>'.$r['uname'].'</b><br /><span class="smalfont">Bildergallerie <br>Anzahl: <b>'.$r['anz'].'</b></span></a></a></div></div>';
if ( $i <> 0 AND ($i % 5 ) == 0 ) { $x .= '<br />'; }
}
$tpl = new tpl ( 'user/gallery');
$tpl->set_out('x',$x,4);
$design->footer();
exit();
}
# user gallery zeigen
$uname = db_result(db_query("SELECT name FROM prefix_user WHERE id = ".$uid),0,0);
$title = $allgAr['title'].' :: Users :: Gallery';
$hmenu = $extented_forum_menu.'<a class="smalfont" href="index.php?user">Users</a><b> » </b><a class="smalfont" href="?user-usergallery">Gallery</a><b> » </b>von <a class="smalfont" href="?user-usergallery-'.$uid.'">'.$uname.'</a>'.$extented_forum_menu_sufix;
$design = new design ( $title , $hmenu, 1);
$design->header();
$tpl = new tpl ('user/gallery');
$tpl->set('uid', $uid);
$tpl->set('uname', $uname);
# bild loeschen...
if ($menu->getA(4) == 'd' AND is_numeric($menu->getE(4)) AND loggedin() AND (is_siteadmin() OR $uid == $_SESSION['authid'])) {
$delid = escape($menu->getE(4), 'integer');
$x = @db_result(db_query("SELECT endung FROM prefix_usergallery WHERE uid = ".$uid." AND id = ".$delid),0,0);
if (!empty($x)) {
@unlink ( 'include/images/usergallery/img_thumb_'.$delid.'.'.$x );
@unlink ( 'include/images/usergallery/img_'.$delid.'.'.$x );
@unlink ( 'include/images/usergallery/img_norm'.$delid.'.'.$x );
@db_query("DELETE FROM prefix_usergallery WHERE uid = ".$uid." AND id = ".$delid);
@db_query("DELETE FROM prefix_koms WHERE uid = ".$delid." AND cat = 'USERGIMG'");
}
}
# bild hochladen
if (!empty($_FILES['file']['name']) AND is_writeable('include/images/usergallery') AND loggedin() AND $uid == $_SESSION['authid'] AND substr ( ic_mime_type($_FILES['file']['tmp_name']) , 0 , 6 ) == 'image/') {
require_once('include/includes/func/gallery.php');
$size = @getimagesize ($_FILES['file']['tmp_name']);
$fende = preg_replace("/.+\.([a-zA-Z]+)$/", "\\1", $_FILES['file']['name']);
$fende = strtolower($fende);
if (!empty($_FILES['file']['name']) AND $size[0] > 10 AND $size[1] > 10 AND ($size[2] == 2 OR $size[2] == 3 OR $size[2] == 1) AND ($fende == 'gif' OR $fende == 'jpg' OR $fende == 'jpeg' OR $fende == 'png')) {
$name = $_FILES['file']['name'];
$tmp = explode('.',$name);
$tm1 = count($tmp) -1;
$endung = escape($tmp[$tm1], 'string');
unset($tmp[$tm1]);
$name = escape(implode('',$tmp), 'string');
$besch = escape($_POST['text'], 'string');
$id = db_result(db_query("SHOW TABLE STATUS FROM `". DBDATE ."` LIKE 'prefix_usergallery'"),0,'Auto_increment');
$bild_url = 'include/images/usergallery/img_'.$id.'.'.$endung;
if (@move_uploaded_file ($_FILES['file']['tmp_name'], $bild_url)) {
@chmod($bild_url, 0777);
db_query("INSERT INTO prefix_usergallery (uid,name,endung,besch) VALUES (".$uid.",'".$name."','".$endung."','".$besch."')");
$bild_thumb = 'include/images/usergallery/img_thumb_'.$id.'.'.$endung;
$bild_norm = 'include/images/usergallery/img_norm_'.$id.'.'.$endung;
create_thumb ($bild_url, $bild_norm , ($allgAr['gallery_normal_width']-64));
create_thumb ($bild_url, $bild_thumb, $allgAr['gallery_preview_width']);
@chmod($bild_thumb, 0777);
@chmod($bild_norm, 0777);
echo '<div style="border:0px #140905 solid;background:#F9E9CA;color:#DFC49B;padding:5px;"><b><font color="#005E00">Bild '.$name.'.'.$endung.' erfolgreich hochgeladen</font></div></b>
<br>';
$page = $_SERVER["HTTP_HOST"]. dirname($_SERVER["SCRIPT_NAME"]);
echo '<div style="border:0px #140905 solid;background:#140905;color:#DFC49B;padding:5px;"><b>Bildlink: </b><a target="_blank" href="http://'.$page.'/'.$bild_url.'"><font color="#F2CE8A">http://'.$page.'/'.$bild_url.'</font></a><br />';
echo '<b>Oder klein: </b><a target="_blank" href="http://'.$page.'/'.$bild_thumb.'"><font color="#F2CE8A">http://'.$page.'/'.$bild_thumb.'</font></a></div><br>';
}
}
}
if ($menu->get(3) == 'show' && is_numeric($menu->get(4)) ) {
$picid = escape($menu->get(4), 'integer');
$q = db_query("SELECT `a`.`name`, `a`.`besch`, `a`.`endung`, `a`.`id` AS `id`, `a`.`uid` AS `uid`, `b`.`name` AS `uname`
FROM `prefix_usergallery` AS `a`
LEFT JOIN `prefix_user` `b` ON `a`.`uid` = `b`.`id`
WHERE `a`.`id` = ".$picid);
if ( db_num_rows($q) > 0 ) {
$r = db_fetch_assoc($q);
if ($r['uid'] == $menu->get(2)) {
#comment eintragen
$insertmsg = '';
if ((loggedin() or isset($_POST['name'])) and !empty($_POST['text']) and $antispam = chk_antispam('usergallery')) {
if (loggedin()) {
$name = $_SESSION['authname'];
} else {
$name = escape($_POST['name'],'string');
if (db_count_query('SELECT COUNT(*) FROM `prefix_user` WHERE `name` = "'.$name.'"')) {
$insertmsg .= 'Der Name ist bereits für einen registrierten User vergeben';
}
}
if (empty($insertmsg)) {
$text = escape($_POST['text'],'string');
db_query("INSERT INTO `prefix_koms` (`name`,`text`,`uid`,`cat`) VALUES ('".$name."','".$text."',".$r['id'].",'USERGIMG')");
if ($r['uid'] != $_SESSION['authid'] && true) {
$host = '[url]http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'].'?user-usergallery-'.$r['uid'].'-show-'.$r['id'].'[/url]';
$text = "Hallo %s!\n\n %s hat einen Kommentar zu einem Bild ( %s ) geschrieben.\nUm direkt zu dem Foto zu kommen, nutze einfach den unten stehenden Link:\n%s\n\n Viel Spaß!";
$ttext = sprintf($text,$r['uname'],$_SESSION['authname'],$r['besch'],$host);
sendpm (1, $r['uid'], 'Neue Kommentare zu Deinen Bildern',$ttext, -1);
}
}
} elseif (isset($_POST['subugalkom']) and !$antispam) {
$insertmsg .= 'Falscher Antispam';
}
#comment loeschen
if (isset($_GET['delete']) && ( is_siteadmin() or $r['uid'] == $_SESSION['authid'] ) ) {
db_query("DELETE FROM `prefix_koms` WHERE `id` = ".escape($_GET['delete'], 'integer'));
}
#comment zeigen
if (!empty($insertmsg)) {
$insertmsg = '<span style="color:red;">'.$insertmsg.'</span><br />';
}
$pAr = array();
$picQ = db_query("SELECT `id` FROM `prefix_usergallery` WHERE `uid` = ".$r['uid']." ORDER BY `id` DESC");
while ($picr = db_fetch_assoc($picQ)) {
$pAr[] = $picr['id'];
}
$picArKey = array_search($r['id'], $pAr);
$prevPicId = ($picArKey > 0) ? $pAr[$picArKey - 1] : false;
$nextPicId = ($picArKey < (count($pAr) - 1)) ? $pAr[$picArKey + 1] : false;
$prevLink = !is_bool($prevPicId) ? '<a href="index.php?user-usergallery-'.$r['uid'].'-show-'.$prevPicId.'">« Vorheriges Bild</a>' : '';
$nextLink = !is_bool($nextPicId) ? '<a href="index.php?user-usergallery-'.$r['uid'].'-show-'.$nextPicId.'">Nächstes Bild »</a>' : '';
$path = 'include/images/usergallery/';
$exNorm = ( file_exists($path.'img_norm_'.$r['id'].'.'.$r['endung']) ? true : false );
$ar = array (
'besch' => $r['besch'],
'endung' => $r['endung'],
'img' => ( $exNorm ? 'img_norm_'.$r['id'].'.'.$r['endung'] : 'img_'.$r['id'].'.'.$r['endung']),
'style' => ( $exNorm ? '' : ' style="width:'. ($allgAr['gallery_normal_width']-64) .'px;"'),
'id' => $r['id'],
'userid' => $r['uid'],
'uname' => $_SESSION['authname'],
'antispam' => get_antispam('usergallery', 0),
'text' => ( isset($_POST['text']) && !$antispam ? escape($_POST['text'],'string') : '' ),
'insertmsg' => $insertmsg,
'nextpic' => $nextLink,
'prevpic' => $prevLink
);
$tpl->set_ar_out($ar,5);
$class = 'Cnorm';
$erg = db_query("SELECT `id`, `name`, `text` FROM `prefix_koms` WHERE `uid` = ".$r['id']." AND `cat` = 'USERGIMG' ORDER BY `id` DESC");
while ($row = db_fetch_assoc($erg)) {
$class = ($class == 'Cmite' ? 'Cnorm' : 'Cmite');
$row['class'] = $class;
$row['text'] = bbcode ($row['text']);
if (is_siteadmin() OR $r['uid'] == $_SESSION['authid']) {
$row['text'] .= '<a href="index.php?user-usergallery-'.$r['uid'].'-show-'.$r['id'].'&delete='.$row['id'].'"><img src="include/images/icons/del.gif" border="0" title="löschen" alt="löschen" /></a>';
}
$tpl->set_ar_out($row,6);
}
$tpl->out(7);
} else {
echo 'Es ist ein Fehler aufgetreten.';
}
} else {
echo 'Es ist ein Fehler aufgetreten.';
}
} else {
# bilder abfragen
$limit = $img_per_site;
$page = ($menu->getA(3) == 'p' ? $menu->getE(3) : 1 );
$MPL = db_make_sites ($page , '' , $limit , 'index.php?user-usergallery-'.$uid , "usergallery WHERE uid = ".$uid);
$anfang = ($page - 1) * $limit;
$erg = db_query("SELECT `a`.*, `a`.`id` AS `id`, `a`.`uid` AS `picuid`, count(`b`.`id`) AS `comms`
FROM `prefix_usergallery` AS `a`
LEFT JOIN `prefix_koms` AS `b` ON `b`.`uid` = `a`.`id` AND `b`.`cat` = 'USERGIMG'
WHERE `a`.`uid` = ".$uid." GROUP BY `a`.`id`, `a`.`besch`, `a`.`name`
ORDER BY `a`.`id` DESC LIMIT ".$anfang.",".$limit);
$tpl->set('imgperline', $allgAr['gallery_imgs_per_line']);
$tpl->set('MPL',$MPL);
$tpl->out(0); $class = 'Cnorm';
$i = 0;
if ( db_num_rows($erg) > 0 ) {
while($row = db_fetch_assoc($erg) ) {
$class = ( $class == 'Cmite' ? 'Cnorm' : 'Cmite' );
$row['class'] = $class;
$row['besch'] = unescape($row['besch']);
if (loggedin() AND (is_siteadmin() OR $uid == $_SESSION['authid'])) {
$row['besch'] .= '<a href="index.php?user-usergallery-'.$uid.'-p'.$page.'-d'.$row['id'].'"><img src="include/images/icons/del.gif" border="0" alt="löschen" title="löschen" /></a>';
}
$row['width'] = round( 100 / $img_per_line );
if ( $i <> 0 AND ($i % $img_per_line ) == 0 ) { echo '</tr><tr>'; }
$tpl->set_ar_out($row,1);
$i++;
}
if ( $i % $img_per_line <> 0 ) {
$anzahl = $img_per_line - ($i % $img_per_line);
for($x=1;$x<=$anzahl;$x++){
echo '<td class="'.$class.'"></td>';
}
}
}
$tpl->out(2);
# bilder abfragen
echo '<br><div style="border:0px #140905 solid;background:#140905;color:#DFC49B;padding:5px;"><center><a href="index.php?user-usergallery"><b></b><font size="+1"><a href="/index.php?user-usergallery"><b><font color="#FAECD1"></b><b>Zur Bildergallerie</b></font></a></font></font></div></font></font></a></p></center>';
# bild hochladen
if (is_writeable('include/images/usergallery') AND loggedin() AND $uid == $_SESSION['authid']) {
$tpl->out(3);
}
}
$design->footer();
?>
Vielen dank für Hilfe |
||
| Lord|Schirmer Administrator
Posts: 4598 |
Zeile 73
if (!empty($_FILES['file']['name']) AND $size[0] > 10 AND $size[0] <= 600 AND $size[1] > 10 AND ($size[2] == 2 OR $size[2] == 3 OR $size[2] == 1) AND ($fende == 'gif' OR $fende == 'jpg' OR $fende == 'jpeg' OR $fende == 'png')) {"In mir schlummert ein Genie, leider wacht es nicht auf!" my portfolio | my community | important link |
||
| webork Mitglied
Posts: 229 |
Manche Bilder von Digi Cams werden nicht in der kleinen Übersicht gezeigt. Liegt das an dem Format oder muss ich zB um ein JPG oder JPEG erweitern ?
@Lord|Schirmer Danke für den Hinweis aber mir sagen die Zahlen im mom nich viel. <=600 ist das die Anzahl der erlaubten Bilder ? und wo ist das mit der Bildgröße ? Danke vielmals ![]() |
||
| Lord|Schirmer Administrator
Posts: 4598 |
$size[0] = Breite
$size[1] = Höhe <=600 also kleiner 600px Breite jpg oder jpeg beides wird unterstützt "In mir schlummert ein Genie, leider wacht es nicht auf!" my portfolio | my community | important link |
||
| [ 1 | 2 ] | [ Anmelden zum schreiben ] |