Page 1

Posts 12


Ben

Post: 001  

15.02.2008 - 13:44

hallo hans

ich versuch grad ein miniformular zu machen dieses möcht ich dann in irgendeine seite einbinden. Redirect funktioniert, aber die Seite wird sofort erstellt und ich lande in der Ansicht statt im Editmodus. Hast du ne ahnung warum?

 (:include SysatemForms.NewPage Group=ZielGruppe :)

SysatemForms.NewPage

 (:fox newpage target=.?action=edit template=0 redirect=1 :)
 (:input text Title size=30:)
 (:input submit post '$[Create Page]':)
 (:foxend newpage:)

Gruss Ben

Profile?    

Post: 002  

by  Hans    on 15.02.2008 - 14:04

Soll das Feld 'Title' den Namen der neuen Seite erstellen?
Und die neue Seite im Editier Modus aufgemacht werden?
Und kein Template Text in dea Edit Fenster hineinkommen?

Dann:
(:fox newpage newedit={$$Title} template=0 :)
(:input text Title size=30:)
(:input submit post '$[Create Page]':)
(:foxend newpage:)

oder auch kürzer:

(:fox newpage template=0 :)
(:input text newedit size=30:)
(:input submit post '$[Create Page]':)
(:foxend newpage:)

newedit=PageName ist ein spezielles target und wird als letztes im multi page process behandelt. Es wird immer im normalen Edit Fenster aufgemacht. redirect sollte nicht nötig sein.

Profile   email   www

Post: 003  

by  Ben    on 15.02.2008 - 15:44

Ja genau, dieses formular ist in der seite PageForms.NewSourcePage gespeichert (deshalb kein template) Das formular wird an einer beliebigen stelle mit include eingefügt.

 (:include PageForms.NewSourcePage Group=XXX Label=Create:)

wenn ich redirect=1 wegnehme und newedit einfüge passiert nichts.

http://netstreams.org/devel/fox/index.php?n=Main.WikiSandbox

Profile?    

Post: 004  

by  Hans    on 15.02.2008 - 16:53

Oh, da hatte sich ein Fehler in den Code geschlichen, sorry! Ich hab das gefixt im neuesten Update v. 2008-02-15a.

Dies sollte reichen mit neuestem Fox:

(:fox newpage :)
(:input text newedit '' size=30:)
(:input submit post '$[Create Page]':)
(:foxend newpage:)

Profile   email   www

Post: 005  

by  Hans    on 15.02.2008 - 16:55

Es muss heissen:

(:include PageForms.NewSourcePage:)

ohne Group= oder Label=, das sind keine parameters für das include markup

Profile   email   www

Post: 006  

by  Ben    on 16.02.2008 - 11:19

hallo hans, habs probiert, aber gekomm imm die fehlermeldung:

Fatal error: Call to undefined function: array_diff_key() in 
/var/www/virtual/netstreams.org/htdocs/devel/fox/cookbook/fox/fox.php on line 1021

Die version von pmwiki.org ist 2008-02-15b ist das richtig?

Profile?    

Post: 007  

by  Hans    on 16.02.2008 - 11:50

Oh damn! Ich hab ne php5 function benutzt!

bis ich das ausgebügelt hab, kannst du dies versuchen (ich hab's nicht getestet, es ist von php.net:

Steck das folgende an den Schluss von fox.php (da ist schon eine andere php5 Ersatz-Funktion):

if (!function_exists('array_diff_key')) {
    function array_diff_key()
    {
        $arrs = func_get_args();
        $result = array_shift($arrs);
        foreach ($arrs as $array) {
            foreach ($result as $key => $v) {
                if (array_key_exists($key, $array)) {
                    unset($result[$key]);
                }
            }
        }
        return $result;
   }
}

Profile   email   www

Post: 008  

by  Hans    on 16.02.2008 - 11:57

Das war das Ergebnis von Optimierungs-Versuchen letzte Nacht rolling eyes smiley

Profile   email   www

Post: 009  

by  Hans    on 16.02.2008 - 12:47

Ist jetzt korrigiert in Version 2008-02-16 cool smiley
Download @ Cookbook:Fox

Profile   email   www

Post: 010  

by  Ben    on 16.02.2008 - 12:49

yea funktioniert.

Übrigens: ohne Group= oder Label=, das sind keine parameters für das include markup

Das hab ich von deinem template/display und funktioniert. Das heisst ich kann über die parameter gruppe und label definieren die dann mit {$$Group}= ins formular übertragen werden.

Profile?    

Post: 012  

by  Hans    on 16.02.2008 - 18:03

Oh ja, ich vergass das! Ein wichtiger Trick auf dem die ganze Display Template Technik hier im Forum aufbaut.

Profile   email   www

Post: 013  

by  Hans    on 16.02.2008 - 18:05

Ah gut es klappt. ich hab die Uhr hier auf GMT umgestellt.
Mein neuer hosting server ist in Kanada, und so waren die timestamps alle falsch.

Profile   email   www

Add Comment

 
Subject:
Message:
 Enter value <- Have you entered the code number?
Author:
Page 1