+ Antworten
Ergebnis 1 bis 12 von 12

Thema: Eigene Extension schreiben

  1. #1
    TP-Senior Borusse macht alles soweit korrekt Avatar von Borusse
    Registriert seit
    Oct 2003
    Ort
    Mönchengladbach
    Beiträge
    176

    Eigene Extension schreiben

    Hallo,

    ich habe aus dem Buch "Praxiswissen Typo3" von Robert Meyer den Abschnitt Eigende Extesions schreiben durchgeackert. Darin wird erklärt wie man ein eigenes Frontend Plugin schreibt.

    Jetzt würde ich gerne nach diesem Beispiel eine eigene kleine Extension schreiben. Und zwar möchte ich ein kleines Buchungssystem schreiben.
    Eingabe von Überschrift, Beschreibung, Preis. Soweit kein Problem.
    Allerdings würde ich auch noch gerne einen Buchungs bzw. Bestellbutton unterbringen der mich dann zu einem Bestellformular leitet. Das Formular soll nur die normalen Benutzerdaten wie Name, Anschrift ect. beinhalten. Und natürlich die Daten von dem Produkt mit übergeben. Nach Absenden möchte ich dann lediglich die Bestelldaten per email erhalten. Was für mich jetzt eine Hürde darstellt ist das Formular. Wie kann ich das mit in die extension integrieren?

    Hat da vielleicht jemand mit Erfahrung und kann mir kurz erklären wie man das mit dem Kickstarter macht. Vielleicht kennt auch jemand ein Tutorial wie man so was umsetzen könnte.

  2. #2
    TP-Special Mod steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869


    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer


  3. #3
    TP-Supporter Stefan_G hilft, wo's geht Stefan_G hilft, wo's geht Stefan_G hilft, wo's geht Avatar von Stefan_G
    Registriert seit
    May 2005
    Ort
    Tecklenburg
    Beiträge
    484
    Hi,

    Zitat Zitat von Borusse Beitrag anzeigen
    (...)
    Was für mich jetzt eine Hürde darstellt ist das Formular. Wie kann ich das mit in die extension integrieren?
    (...)
    bau dir einfach ein mailformplus-Formular für das FE-Formular. Mailformplus bietet dir auf einfache Weise die Möglichkeit, Eingaben in der DB zu speichern (steht im Manual). Du speicherst die Eingaben also dann einfach in der Tabelle der Extension, die du vorher wie im Buch oder in Steffens Tut beschrieben, angelegt hast.

    //Stefan

  4. #4
    TP-Senior Borusse macht alles soweit korrekt Avatar von Borusse
    Registriert seit
    Oct 2003
    Ort
    Mönchengladbach
    Beiträge
    176
    Danke für den Link und den Tip. Dann werde ich das auch mal durcharbeiten.
    Wieso ist das Tut eigentlich im Traum-Dynamic Forum?
    Würder das nicht im Typo3 Forum besser passen?

  5. #5
    TP-Special Mod steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869
    weil wir ein eigenes Forum für Workshops und Tutorials haben


    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer


  6. #6
    TP-Senior Borusse macht alles soweit korrekt Avatar von Borusse
    Registriert seit
    Oct 2003
    Ort
    Mönchengladbach
    Beiträge
    176
    Ich habe das tutorial durch. Allerdings raff ich nicht wie ich jetzt das mailformplus Formular einbinden muss.

    Ich habe im Template folgende Marker gesetzt:

    PHP-Code:
    <!-- ###LISTVIEW### -->
    <h2>Listenansicht</h2>
    <
    ul>
        <!-- 
    ###ROW### -->
        
    <li>###KURSNAME###</li>
        
    <!-- ###ROW### -->
    </ul>
    <!-- 
    ###LISTVIEW### -->


    <!-- ###DETAILVIEW### -->
    <h2>Detailansicht</h2>
    <
    h3>###KURSNAME###</h3>
    <p>###BESCHREIBUNG###</p>
    <div>Preis###PREIS###</div>
    <p>Zur Demo###DEMO###</p>


    <h3>Diesen Kurs Buchen</h3>
    <
    p><strong><u><i>###KURSNAME###</strong></u></i></p>
    <p>###FORMULAR###</p>
    <p>###BACKLINK###</p>
    <!-- ###DETAILVIEW### --> 
    mailformplus habe ich meinen bedürfnissen angepasst und das plugin auf eine Seite (Nicht im Menü) integriert. Wie bekomme ich denn jetzt den Marker "###FORMULAR###" in der php Datei der Extension angesprochen?

    PHP-Code:
        function detailView() {
            
    #unser Subpart
            
    $subpart=$this->cObj->getSubpart($this->template,'###DETAILVIEW###'); 
            
            
    #Datensatz holen
            
    $record=$this->pi_getRecord('tx_drkursbooking_main',$this->piVars['item']);
            
            
    #Marker füllen
            
    $markerArray['###KURSNAME###']=$record['kursname'];
            
    $markerArray['###BESCHREIBUNG###']=$this->pi_RTEcssText($record['beschreibung']);
            
    $markerArray['###PREIS###']=$record['preis'];
            
    $markerArray['###DEMO###']=$this->cObj->typolink($record['demo'],array(
                
    'parameter' => $record['demo'],
                
    'extTarget' => '_blank',
            ));
            
            
    #backlink als einfachen Link ohne Parameter
            
    $markerArray['###BACKLINK###']=$this->pi_linkToPage($this->pi_getLL('back'),$this->id);
            return 
    $this->cObj->substituteMarkerArrayCached($subpart,$markerArray,array(),array());     
        }
        


  7. #7
    TP-Special Mod steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869
    Dir ist schon klar das Du was nicht triviales probierst ;-)
    Du willst ja in einen Marker eine Extension einsetzen.

    Das geht nur über TS

    lib.formular = COA

    und dann

    PHP-Code:
    $markerArray['###FORMULAR###'] = $this->cObj->cObjGetSingle('COA','lib.formular'); 


    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer


  8. #8
    TP-Senior Borusse macht alles soweit korrekt Avatar von Borusse
    Registriert seit
    Oct 2003
    Ort
    Mönchengladbach
    Beiträge
    176
    Dir ist schon klar das Du was nicht triviales probierst ;-)
    Du willst ja in einen Marker eine Extension einsetzen.


    Aha, da war ich wohl auf dem Holzweg.

    lib.formular = COA kommt das ins root TS?
    Ausserdem muss ich noch den Kurstitel aus der eigenen extension mit an das Formular übergeben.

    Hmmm... dachte nicht das dass so kompliziert ist eine Extension wie mailformplus in eine eigene Extension zu integrieren.

  9. #9
    TP-Special Mod steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869
    zeig mir eine Extension, die eine andere integriert (ausser z.B. tt_address-Datensätze für DB-Operationen)


    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer


  10. #10
    TP-Senior Borusse macht alles soweit korrekt Avatar von Borusse
    Registriert seit
    Oct 2003
    Ort
    Mönchengladbach
    Beiträge
    176
    Also sollte man das Formular direkt in der class.tx_meineExtension_pi1.php definieren?

  11. #11
    TP-Special Mod steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User steffenk lebt für das TP und seine User Avatar von steffenk
    Registriert seit
    Feb 2005
    Ort
    Haan / NRW
    Beiträge
    12.869
    ja, wäre sinnvoll und wesentlich einfacher


    TYPO3 · MySQLDumper · dislabs
    ·
    manche Mühlen mahlen schneller ...
    "Ich habe Rücken"
    Horst Schlämmer


  12. #12
    TP-Senior Borusse macht alles soweit korrekt Avatar von Borusse
    Registriert seit
    Oct 2003
    Ort
    Mönchengladbach
    Beiträge
    176
    So ich habe es jetzt mit dem Formular hinbekommen.
    Ich habe aber noch eine Frage zu der List Ansicht.

    Ich würde gerne zu dem Link (bei mir Kursname) noch die Beschreibung in der
    Listansicht hinzugfügen. Allerdings ohne verlinkung.

    PHP-Code:
            if($res) {
                
    $liste='';
                while(
    $row=$GLOBALS['TYPO3_DB']->sql_fetch_assoc($res)) {
                    
    $markerArray['###KURSNAME###']=$this->pi_linkTP($row['kursname'],array($this->prefixId.'[item]'=> $row['uid']));
                    
    $liste .= $this->cObj->substituteMarkerArrayCached($singlerow,$markerArray); 
                } 
    Quasi unter:
    $markerArray['###KURSNAME###']=$this->pi_linkTP($row['kursname'],array($this->prefixId.'[item]'=> $row['uid']));

    $markerArray['###BESCHREIBUNG###']=$this->pi_linkTP($row['beschreibung'],array($this->prefixId.'[item]'=> $row['uid']));

    Jetzt müsste ja pi_linkTP ersetzt werden damit ich die Beschreibung nicht als Link angezeigt bekomme oder?

    EDIT: Habe jetzt cObj->substituteMarkerArrayCached eingesetzt und funktioniert.
    Geändert von Borusse (29.04.2008 um 10:42 Uhr)

+ Antworten

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51