mod_form RC2 und File-Upload

Diskussion zum Formular-Modul für ConPresso 4
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Re: mod_form RC2 und File-Upload

Beitrag von Mr. Magpie »

Mr. Magpie hat geschrieben: 1. Formular-Template

Ich habe mir im Formular-Template (Bereich Artikelseite) für den Datei-Upload ein Feld folgendermaßen angelegt:

<!-- Text: Upload-Datei; type=file; class=langfeld; size=30; -->

aber auch das funktionierte gleichermaßen:

<!-- File: Upload-Datei; type=file; class=langfeld; size=30; -->

Frage hierzu: Welche Version ist besser bzw. vorgesehen? Ich vermute 'mal stark, die letztere.
[...]
MarkusR hat geschrieben:zu 1.) vorgesehen ist die Text-Version, weil das Template auch immer der Ausgabe dient
Ich bin jetzt ein paar (Test-)Erfahrungen weiter:

1. Habe ich in meinem Formular ein File-Uploadfeld, erzeugt durch

<!-- Text: Upload-Datei; type=file; -->

im Rubrikseiten-Template, so erhalte ich nach Absenden des Formulars als Ergebnis einen entsprechenden Artikel mit

a) einem leeren Text-Feld "Upload-Datei" und
b) einem neuen, mit dem hochgeladenen Bild belegten, gleichnamigen(!) Image-Feld "Upload-Datei"!

Ich dachte immer, es sollte unbedingt vermieden werden, gleichnamige Felder/Platzhalter zu verwenden!!?

2. Ich habe sodann versucht, dieses Problem zu vermeiden und entgegen deinem Rat im Rubrikseiten-Template das (Bild-)Upload-Feld erzeugt mit

<!-- Image: Upload-Datei; type=file; -->

Überraschung! Das funktioniert! So wird kein neues, gleichnamiges Feld erzeugt und das Image-Feld ist mit dem hoch geladenen Bild belegt.

3. Beide Varianten zeigen einen kleinen Schönheitsfehler, wenn der Platzhalter-Name ein Leerzeichen enthält:

Hieß der Platzhalter bspw. "Datei 1", wird beim Hochladen daraus ein Image-Feld "Datei_1".

Alle anderen (Text-)Platzhalter sind davon nicht betroffen, nur Datei-Upload-Felder.

Wird das durch die Funktion keyFix in includes/parser_c_form.inc.php von mod_form bewirkt? Wenn ja, kann ich dort das Ersetzen des Leerzeichens durch den Unterstrich eliminieren? Welche Nebenwirkungen würdest du dann erwarten?
Günther Ludwig
Benutzeravatar
MarkusR
Handbuchversteher
Beiträge: 7361
Registriert: 01.01.1970 01:00
Hat sich bedankt: 110 Mal
Danksagung erhalten: 933 Mal
Kontaktdaten:

Beitrag von MarkusR »

Du wirst Dich wundern, aber ich habe mich bisher noch nicht weiter mit dem Problem bzw. Datei-Upload beschäftigt, da ich anderes zu tun habe.

Was die Änderung des Namens angeht resultiert das meines Wissens daraus, daß es sonst nicht funktioniert.

Leider habe ich bisher kein Projekt, das dieses Feature benötigt.
Ciao Markus
ConPresso-Module

Kein Support per PN!!! Für Fragen und Diskussionen ist das Forum da!

Succi recentis officinalis
Hochwertige Kräutersäfte und -Öle
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

Nö, ich wundere mich gar nicht. Kann ich voll verstehen, denn mir geht's ähnlich.

Ich mache jetzt aus der Not eine Tugend:

Die Formular-Felder erzeuge ich mit

<!-- Text: Upload-Bild 1; type=file; -->
<!-- Text: Upload-Bild 2; type=file; -->
:
<!-- Text: Upload-Bild 9; type=file; -->

Außerdem erzeuge ich zusätzliche Image-Platzhalter
<!-- Image: Upload-Bild_1; -->
<!-- Image: Upload-Bild_2; -->
:
<!-- Image: Upload-Bild_9; -->

, die nicht als Feld im Formular selbst auftauchen, aber die hoch geladenen Bilder aufnehmen. Die so erzeugten Artikel kann ich anschließend in eine andere Rubrik kopieren, ihnen dort ein anderes Template zuordnen und, voilá, fertig sind neue, vom Website-Besucher erzeugte ConPresso-Artikel inklusive integrierten Bildern.

p.s.: noch nicht getestet, aber so müsste es ja gehen
Günther Ludwig
Benutzeravatar
Mr. Magpie
ConPresso-Profi
Beiträge: 1004
Registriert: 01.01.1970 01:00
Wohnort: Wuppertal
Hat sich bedankt: 274 Mal
Danksagung erhalten: 59 Mal

Beitrag von Mr. Magpie »

Jetzt ist's getestet: funktioniert!
Günther Ludwig
Antworten