Zum Inhalt springen

Bild wird nicht angezeigt

Erstellt am 12. August 2007 · Noch keine Antworten

Tags: Frage

mager85 ·

Hallo,

ich habe versucht die Extension vom Buch "Praxiswissen Typo3" von Robert Meyer nachzubauen.

Leider ohne Erfolg.

Ich scheitere daran dass das Bild nicht angezeigt wird. Ich weiß einfach nicht mehr weiter.

Das else Objekt wird auf der Ausgabeseite gerendert, aber das normale Bild nicht.

plugin.user_referenzen_pi1 {
	templateFile = fileadmin/template/site/referenzen.html

#So soll das Foto der Refenz ausgegeben werden
bild = IMAGE
bild {
	XY = [10.w]+2, [10.h]+2
	backColor = black
	10 = IMAGE
	10.file = unbekannt
	10.file.width = 150
	10.offset = 1,1
}

#Dieses Bild soll angezeigt werden , wenn kein Foto vorhanden ist.
bild_default = IMAGE
bild_default.file = GIFBUILDER
bild_default.file {
	XY = 152, 50
	backcolor = white
	10 = TEXT
	10.text = N/A
	10.fontSize = 20
	10.fontColor = black
	10.niceText = 1
	10.offset = 30,25
	}
}
<?php
class user_referenzen_pi1 extends tslib_pibase {
	var $prefixId      = 'user_referenzen_pi1';		// Same as class name
	var $scriptRelPath = 'pi1/class.user_referenzen_pi1.php';	// Path to this script relative to the extension dir.
	var $extKey        = 'user_referenzen';	// The extension key.
	
	/**
	 * The main method of the PlugIn
	 *
	 * @param	string		$content: The PlugIn content
	 * @param	array		$conf: The PlugIn configuration
	 * @return	The content that is displayed on the website
	 */
	function main($content,$conf)	{
		$this->conf=$conf;
		$this->pi_setPiVarDefaults();
		$this->pi_loadLL();
		$this->pi_USER_INT_obj=1;	// Configuring so caching is not expected. This value means that no cHash params are ever set. We do this, because it's a USER_INT object!
		
		//Variable setzen
		$content = "";
		$marker = array();
		$img_pfad = "uploads/tx_userreferenzen/";
		
		//Die Designvorlage laden
		$tmpl = $this->cObj->fileResource($conf["templateFile"]);
		
		//Einen Teilbereich der Designvorlage auslesen
		$tmpl = $this->cObj->getSubpart($tmpl, "###REFERENZEN###");

		//Einen weiteren Teilbereich aus dem Teilbereich auslesen
		$tmpl_eintrag = $this->cObj->getSubpart($tmpl, "###EINTRAG###");
		
		//Ggf. einen Parameter auslesen, ansonsten die aktuelle Seite verwenden
		$referenzenPageId = $conf["referenzenPageId"];
		if (!intval($referenzenPageId)) $referenzenPageId=$GLOBALS["TSFE"]->id;
		
		//Die Datenbankabfrage inkl. Unterstützung von Datenbankabstraktion
		$res = $GLOBALS["TYPO3_DB"]->exec_SELECTquery("*",
			"user_referenzen_main", "deleted = 0 AND hidden = 0
			AND pid = '".$referenzenPageId."'");
		while($row = $GLOBALS["TYPO3_DB"]->sql_fetch_assoc($res)) {
		
			//Ein Array mit Platzhaltern als Schlüssel mit den Werten füllen
			$marker["###PLZ###"] = $row["plz"]." ".$row["ort"];
			$marker["###GROESSE###"] = $row["groesse"];
			$marker["###KATEGORIE###"] = $row["kategorie"];
			$marker["###EINBAUDATUM###"] = $row["einbaudatum"];
			$marker["###BESCHREIBUNG###"] = $row["beschreibung"];
	

      // Das Bild auslesen und verarbeiten
      $conf["bild."]["file."]["10."]["file"]= $img_pfad.$row["bild"];
      if ($this->cObj->fileResource($img_pfad.$row["bild"])) {
         $marker["###BILD###"] = $this->cObj->cObjGetSingle($conf["bild"], $conf["bild."]);
      } else {
         $marker["###BILD###"] = $this->cObj->cObjGetSingle($conf["bild_default"], $conf["bild_default."]);
      }		
						
			
			//Den Teilbereich ###EINTRAG### aud das Array miteinander "vereinen"
			$content.=$this->cObj->substituteMarkerArrayCached($tmpl_eintrag, $marker);
		}
		
		// Letztmalig den umhüllenden Teilbereich ersetzen und das Ergebnis ausgeben
		$content =$this->cObj->substituteSubpart($tmpl, "###EINTRAG###", $content);
		return $content;	
	}
}



if (defined('TYPO3_MODE') && $TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/user_referenzen/pi1/class.user_referenzen_pi1.php'])	{
	include_once($TYPO3_CONF_VARS[TYPO3_MODE]['XCLASS']['ext/user_referenzen/pi1/class.user_referenzen_pi1.php']);
}

?>

Ich weiß ihr seit nicht so begeistert wenn jemand einfach viel Code Postet, aber ich komme einfach nicht weiter.

Hier zum Schluss noch mal mein Template File, denke aber nicht dass es daran liegt, sonst würde die ELSE Anweisung ja nicht funktionieren.

<!-- ###REFERENZEN### begin -->
<table width="80%" border="1">
  <!-- ###EINTRAG### begin -->
  <tr bgcolor="#FFFF99"> 
    <td colspan="2">###GROESSE### ###KATEGORIE###</td>
  </tr>
  <tr> 
    <td rowspan="3">###BILD###</td>
    <td>Standort: ###PLZ###</td>
  </tr>
  <tr> 
    <td>In Betrieb seit: ###EINBAUDATUM###</td>
  </tr>
  <tr> 
    <td>###BESCHREIBUNG###</td>
  </tr>
  <!-- ###EINTRAG### end -->
</table>
<!-- ###REFERENZEN### end -->

An was kann sowas noch liegen?
ImageMagick Fehler?
Wie teste ich ob dieser einwandfrei funktioniert?

Ich würde mich freuen wenn ihr mir helfen könntet.

Grüße
mager85