[Typo3-german] Anf?ngerproblem mit eigener Extension

Lars Jonuscheit Merlin732 at web.de
Tue Sep 13 12:43:39 CEST 2005


Message: 4
Date: Tue, 13 Sep 2005 11:12:46 +0200
From: Chi Hoang <chibo at gmx.de>
Subject: Re: [Typo3-german] Anf?ngerproblem mit eigener Extension
To: typo3-german at lists.netfielders.de
Message-ID:
<mailman.1.1126602900.9160.typo3-german at lists.netfielders.de>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Lars Jonuscheit schrieb:

> Was mir fehlt, ist ein Weg/Ansatz, wie ich es realisiere, dass $suchfeld verarbeitet und ausgegeben wird. Findet alles in der function main statt? 


Hallo Lars,

du musst in dein template eine form f?r die suche einbauen. die action 
dieser form zeigt auf die gleiche seite wie deine extension. method ist 
am besten post. in dieser form ist ja auch dein feld suchfeld drin. bei 
submitten der suche landet das suchfeld im array $this->piVars deiner 
extension class. nun brauchst du nur noch aus $this->piVars deine 
variable holen und entsprechende funktionen einleiten. achtung: die 
variablen in formularen werden nur ins $this->piVars ?bernommen wenn die 
folgendes format haben: tx_$prefixId_pi1[variablenname]. $prefixId ist 
ja ein default wert.

Gru?,

Chi
-------------------------------------------------------------------------------------------------


Hi,

ich habe in der html-form name="tx_$prefixId_pi1[suchfeld]" für die variable gesetzt.

meine function main sieht nun so aus:

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!
    $suchfeld = $this->piVars['suchfeld'];
     
    // Variablen setzen  

    if($suchfeld == '') {    
    // Die Designvorlage laden
    $tmpl = $this->cObj->fileResource("fileadmin/suche.html");   
    // Inhalt von $tmpl ausgeben, mit return erfolgt Abbruch
    return $tmpl;
    }
    
    else {
    // Die Datenbank ansprechen und in einer Schleife ausgeben - SUCHE NACH UEBERSCHRIFT
    $query = "SELECT * FROM tt_content WHERE header LIKE '%".$suchfeld."%' AND hidden = 0 AND deleted = 0 ";
    $res = mysql(TYPO3_db, $query);
    while($row = mysql_fetch_assoc($res)) {
      $header .=$row["header"];
      $content .=$row["bodytext"];
      $pid .=$row["pid"];
    }
    
    echo "<table align='center' width='80%'' class=cc_suche>";
    echo "<tr><td>Pfad zum Ergebnis</td></tr>";
    echo "<tr class=cc_suche_titel><td><a href='index.php?id=".$pid."'>".$header."</a></td></tr>";
    echo "<tr><td>".$content."</td></tr>";
    echo "</table>";
    }   
  }  	

ich versteh noch nicht ganz, warum ich immernoch kein suchergebniss erhalte. sieht jemand den fehler?






______________________________________________________________
Verschicken Sie romantische, coole und witzige Bilder per SMS!
Jetzt bei WEB.DE FreeMail: http://f.web.de/?mc=021193




More information about the TYPO3-german mailing list