Welcome, Guest. Please login or register.
Did you miss your activation email?
May 27, 2012, 01:48:32 AM

Login with username, password and session length
Search:     Advanced search
Interested in joining the WebsiteBaker team?
For more Information read here or on our new website.
155555 Posts in 21715 Topics by 7737 Members
Latest Member: gx-world
* Home Help Search Login Register
Pages: [1]   Go Down
Print
Author Topic: Kleines Form Problem  (Read 1972 times)
BerndJM

Offline Offline

Posts: 1764



« on: February 08, 2007, 05:10:41 PM »

Hallo zusammen,

mein erstes öffentliches Gebäck ist fast fertig, habe aber ein kleines Problemchen mit dem Form-Modul:
Bei unvollständig ausgefülltem Formular taucht bei dem hinweis neben dem "zurück"-Link immer das Wort "Fehler" auf (siehe Bild). Ich habe keine Peilung, wo sich das hermogelt. Wäre für sachdienliche Hinweise echt dankbar.

Grüßle Bernd
Logged

In theory, there is no difference between theory and practice. But, in practice, there is.
Funky_MF

Offline Offline

Posts: 270



« Reply #1 on: February 08, 2007, 05:23:48 PM »

Hallo Bernd,
verwendest du das Standard Form Modul oder die Advanced Version von der Addon-Seite ?
Logged

Es ist keine Schande, nicht alles zu wissen;
wohl aber, es nicht zugeben zu wollen.
Funky_MF

Offline Offline

Posts: 270



« Reply #2 on: February 08, 2007, 05:29:40 PM »

Ok, hab die Antwort selbst rausgefunden, es ist die Standardversoin und es scheint wohl ein Fehler  der view.php zu sein (in dem Fall dann wohl auch ein "falscher Fehler" - kleines Wortspiel....wink )
Logged

Es ist keine Schande, nicht alles zu wissen;
wohl aber, es nicht zugeben zu wollen.
Funky_MF

Offline Offline

Posts: 270



« Reply #3 on: February 08, 2007, 05:49:07 PM »

Hi, habs gefixt, verwende die angehängte view.php, da war wohl ein kleiner Bug drin.

Wenn du es noch schöner haben willst, dann verwende das advanced form modul - allerdings beachte die Installationsanweis ungen!
Logged

Es ist keine Schande, nicht alles zu wissen;
wohl aber, es nicht zugeben zu wollen.
BerndJM

Offline Offline

Posts: 1764



« Reply #4 on: February 08, 2007, 05:53:54 PM »

Das ging ja fix, auf euch ist einfach Verlaß cool

Kann man das Advanced einfach so drüber installieren, oder muß ich dann das Formular nochmal komplett neu machen? (Ist nämlich ziemlich umfangreich und hat mich schon genug "Nerven" gekostet tongue).

Grüßle Bernd
Logged

In theory, there is no difference between theory and practice. But, in practice, there is.
doc
Guest
« Reply #5 on: February 08, 2007, 06:07:33 PM »

Hi Bernd,

die Installation ist auf der Addons Seite beschrieben (http://addons.websitebaker.org/pages/modules.php).

Quote
Core Module Replacements for WB 2.6.4 and WB 2.6.5
Here you find replacement modules for Core modules of WB. This Modules have additional nice features. Installation of this Modules differs from the normal way of installing modules. Please don't install this modules via admin interface, please unzip the Files and upload them with your ftp client to the server. Overwrite the existing files. Go then to your browser and call once the update script, wich comes with this modules.

! ! ! Once you have updated the core modules with this replacements going back to the original modules is very difficult. Also you cannot update this replacement modules with updates for the core modules (when e.g. a new WB version is released). When you update from WB 2.6.4 to WB 2.6.5 delete the folders "form" and/or "news" from the modules directory in the WB 2.6.5 package. ! ! !

If you use WB 2.6.4 you need for the form modul the additional update from below. For WB 2.6.5 this is not required because it's already included.

Gruss Christian
Logged
BerndJM

Offline Offline

Posts: 1764



« Reply #6 on: February 15, 2007, 03:03:19 AM »

Hallo zusammen,

mittlerweile habe ich die "advanced" Form Geschichte im Einsatz, funktioniert ganz wunderprächtig. Aaaaber:
Kann das sein das Checkboxen als Pflichtfelder nicht auf die "neue" Überprüfung (mit JavaScript Alert) reagieren, sondern noch die "alte" Fehlerroutine auslösen?
Oder habe ich da was übersehen, versaut, oder wie auch immer?

Grüßle Bernd
Logged

In theory, there is no difference between theory and practice. But, in practice, there is.
ruebenwurzel
WebsiteBaker Org e.V.

Offline Offline

Posts: 7973



WWW
« Reply #7 on: February 15, 2007, 05:29:55 AM »

Hallo,

Quote
"neue" Überprüfung (mit JavaScript Alert)

was meinst du damit? Nur das advanced Form modul hat eine javascript Überprüfung, das normale built in hat dies nicht. Wenn du vom normalen auf das advanced umgestiegen bist, solltest du es vorher nicht gehabt haben und jetzt haben und nicht umgedreht.

Matthias
Logged
BerndJM

Offline Offline

Posts: 1764



« Reply #8 on: February 15, 2007, 10:21:41 AM »

Hallo Matthias,
im advanced triggern alle Pflichtfelder die JS-Überprüfung, nur eben nicht die Checkboxen die als Pflichtfeld deklariert sind, dort greift noch die "alte" Überprüfung.

Grüßle Bernd
Logged

In theory, there is no difference between theory and practice. But, in practice, there is.
ruebenwurzel
WebsiteBaker Org e.V.

Offline Offline

Posts: 7973



WWW
« Reply #9 on: February 15, 2007, 10:50:07 AM »

Hallo,

aaaah ja, alles klar jetzt  grin. Nein an dieser funktion haben wir noch nix geändert.

Matthias
Logged
BerndJM

Offline Offline

Posts: 1764



« Reply #10 on: February 15, 2007, 11:28:12 AM »

Bin ich ja schon beruhigt, daß ich's nicht versemmelt habe rolleyes
Ist da "Besserung" in Sicht"?
Ist noch das allerletzte klitzekleine Manko an meiner 1. "Backware".

Grüßle Bernd
Logged

In theory, there is no difference between theory and practice. But, in practice, there is.
ruebenwurzel
WebsiteBaker Org e.V.

Offline Offline

Posts: 7973



WWW
« Reply #11 on: February 15, 2007, 12:20:32 PM »

Hallo,

du kannst dich gerne dran probieren. Der Überprüfungsscript steht in der view.php und kann sicherlich um die von dir gewünschten Optionen erweitert werden. Würde mich auf jeden Fall freuen, wenn sich jemand drum kümmern könnte.

Matthias
Logged
BerndJM

Offline Offline

Posts: 1764



« Reply #12 on: March 01, 2007, 12:32:14 PM »

Hallo Matthias,

ich hab mich dran versucht, aber renne da irgendwie an eine Wand (bin auch nicht grade der JavaScript Guru), ich vermute mal, mir geht's da nicht alleine so, sonst wäre es wohl schon implementiert. rolleyes
Es klemmt wohl daran, daß bei Checkboxen der "name" ein Array ist ... aber irgendwie komme ich da nicht weiter cry

Grüßle Bernd
Logged

In theory, there is no difference between theory and practice. But, in practice, there is.
BerndJM

Offline Offline

Posts: 1764



« Reply #13 on: March 02, 2007, 02:58:33 AM »

I've got it  cheesy
Anscheinend habe ich gestern Nachmittag "zu früh aufgehört zu denken" grin

Also, damit auch checkboxen als Pflichtfelder per JS überprüft werden, 2 klitzekleine Änderungen an der view.php

ca. Zeile 50:
Code:
// Function for generating a checkbox
if (!function_exists(make_checkbox)) {
function make_checkbox(&$n, $idx, $params) {
$field_id = $params[0];
$seperator = $params[1];
//$n = '<input class="field_checkbox" type="checkbox" id="'.$field_id.'" name="field'.$field_id.'" value="'.$n.'">'.'<font class="checkbox_label" onclick="javascript: document.getElementById(\''.$n.'\').checked = !document.getElementById(\''.$n.'\').checked;">'.$n.'</font>'.$seperator;
$n = '<input class="field_checkbox" type="checkbox" id="'.$n.'" name="field'.$field_id.'" value="'.$n.'">'.'<font class="checkbox_label" onclick="javascript: document.getElementById(\''.$n.'\').checked = !document.getElementById(\''.$n.'\').checked;">'.$n.'</font>'.$seperator;
}
ändern in:
Code:
// Function for generating a checkbox
if (!function_exists(make_checkbox)) {
function make_checkbox(&$n, $idx, $params) {
$field_id = $params[0];
$seperator = $params[1];
$n = '<input class="field_checkbox" type="checkbox" id="'.$field_id.'" name="field'.$field_id.'" value="'.$n.'">'.'<font class="checkbox_label" onclick="javascript: document.getElementById(\''.$n.'\').checked = !document.getElementById(\''.$n.'\').checked;">'.$n.'</font>'.$seperator;
//$n = '<input class="field_checkbox" type="checkbox" id="'.$n.'" name="field'.$field_id.'" value="'.$n.'">'.'<font class="checkbox_label" onclick="javascript: document.getElementById(\''.$n.'\').checked = !document.getElementById(\''.$n.'\').checked;">'.$n.'</font>'.$seperator;
}
also die auskommentierte Zeile wieder aktivieren und dafür die darauffolgende deaktivieren.

und ca. Zeile 170:
Code:
if($field['required'] == 1) {
$values[] = '<font class="required">*</font>';
$java_fields .= $java_tween.'"field'.$field_id.'"';
$java_titles .= $java_tween.'"'.$field['title'].'"';
$java_tween = ', ';
} else {
$values[] = '';
}
ergänzen mit:
Code:
if($field['required'] == 1) {
if ($field['type']=="checkbox") {
$field_id = $field_id.'[]';
}
$values[] = '<font class="required">*</font>';
$java_fields .= $java_tween.'"field'.$field_id.'"';
$java_titles .= $java_tween.'"'.$field['title'].'"';
$java_tween = ', ';
} else {
$values[] = '';
}

Das wars.

<klugscheiss>Da Checkboxen mit gleichem "name" intern sowieso als Arrays behandelt werde, kann man sich das Geraffel mit $idx oben ersparen und unten verbiegt man dann die $field_id für checkboxen zum Array (aus z.B. field5 wird field5[]) und schon wirds vom Javascript auch erkannt.</klugscheiss>

Grüßle Bernd
Logged

In theory, there is no difference between theory and practice. But, in practice, there is.
Pages: [1]   Go Up
Print
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.16 | SMF © 2011, Simple Machines Valid XHTML 1.0! Valid CSS!