Page 1

Posts 7


Ben

Post: 001  

13.02.2008 - 14:28

Ich versuch grad ohne erfolg ein simples formular zu erstellen das mit eine ptv und textarea-content in einen anchorbereich speichert:
(:include PageFormElements.Messages:)
(:foxreplace anchorpost redirect=1 ptvtarget=Article.AnchorTest target=Article.AnchorTest#content template=0:)
'''Title:'''\\
(:input text Title {*$:Title} size=60:)

'''Text:'''\\
(:input textarea  Text ???Article.AnchorTest#content??? cols=60 rows=6:)
(:input submit post 'Save Changes':)
(:foxend anchorpost:)
Fragen:
  • Wie setzt man Anchor-Content in ein textarea ein?
  • Wie definiere ich das fox in einen Anchor-Bereich speichert?

gruss ben

Profile?    

Post: 002  

by  Hans    on 13.02.2008 - 15:01

Fox braucht ein template, um textarea inhalt und PTV zu speichern.

Das Formular:

(:fox anchorpost redirect=1
(:foxreplace put=overwrite template=AnchorPostTemplate target=Article.AnchorTest#content :)
(:input text Title size=60:)
(input textarea  Text cols=60 rows=6:)
(:input submit post 'Save Changes':)
(:foxend anchorpost:)

Das Tenmplate von Seite AnchorPostTemplate:

(:Title: {$$Title}:)
{$$Text}

Die Target Seite muss die Anker Section haben.

Profile   email   www

Post: 003  

by  Ben    on 13.02.2008 - 15:29

oky, cool vielen dank das klappt mal, jetzt aber, wie bring ich beim editieren den bestehenden content wieder in die textarea. Mit ptv ists ja kein problem, aber wie den Anchor-Bereich?

Profile?    

Post: 004  

by  Hans    on 13.02.2008 - 16:15

Man braucht zwei Fox Forms: eins um neuen Inhalt zu schreiben, und eins um es zu editieren. Für neuen Inhalt sollte die form oben nicht foxreplace sondern foxadd benutzen, mit put=top vielleicht. Oder einfach mit defaults:

(:fox newanchorpost template=... target=... redir=1:)
.....

Zum editieren empfehle ich Cookbook:FoxEdit. Damit kann man Editier-links schaffen, die eine Editierform aufrufen. Die kann entwedr standard sein, oder speziell gebaut mit verschiedenen Feldern für die verschiedenen PTVs incl.Text Feld.

ein Beispiel ist Cookbook:FoxContacts, auch live hier.

Profile   email   www

Post: 005  

by  Ben    on 14.02.2008 - 18:15

ich versuch grad mehrere versionen von textarea. Der textarea inhalt wird auch gespeichert, blöderweise die ptv's nicht. Siehst du grad was ich falsch mache?

(:fox articleform redirect=1:)
(:foxreplace put=overwrite  target={$EditTarget}#IDcontent template=PageFormTemplates.AnchorText  ptvtarget={$EditTarget}:)
editing page ''{$EditTarget}''\\
(:input text Title "{*$:Title}" size=60:)

Profile?    

Post: 006  

by  Hans    on 14.02.2008 - 18:57

Hier ist ein Beispiel für eine PTV edit form:

(:fox editform  target={$EditTarget} ptvtarget={$EditTarget} template=0 redirect=1 :)
(:input defaults source={$EditTarget} :)
(:input text subject name=$:Subject :)
(:input textarea id=text name=$:Text :) 
(:input submit post Enter:)
(:foxend editform:)

{$EditTarget} wird von foxedit.php gesetzt mit dem Namen der Seite in der der edit link ist.
Die Seite hat PTVs 'Subject' und 'Text', deren Werte in die edit form geladen werden. Dafür braucht es das markup
(:input defaults source=PageName:)
Mit name=$:Subject und name=$:Text identifizieren die Felder die PTVs, und geben ein Ziel fürs speichern.
Man muss hier name=$:PTVar schreiben, im Unterschied zum generellen Gebrauch, wo name= oft weggelassen werden kann.
PTV 'Text' kann auch eine Anker Sektion sein:

[[#Text]]
text inhalt
mehr inhalt
[[#Textend]]

muss mit #Textend abschliessen:das end ist hier wichtig
Also man braucht nicht foxaction=replace put=overwrite.

Profile   email   www

Post: 007  

by  Ben    on 14.02.2008 - 19:43

oky cool, jetzt funktionierts. Dann kann man sich das mit dem target eigentlich sparen.

Und mehrere textareas funktionieren auch.

vielen dank
grz ben

Profile?    

Add Comment

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