Author Topic: Suche Size Funktion in PHP  (Read 10214 times)

0 Members and 1 Guest are viewing this topic.

Offline ParaNike

  • Newbie
  • *
  • Posts: 26
    • View Profile
Suche Size Funktion in PHP
« on: March 23, 2003, 09:54:32 AM »
Ich brauche eine Funktion, mit der die große eines Bildes gelesen wird. Dann soll via if-Schleife eine festgelegt werden, wie das bild angezeigt wird. Also in etwa dann so:

if imagewidth < 300 then echo "width=100%"
else echo "width=300"

Also wenn ein Bild großer als 300 Pixel ist, dann wird es in der Anzeige verkleinert, damit die Bilder nicht größer als 300 Pixel angezeigt werden.
Wie aber kann ich die width eines Bildes auslesen???

Offline Jan

  • Administrator
  • 4images Guru
  • *****
  • Posts: 5.024
    • View Profile
    • 4images - Image Gallery Management System
Re: Suche Size Funktion in PHP
« Reply #1 on: March 23, 2003, 11:14:58 AM »
www.php.net/getimagesize

Quote from: ParaNike
Dann soll via if-Schleife eine festgelegt werden

http://www.dclp-faq.de/q/q-terminologie-if.html ;)

Jan
Your first three "must do" before you ask a question:
1. Forum rules
2. FAQ
3. Search

Offline ParaNike

  • Newbie
  • *
  • Posts: 26
    • View Profile
Suche Size Funktion in PHP
« Reply #2 on: March 23, 2003, 12:08:48 PM »
Supi!

Ein Problem hab ich noch. Diese Funktion soll dann immer in der Templatedatei jpg.html aufgerufen werden. Denn dadurch wird ja die Bildanzeige von den jpg Bildern gesteuert. Aber in dieser html Datei kann ich ja kein PHP schreiben, wie mache ich das dann?

Offline ParaNike

  • Newbie
  • *
  • Posts: 26
    • View Profile
Suche Size Funktion in PHP
« Reply #3 on: March 24, 2003, 10:45:57 AM »
Verdammt, ich bekomme das nicht hin! Irgendwie blicke ich da mit den ganzen Variablen nicht durch. Kennt sich nicht einer von euch da entsprechend aus, so dass er mir so eine Funktion schreiben kann? Das ist bestimmt total einfach, aber mir ist der Script zu komplex.

Das wäre supier toll!

Offline Jan

  • Administrator
  • 4images Guru
  • *****
  • Posts: 5.024
    • View Profile
    • 4images - Image Gallery Management System
Suche Size Funktion in PHP
« Reply #4 on: March 24, 2003, 03:14:44 PM »
Hast Du mal versucht es direkt ins Template zu setzen?
Einfacher PHP Code kann in den Templates ausgeführt werden.

Jan
Your first three "must do" before you ask a question:
1. Forum rules
2. FAQ
3. Search

Offline ParaNike

  • Newbie
  • *
  • Posts: 26
    • View Profile
Suche Size Funktion in PHP
« Reply #5 on: March 24, 2003, 07:33:27 PM »
Huch, tatsache, das geht! Ich dachte das geht nicht, weil es HTML sind!

Hab die Funktion fertig, funktioniert perfekt! Vielen Dank, Support ist echt super hier und der Macher des Scriptes ist mein persönlicher "Gott" :D :)

Offline Maweryk

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Suche Size Funktion in PHP
« Reply #6 on: March 25, 2003, 12:04:48 AM »
Hört sich interessant an.
Hast Du Zeit und Lust uns Deine fertige Funktion zur Verfügung zu stellen???

Danke und Gruß

Markus

Offline ParaNike

  • Newbie
  • *
  • Posts: 26
    • View Profile
Suche Size Funktion in PHP
« Reply #7 on: March 25, 2003, 02:11:39 PM »
Also ich kann es hier mal posten, ist sicher grottig vom Code her, aber meine PHP Kenntnisse sind noch sehr Elementar.

Erreicht wird mit der Funktion, dass Bilder, die eine Gewisse größe überschreiten (Bei mir 336 Pixel) immer das Layout sprengen und dann die Tabelle verbreitern. Deswegen wird mit der Funktion das Bild verkleinert dargestellt, wenn es höher oder breiter als 336 Pixel ist. Will man dann das ganze Bild in voller Größe sehen, so kann man drauf klicken und es wird voll angezeigt!

Also man kann folgende Templates editieren:
gif.html, jpg.html, png.html

Man ersetzt in dem Fall

Code: [Select]
<img src="{media_src}" border="1" alt="{image_name}"{width_height} /><br />

mit

Code: [Select]
<?php
$width 
= {width};
$height = {height};

if(
$height $width)
 
   {
 
   $size 0;
 
   }
else
{
$size 1;
};


if($size == 0)
{

if($height 336)
 
   {
 
   $newheight=336;
 
   }
 
 else
    
{
 
   $newheight=$height;
 
   };

}
else
{

if($width 336)
 
   {
 
   $newwidth=336;
 
   }
 
 else
    
{
 
   $newwidth=$width;
 
   };

};



 echo 
'<a href="{media_src}" border=0><img src="{media_src}" border="1" alt="{image_name}" ';
 if(
$size == 1)
 {
 echo 
"width=$newwidth";
 }
 else
 {
 echo 
"height=$newheight";
 };
 echo 
'><br /></a>';
?>


Das sind massig if-Schleifen, geht bestimmt auch einfacher, also bitte köpft mich nicht, mir ist der Code echt peinlich ;) aber er funzt!
Einzig und alleine swf Dateien sprengen jetzt noch das Layout, wenn sie zu groß sind, aber da hab ich noch keine Lösung gefunden!
Naja vielleicht kann der eine oder andere dass ja vereinfachen und verwenden!

Gruß!
« Last Edit: September 13, 2005, 04:56:33 PM by Jan »

Offline Maweryk

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Suche Size Funktion in PHP
« Reply #8 on: March 25, 2003, 03:12:52 PM »
Vielen Dank!
Werde ich gleich mal testen!

Gruß

Markus

Offline wallpicer

  • Pre-Newbie
  • Posts: 7
    • View Profile
Re: Suche Size Funktion in PHP
« Reply #9 on: September 13, 2005, 04:11:31 PM »
Wenn ich das so mache wie das hier erklärt ist bekomme ich eine Fehlermeldung anstatt eines kleinen Bildes.

Parse error: parse error in /srv/www/htdocs/web1/html/wallpic/gal/includes/template.php(101) : eval()'d code on line 4

Kann mir jemand bitte helfen?

Offline Maweryk

  • Sr. Member
  • ****
  • Posts: 253
    • View Profile
Re: Suche Size Funktion in PHP
« Reply #10 on: September 20, 2005, 02:47:19 AM »
Toll wäre es, wenn man die Ausgabegröße mit der verwendeten Bildschirmgröße koppeln könnte.
Ist das irgendwie möglich?

Danke & Gruß

Markus