Seite 14 von 24
Verfasst: Di 9. Aug 2005, 22:44
von Enigma
rapma hat geschrieben:die Fehlermeldung wird an genau der richtigen Stelle ausgewiesen, nur

leider auch schon bevor der User irgendwas eingegeben hat, also ist es jetzt Bestandteil des Formulars.
Fällt dir dazu noch was ein?
Ups, übersehen...
Ich denke, wenn Du die Zeile
in
änderst, sollte es korrekt funktionieren. Hoffe ich...

Sonst muss ich es doch selbst mal testen.
Gruß,
Jan
Verfasst: Mi 10. Aug 2005, 10:30
von rapma

Hallo Jan
vielen, vielen Dank für deine große Hilfe, es funktioniert jetzt einwandfrei, wenn der User ein Feld vergisst oder falsche Werte eingibt, erscheint am Anfang des Formulars für jeden sichtbar die Fehlermeldung.
liebe Grüsse
Manuela
Verfasst: So 4. Sep 2005, 16:48
von bruderbarnabas
Hi Leute,
tolles Modul, aber ich hab ein kleines Problem bei dem ich nicht weiterkomme und das für euch bestimmt ein Zuckerschlecken ist
Und zwar benutze ich mehrere Felder zur Eingabe von "Name", Telefon, Email ect.
Das Problem mit Zahlen und Text in einem "Text"feld habe ich hinbekommen.
Was allerdings nicht funktioniert sind die Zeichen "ß" im $feld['valid'] == 'textmitzahlen'
und "@", "_" und "." im $feld['valid'] == 'email'
Das sind meine Abfragen:
// regular expression prüfungen
if (!empty($feld['valid']) && $feld['valid'] == 'simpletext' && !eregi("^[öäüéàèâêîça-z-]*$",$_POST["{$feld['name']}"])) return false;
if (!empty($feld['valid']) && $feld['valid'] == 'text' && !eregi("^[ .,;!?()öäüéàèâêîça-z-]*$",$_POST["{$feld['name']}"])) return false;
if (!empty($feld['valid']) && $feld['valid'] == 'integer' && !eregi("^[0-9]*$",$_POST["{$feld['name']}"])) return false;
if (!empty($feld['valid']) && $feld['valid'] == 'float' && !eregi("^[0-9]*[.]{0,1}[0-9]*$",$_POST["{$feld['name']}"])) return false;
if (!empty($feld['valid']) && $feld['valid'] == 'date' && !eregi("^[0-9]{1,2}.[0-9]{1,2}.[0-9]{2}$",$_POST["{$feld['name']}"])) return false;
if (!empty($feld['valid']) && $feld['valid'] == 'textmitzahlen' && !eregi("^[ .,;!?()öäüéàèâêîça-z0-9-]*$",$_POST["{$feld['name']}"])) return false;
if (!empty($feld['valid']) && $feld['valid'] == 'email' && !eregi("^[öäüéàèâêîç_a-z0-9-]+(\.[öäüéàèâêîç_a-z0-9-]+)*@[öäüéàèâêîça-z0-9-]+(\.[öäüéàèâêîça-z0-9-]+)*$",$_POST["{$feld['name']}"])) return false;
könnt Ihr mir da helfen?
Das Beispiel des Formulars seht ihr hier:
http://bernd-thierfelder.de/cms/front_c ... hp?idcat=7
Danke euch!
Bye
Basti
Verfasst: Mo 5. Sep 2005, 22:59
von Godlike
kummer hat geschrieben:zeilenumbruchproblem behoben
das problem bei zeilenumbrüchen in textfeldern habe ich lösen können. dazu muss in der methode 'formularFeldKorrekt()' folgende zeile zusätzlich eingefügt werden:
Code: Alles auswählen
if (!empty($feld['valid']) && $feld['valid'] == 'textmitumbruch' && !eregi("^[ \n\r.,;!?()öäüéàèâêîça-z0-9-]*$",$_POST["{$feld['name']}"])) return false;
in der konfiguration muss dann einfach anstatt 'valid:text' 'valid:textmitumbruch' verwendet werden.
man kann selbstverständlich auch einfach die bestehende zeile 'text' durch 'textmitumbruch' ersetzten und dann in 'text' umbenennen. allerdings dürfte es nie schaden, eine vielfalt an regex-prüfungen zur verfügung zu haben. es könnte ja sein, dass in einem einzelfall genau der ausschluss von zeilenumbrüchen gefragt sein könnte.
gruss,
andreas
Hallo Andreas,
Ich weiss leider nicht so genau wo ich diesen einsetzen soll?
Gruss,
Godlike
Verfasst: Mo 5. Sep 2005, 23:34
von Godlike
Und noch eine Frage, wo kann man diesen "Style" einsetzen? Der Textfeld sollte verschönert werden.
Code: Alles auswählen
style="background-color:rgb(204,204,204); border-width:1px; border-color:rgb(102,102,102); border-style:solid;"
Gruss,
Godlike
Verfasst: Di 6. Sep 2005, 07:02
von kummer
Godlike hat geschrieben:Und noch eine Frage, wo kann man diesen "Style" einsetzen? Der Textfeld sollte verschönert werden.
Code: Alles auswählen
style="background-color:rgb(204,204,204); border-width:1px; border-color:rgb(102,102,102); border-style:solid;"
Gruss,
Godlike
du kannst einfach einen generellen style im css definieren, der für alle textfelder geltung hat. ist am einfachsten und führt zu maximaler konsistenz. immer vorausgesetzt natürlich, dass du nicht im einzelfall (also nur für dieses formular) andere stile benötigst.
Verfasst: Di 6. Sep 2005, 08:19
von emergence
kummer hat geschrieben:du kannst einfach einen generellen style im css definieren, der für alle textfelder geltung hat. ist am einfachsten und führt zu maximaler konsistenz. immer vorausgesetzt natürlich, dass du nicht im einzelfall (also nur für dieses formular) andere stile benötigst.
wenn man es dennoch dezitiert setzen will, kann man das hier einbauen
->
http://contenido.org/forum/viewtopic.php?p=46196#46196
eine anmerkung dazu findet sich ebenso im ersten teil dieses postings ->
http://contenido.org/forum/viewtopic.php?p=50504#50504
Verfasst: Do 8. Sep 2005, 23:50
von Godlike
Es wurden eine paar Anderungen vorgenommen. Vielen Dank, das Einfügen von Styles klappt jetzt wunderbar.
emergence hat geschrieben:etwas wie
style:"width:600px; color:blue;";;;;;
geht nun ohne weiteres...
Code: Alles auswählen
function formularInterpretation(&$formular) {
$felder = split('###',$formular);
for ($i=1;$i<count($felder);$i=$i+2) {
$tempField = trim(html_entity_decode($felder[$i]));
$container = "";
if (preg_match_all('/("[^"]+")/i', $tempField, $matches)) {
$x = 0;
foreach ($matches[0] as $match) {
$x++;
$tempField = str_replace ($match , "###".$x."###", $tempField) ;
$container[$x] = str_replace ('"', "", $match);
}
}
$attributes = split(';',$tempField );
foreach ($attributes as $attribut) {
if ($attribut != "") {
$namewert = split(':',trim($attribut));
if (preg_match('/###(\d)###/i', $namewert[1] , $match)) {
$namewert[1] = $container[intval($match[1])];
}
if ($namewert[0] != 'option' && $namewert[0] != 'optionvalue') {
$feld["{$felder[$i]}"]["{$namewert[0]}"] = $namewert[1];
} else {
$feld["{$felder[$i]}"]["{$namewert[0]}"][] = $namewert[1];
}
}
}
}
return $feld;
}
Code: Alles auswählen
$style = $attribute['style'];
if ($sent && !$this->formularFeldKorrekt(&$attribute)) $style.=" background-color:{$this->form['colorError']};";
if ($style != "") $style = 'style="'.$style.'"';
if (!empty($attribute['class'])) { $style = 'class="'.$attribute['class'].'" '.$style; }
absender in der mail zum antworten
Verfasst: Mi 14. Sep 2005, 22:31
von benzomat
hallo Jan (Enigma),
dein formular habe ich erfolreich eingebaut, klappte ganz gut.
ich habe noch nicht so große ahnung von php und so und mir fehlt die funktion, dass in der mail die absender mailadresse und der name drin steht - damit man gleich auf antworten gehen kann. die änderungen mit dem austauschen der einen zeile auf seite 10 kann ich bei deinem code nicht verstehen.
kannst du mir bitte helfen, wo ich da was ändern muss?
ansonsten ist der code, der von seite 12 geblieben.
in der tabelle im artikel muss ich ja nix ändern...
ach ja, was gebe ich wo ein, um in der mail auch datum und die zeit zu haben?
gibt es noch eine neueree version als die von seite 12??
danke schon mal vorab,
grüße aus kärnten,
Hans
meine version 4.4.5-r1
Verfasst: Mi 5. Okt 2005, 10:48
von fancypants.ch
hi
ich habe das formular mit der erweiterung von enigma (Seite 12) erfolgreich eingebaut.
es funktioniert alles einwandfrei. jedoch habe ich eine frage zur bestätigungsseite. wie der name schon sagt, sollte diese seite ja zur bestätigung dienen.
doch da ich eine druckvorschau benütze, (ein modul), erscheint die bestätigung nicht im druckvorschau fenster, sondern lediglich der
kann mir jemand helfen?
danke im voraus. gruss
Verfasst: Mi 5. Okt 2005, 14:33
von Pillendreher
sag mal kummer, gibt es eine möglichkeit bei dem email-formular auch einen anhang mit ranzubasteln (z.B. ein Bild)?
wenn ja, weißt du wie?
gruß
simon
Verfasst: Fr 7. Okt 2005, 11:17
von GOLD
kann mir jemand sagen was ich ändern muss, um einen weiteren empfänger einzubauen?
Verfasst: So 9. Okt 2005, 23:07
von dampfradio
@kummer
Habe ein Problem mit der Validierung der Formulardaten und dem FCK-Editor: Ich denke mal, weil der FCK Umlaute automatisch etc. im Text als Entities encoded, funktioniert die Validierung z.B. von Angaben mit Umlauten nicht mehr richtig. Er moniert irgendwie alle Angaben mit Umlauten. Bin mit den regex nicht wirklich sehr vertraut..
Wie kann ich da Abhilfe schaffen?
--
4.5.3b MR stese 1.05 mit FCK2.0
Verfasst: Mo 10. Okt 2005, 11:47
von Enigma
dampfradio hat geschrieben:Habe ein Problem mit der Validierung der Formulardaten und dem FCK-Editor: Ich denke mal, weil der FCK Umlaute automatisch etc. im Text als Entities encoded, funktioniert die Validierung z.B. von Angaben mit Umlauten nicht mehr richtig. Er moniert irgendwie alle Angaben mit Umlauten. Bin mit den regex nicht wirklich sehr vertraut..
Wie kann ich da Abhilfe schaffen?
Ich verstehe ehrlich gesagt nicht so recht, was der FCKeditor damit zu tun hat. Die Zeichen für die Validierung sind im PHP-Code des Moduls abgelegt, und wenn etwas in das definierte Formular eingegeben wird, hat der FCKeditor auch nichts damit zu tun...
Gruß,
Jan
Verfasst: Mo 10. Okt 2005, 12:22
von dampfradio
Es ist so: Es scheint so, als würden bei mir (v4.5.3b MR von stese) alle im Quellcode vorkommenden Umlaute automatisch in Entities gewandelt (in den Systemeinstellungen im Backend ist XHTML aktiviert). Ob es mit dem FCK zusammenhängt oder in Con direkt passiert, weiß ich ehrlich gesagt nicht. Und daher funktioniert auch die Formular-Validierung nicht mehr. Siehe PM.
Über Hilfe wäre ich sehr sehr dankbar.