Bildbreite variable bei fester höhe?

Danke erstmal :)

Wenn ich nun aber den Code von dir einbaue,... dann kommt eine Fehlermeldung?!

Hier der Codeeinbau.

Code:
    $db 	=& JFactory::getDBO();
	
	        $query = "SELECT * FROM #__lbresa_img WHERE id_site = '$id_s' order by id asc";
			$db->setQuery( $query ); 
			$pics = $db->loadObjectList();
			
			foreach($pics as $pic)
			{ 
				
			echo "<div id='sitepic'><a href='".$myp."components/com_joomloc/images/".$pic->img."' rel='lightbox[gal]'>
			
			
			// Originalcode <img style='width:117px; height:70px;' src='".$myp."components/com_joomloc/images/vignettes/".$pic->img."'  alt='Bilder der Unterkunft' /></a>
			
			// geänderter code
			
			<?php
$img = $myp."components/com_joomloc/images/vignettes/".$pic->img;

$size = getimagesize( $img);
// den Wert 70 musst du eventuell anpassen
$max_height = 70;
$faktor = 1;

if ($size[1] > $max_height) {
    $faktor = $max_height / $size[1];
}
?>
<img style='width:<?php echo ($size[0] * $faktor); ?>px; height:<?php echo ($size[1] * $faktor); ?>px' src='".$img."'  alt='Bilder der Unterkunft' />
			
			
			
			</div>";
			
			
			
			}

und hier die Fehlermedlung:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 302

Zeile 302 ist dabei genau die zeile wo es mit $img = $myp."components/com_joomloc/images/vignettes/".$pic->img; losgeht....
 
Solche Fehlermeldungen sind immer ziemlich blöd. Man sucht dann immer in der angegebenen Zeile und findet nichts.

Diese Zeile müßte der Übeltäter sein:

PHP:
echo "<div id='sitepic'><a href='".$myp."components/com_joomloc/images/".$pic->img."' rel='lightbox[gal]'>

und so wäre sie richtig:

PHP:
echo "<div id='sitepic'><a href='".$myp."components/com_joomloc/images/".$pic->img."' rel='lightbox[gal]'>";

Du hast ganz am Ende der Zeile die schließenden Anführungszeichen und das Semikolon vergessen. Das passt auch zur Fehlermeldung.
 
aha, aber schließe ich dies nicht eigentlich nach dem </div> (Codeblock zeile 33)

</div>";

denn der Editor zeigt mir auch an, das danach der Code nicht mehr als PHP verstanden wird.
 
Nein, weil du eben in Zeile 302 mit öffnendem und schließendem Anführungszeichen ja wieder eine neue Anweisung erzeugst.

Du hast da auch ein bisschen was durcheinander mit "<?php ?>" die sind ineinander verschachtelt.

Schau dir mal deinen Code nochmal durch wo du da alles was doppelt hast.
 
Naja, das Modul ist eine Zusatzkomponente für Joomla, und leider sehr sehr schlecht Dokumentiert, und wenn dann in Französisch, und auch ziemlich verwirrend.

Code:
     $db     =& JFactory::getDBO();
    
            $query = "SELECT * FROM #__lbresa_img WHERE id_site = '$id_s' order by id asc";
            $db->setQuery( $query ); 
            $pics = $db->loadObjectList();
            
            foreach($pics as $pic)
            { 
                
            echo "<div id='sitepic'><a href='".$myp."components/com_joomloc/images/".$pic->img."' rel='lightbox[gal]'>"; 
            
            
            // Originalcode <img style='width:117px; height:70px;' src='".$myp."components/com_joomloc/images/vignettes/".$pic->img."'  alt='Bilder der Unterkunft' /></a>
            
            // geänderter code
            
            <?php
$img = $myp."components/com_joomloc/images/vignettes/".$pic->img;
 
$size = getimagesize( $img);
// den Wert 70 musst du eventuell anpassen
$max_height = 70;
$faktor = 1;
 
if ($size[1] > $max_height) {
    $faktor = $max_height / $size[1];
}
?>
<img style='width:<?php echo ($size[0] * $faktor); ?>px; height:<?php echo ($size[1] * $faktor); ?>px' src='".$img."'  alt='Bilder der Unterkunft' />
            
            
            
            </div>";
            
            
            
            }

habs jetzt mal so erzeugt, mal sehen ob es geht :)


Geht leider ni :(


Parse error: syntax error, unexpected '<' in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 301
 
Zuletzt bearbeitet:
auch wenn ich dies folgender maßen abändere (also in den IMG code noch ein öffnendes <?php einfüge ... dann lädt es zwar die seite zeigt aber auch fehlermeldungen an:

hier der Code

Code:
 $db 	=& JFactory::getDBO();
	
	        $query = "SELECT * FROM #__lbresa_img WHERE id_site = '$id_s' order by id asc";
			$db->setQuery( $query ); 
			$pics = $db->loadObjectList();
			
			foreach($pics as $pic)
			{ 
				
				
			$img = $myp."components/com_joomloc/images/vignettes/".$pic->img;

$size = getimagesize( $img);
// den Wert 70 musst du eventuell anpassen
$max_height = 70;
$faktor = 1;

if ($size[1] > $max_height) {
    $faktor = $max_height / $size[1];
}	
				
			echo "<div id='sitepic'><a href='".$myp."components/com_joomloc/images/".$pic->img."' rel='lightbox[gal]'>
			<img style='width:117px; height:70px;' src='".$myp."components/com_joomloc/images/vignettes/".$pic->img."'  alt='Bilder der Unterkunft' />
			<img style='width:<?php echo ($size[0] * $faktor); ?>px; height:<?php echo ($size[1] * $faktor); ?>px' <?php src='".$img."'  alt='Bilder der Unterkunft' />
			</a>
		
			</div>";
			
			
			
			}

dann kommt dies, und alle bilder doppelt:

Warning: getimagesize() [function.getimagesize]: URL file-access is disabled in the server configuration in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 297

Warning: getimagesize(http://www.rosenthal-bielatal.de/co...s/vignettes/site_25_img_25_20101129114816.jpg) [function.getimagesize]: failed to open stream: no suitable wrapper could be found in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 297
Bilder der Unterkunft

Warning: getimagesize() [function.getimagesize]: URL file-access is disabled in the server configuration in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 297

Warning: getimagesize(http://www.rosenthal-bielatal.de/co...s/vignettes/site_25_img_25_20101129114823.jpg) [function.getimagesize]: failed to open stream: no suitable wrapper could be found in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 297
Bilder der Unterkunft

Warning: getimagesize() [function.getimagesize]: URL file-access is disabled in the server configuration in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 297

Warning: getimagesize(http://www.rosenthal-bielatal.de/co...s/vignettes/site_25_img_25_20110321022055.jpg) [function.getimagesize]: failed to open stream: no suitable wrapper could be found in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 297
Bilder der Unterkunft

Warning: getimagesize() [function.getimagesize]: URL file-access is disabled in the server configuration in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 297

Warning: getimagesize(http://www.rosenthal-bielatal.de/co...s/vignettes/site_25_img_25_20110321022722.jpg) [function.getimagesize]: failed to open stream: no suitable wrapper could be found in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 297

achso, warum die bilder doppelt kommen weis ich, nur der fehlercode****?
 
Zuletzt bearbeitet:
Ich habe es nochmal ein bisschen umgeschrieben:

PHP:
<?php
$db =& JFactory::getDBO();

$query = "SELECT * FROM #__lbresa_img WHERE id_site = '$id_s' order by id asc";
$db->setQuery( $query );
$pics = $db->loadObjectList();

foreach($pics as $pic) {
    $img = $myp."components/com_joomloc/images/vignettes/".$pic->img;
    $size = getimagesize( $img);
    // den Wert 70 musst du eventuell anpassen
    $max_height = 70;
    $faktor = 1;

    if ($size[1] > $max_height) {
        $faktor = $max_height / $size[1];
    }
?>

<div id='sitepic'>
<a href="<?php echo $myp.'components/com_joomloc/images/'.$pic->img; ?>" rel="lightbox[gal]">
<img style="width:<?php echo ($size[0] * $faktor); ?>px; height:<?php echo ($size[1] * $faktor); ?>px" src="<?php echo $img; ?>" alt="Bilder der Unterkunft" />
</a>
</div>

<?php } ?>

Zum Testen habe ich bei mir den Zugriff auf die Datenbank und die FOREACH-Anweisung auskommentiert und habe der Variablen $img einen bei mir gültigen Wert zugewiesen. Damit hat es dann aber ohne Fehler geklappt.
 
Hallo und Danke erstmal das du deine Osterzeit Opferst :)

Habe den Code Probiert, wenn ich diese so abändere dann lädt es erstmal die Seite die Fehlermeldung kommt aber leider noch immer?!

Code:
$db =& JFactory::getDBO();

$query = "SELECT * FROM #__lbresa_img WHERE id_site = '$id_s' order by id asc";
$db->setQuery( $query );
$pics = $db->loadObjectList();

foreach($pics as $pic) {
    $img = $myp."components/com_joomloc/images/vignettes/".$pic->img;
    $size = getimagesize( $img);
    // den Wert 70 musst du eventuell anpassen
    $max_height = 70;
    $faktor = 1;

    if ($size[1] > $max_height) {
        $faktor = $max_height / $size[1];
    }
?>

<div id='sitepic'>
<a href="<?php echo $myp.'components/com_joomloc/images/'.$pic->img; ?>" rel="lightbox[gal]">
<img style="width:<?php echo ($size[0] * $faktor); ?>px; height:<?php echo ($size[1] * $faktor); ?>px" src="<?php echo $img; ?>" alt="Bilder der Unterkunft" />
</a>
</div>

<?php }

Warning: getimagesize() [function.getimagesize]: URL file-access is disabled in the server configuration in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 294

Warning: getimagesize(http://www.rosenthal-bielatal.de/co...s/vignettes/site_25_img_25_20101129114816.jpg) [function.getimagesize]: failed to open stream: no suitable wrapper could be found in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 294
Bilder der Unterkunft

Warning: getimagesize() [function.getimagesize]: URL file-access is disabled in the server configuration in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 294

Warning: getimagesize(http://www.rosenthal-bielatal.de/co...s/vignettes/site_25_img_25_20110426012125.jpg) [function.getimagesize]: failed to open stream: no suitable wrapper could be found in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 294
Bilder der Unterkunft

Warning: getimagesize() [function.getimagesize]: URL file-access is disabled in the server configuration in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 294

Warning: getimagesize(http://www.rosenthal-bielatal.de/co...s/vignettes/site_25_img_25_20110426012255.jpg) [function.getimagesize]: failed to open stream: no suitable wrapper could be found in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 294
Bilder der Unterkunft

Warning: getimagesize() [function.getimagesize]: URL file-access is disabled in the server configuration in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 294

Warning: getimagesize(http://www.rosenthal-bielatal.de/co...s/vignettes/site_25_img_25_20110426012321.jpg) [function.getimagesize]: failed to open stream: no suitable wrapper could be found in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 294

Und Bilder lädt es da logischweise auch keine... liegt das jetzt nur an dem Befehl (getimagesize) oder an der PHP zugriffsstufe?
 
Das ist jetzt ein "Problem" mit den Sicherheitseinstellungen des Servers bzw. PHP. Du kannst so nicht auf die Dateien zugreifen.

So wie ich das sehe has du für $img den kompletten Pfad bzw. die komplette URL eingetragen. Die Variable $myp müsste somit den Wert "http://www.rosenthal-bielatal.de" enthalten.

Lass diese Angabe mal weg und verwende als relative Pfadangabe nur "components/com_joomloc/images/vignettes/" und dann das entsprechende Bild.

PHP:
// diese Zeile
$img = $myp."components/com_joomloc/images/vignettes/".$pic->img;
// ändern zu
$img = "components/com_joomloc/images/vignettes/".$pic->img;

// und diese Zeile
<a href="<?php echo $myp.'components/com_joomloc/images/'.$pic->img; ?>" rel="lightbox[gal]">
// ändern zu
<a href="<?php echo 'components/com_joomloc/images/'.$pic->img; ?>" rel="lightbox[gal]">
 
Danke!

Der Code sieht jetzt so aus:

Code:
  $db =& JFactory::getDBO();
 
$query = "SELECT * FROM #__lbresa_img WHERE id_site = '$id_s' order by id asc";
$db->setQuery( $query );
$pics = $db->loadObjectList();
 
foreach($pics as $pic) {
    $img = "components/com_joomloc/images/vignettes/".$pic->img;
    $size = getimagesize( $img);
    // den Wert 70 musst du eventuell anpassen
    $max_height = 70;
    $faktor = 1;
 
    if ($size[1] > $max_height) {
        $faktor = $max_height / $size[1];
    }
?>
 
<div id='sitepic'>
<a href="<?php echo 'components/com_joomloc/images/'.$pic->img; ?>" rel="lightbox[gal]">
<img style="width:<?php echo ($size[0] * $faktor); ?>px; height:<?php echo ($size[1] * $faktor); ?>px" src="<?php echo $img; ?>" alt="Bilder der Unterkunft" />
</a>
</div>
 
<?php }

jetzt kommt aber leider diese Fehlermeldung:

Parse error: syntax error, unexpected '}' in /srv/www/rosenthal-bielatal.de/CMS/components/com_joomloc/views/loc/view.html.php on line 1079

in der Nähe von Zeile: 1079 steht das...

Code:
//**********geomap

 function getGeomdmap($liste, $id_ville, $id_dep, $id_region, $id_pays, $id_continent)
{
       $db =& JFactory::getDBO();
 
 //villle
  $query = "SELECT * FROM #__lbresa_continents where id = $id_ville";
  $db->setQuery( $query);
  $ville = $db->loadObject();
 
   
   //pays
   
    $query = "SELECT * FROM #__lbresa_continents where id = $id_pays";
        $db->setQuery( $query);
      $pays = $db->loadObject();
       


$md= str_replace("'", " ", $ville->nom)." ".$ville->cpv.", ";     
$md .=  str_replace("'", " ",$pays->nom);
	
	
	echo $md;
	
      }   	

    
	      parent::display($tpl);
   }// function
}// class

wobei Zeile 1079 das hier ist : }// function

****? wird das jetzt einmal zuviel geschlossen****?
 
Zurück