Webform Validierung klappt nicht
Eingetragen von caw (2758)
am 09.12.2008 - 09:18 Uhr in
am 09.12.2008 - 09:18 Uhr in
Die Validierung im Webform Modul funktioniert nicht. FOlgendes habe ich probiert:
<?php
function webform-client-form-1_validate($form, &$form_state) {
// 'name' ist der Name des Feldes, dass Du prüfen willst
$txName = $form_state['values']['submitted[name]'];
if ((strlen($txName) < 5) && (strlen($txName) > 100) ) {
form_set_error('name', t('Länge fehlerhaft...'));
}
}
?>
und
<?php
// 'name' ist der Name des Feldes, dass Du prüfen willst
$txName = $form_state['values']['submitted[name]'];
if ((strlen($txName) < 5) && (strlen($txName) > 100) ) {
form_set_error('name', t('Länge fehlerhaft...'));
}
?>
Keine Ahnung warum.
Alle Felder sind auf "erforderlich" gesetzt.
Brauche dringend Hilfe! Auch bezahlte!
- Anmelden oder Registrieren um Kommentare zu schreiben
Funktionsname
am 10.12.2008 - 15:22 Uhr
Moin!
Versuch mal
<?php
function webform_client_form_1_validate($form, &$form_state) { ... }
?>
Falls der von Dir verwendete Funktionsname korrekt ist (also in die Funktion gesprungen wird), dann sieht
<?php
$form_state['values']['submitted[name]'];
?>
irgendwie seltsam aus. Was willst Du damit machen? Soll heissen, auf welchen Wert willst Du zugreifen?
Vielleicht:
<?php
$form_state['values']['submitted']['name']];
?>
hth,
Stefan
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
egal wie ich die funktion
am 12.12.2008 - 09:10 Uhr
egal wie ich die funktion benenne, es klapppt nicht.
<?php
$form_state['values']['submitted']['name']];
?>
hatte ich auch schon... hat auch nicht funktioniert.
ich habe das direkt von der form_api beispielen (unter drupal) kopiert.
alles für drupal 6.
<?php
$form_state['values']['submitted[name]'];
?>
das habe ich benutzt, weil die felder so im formualr benannt sind. und man soll doch die feldernamen benutzen, oder nicht?
C.A.W. Webdesign
$form_state
am 12.12.2008 - 09:41 Uhr
Moin.
<?php
$form_state['values']['submitted[name]'];
?>
das habe ich benutzt, weil die felder so im formualr benannt sind. und man soll doch die feldernamen benutzen, oder nicht?
Ja, prinzipiell schon. Allerdings musst Du Dich schon an die Struktur des Arrays halten.
Hast Du Dein error_log in der php.ini aktiviert? Also
log_errors = On
underror_log = pfad/zum/php_error.log
.Wenn ja, mach mal:
<?php
error_log(print_r($form_state, 1));
?>
in der Funktion, wo Du Deinen Code aufrufst. Dann siehst Du, wie das Array und die Unterobjekte aufgebaut sind. Das Ergebnis kannst Du ja mal posten, falls Du damit nicht klarkommen solltest.
Ohne error_log sieht das so aus:
<?php
print '<pre>';
print_r($form_state);
print '</pre>';
?>
hth,
Stefan
Tipp: Beachte die Verhaltensregeln des DrupalCenter.
Sind das nicht Grundfunktion
am 12.12.2008 - 12:02 Uhr
Sind das nicht Grundfunktion die man mit Webform machen kann? Also die Länge beschränken?
Und wegen values, ich glaube das war so:
<?php
$form['profil']['name']=array(...)
if($form_state['values']['name']=='') {
...
}
?>
----------------------------------------
Alle Angaben ohne Gewähr!!:D
http://www.tobiasbaehr.de/
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen
Das Verhältnis anderen zu helfen muss höher sein, als von anderen Hilfe zu erfragen/erwarten.
Hi die maximale Länge
am 12.12.2008 - 13:00 Uhr
Hi die maximale Länge kannst du wirklich über Webform selbst einstellen, nur die Mindestlänge musst du extra machen:
<?php
$txName = $form_state['values']['submitted_tree']['name'];
if (strlen($txName) < 5) {
form_set_error('submitted][name', t('Länge fehlerhaft...'));
}
?>
gruß pebosi
gruß pebosi
--
https://pebosi.net
also keine ahnung wie ich da
am 13.12.2008 - 08:52 Uhr
die validierung läuft. warum nun auch immer...
aber das additional processing http://drupal.org/node/323666 funktioniert nicht...
da bekomme ich dann nach absenden eine leere seite angezeigt
C.A.W. Webdesign
Also die Handbuchseite ist
am 13.12.2008 - 10:49 Uhr
Also die Handbuchseite ist auch für D5, aber der 3. Kommentar zeigt ein Beispiel für D6.
----------------------------------------
Alle Angaben ohne Gewähr!!:D
http://www.tobiasbaehr.de/
Gelöste Forenbeiträge mit [gelöst] im Titel ergänzen
Das Verhältnis anderen zu helfen muss höher sein, als von anderen Hilfe zu erfragen/erwarten.
ds sehe ich selber!
am 13.12.2008 - 13:00 Uhr
ds sehe ich selber!
C.A.W. Webdesign