Zum Inhalt springen

PHP Problem onsubmit validate

Erstellt am 10. August 2008 · 4 Antworten · letzte Antwort am 10. August 2008

Tags: Frage

nomawie ·

Hallo,
ich versuche gerade eine onsubmit üerprüfung für julle_events einzubauen. Das ist mein Ansatz:

$fullTable .= '<form name="'.$formName.'" method="post" enctype="multipart/form-data" onsubmit="return validateForm('tx_julleevents_participants_form','tx_julleevents_pi1[DATA][tx_julleevents_participants][firstname]_feVal','','','')">';

Leider krieg ich immer folgenden Error:
Parse error: syntax error, unexpected T_STRING in /var/www/vhosts/XXXX/typo3conf/ext/julle_feedit/class.tx_jullefeedit.php on line 167

Das nötige Javascript hab ich per Typoscript eingebunden:
<link rel="stylesheet" type="text/css" href="typo3temp/stylesheet_2743b77a43.css" />
<script type="text/javascript" src="t3lib/jsfunc.validateform.js"></script>
<title>Veranstaltungen</title>

Ein Ausschnitt des Formulars mit leerem onsubmit:
<form name="tx_julleevents_participants_form" method="post" enctype="multipart/form-data" onsubmit=""><table cellspacing="0"><tr><td class="tx-julleevents-pi1-editAdd-HCell"><p>Vorname</p></td><td class="tx-julleevents-pi1-editAdd-EditCell"><p><input type="text" maxlength="" value="" name="tx_julleevents_pi1[DATA][tx_julleevents_participants][firstname]_feVal" onchange="feedit_tx_julleevents_participants_formGet('tx_julleevents_pi1[DATA][tx_julleevents_participants][firstname]','','','0','','');" /></p></td></tr><input

Ich vermute dass ich die validateForm falsch verwende aber leider weiß ich nicht wie sonst

einpraegsam.​net ·

Das ist eine PHP Fehlermeldung, und wenn ich mir deinen Code so ansehe, kann ich auch verstehen, warum der PHP Parser abbricht:

$bla = '<input onsubmit="return bla('wert','wert2')">';

Fehler erkannt?

nomawie ·

Leider nein. Bin nicht ganz so fit in PHP. Den einzigen Unterschied den ich sehe ist die Konkatenation aber daran kanns nicht liegen

nomawie ·

Klasse vielen Dank. Meine erste funktionierende Extensionanpassung #giggle#

Für alle die auch gerne eine Überprüfung bei julle_events haben wollen hier die Lösung:
Plugin julle_feedit, Datei class.tx_jullefeedit.php Zeile 167 durch folgende ersetzen:

$fullTable .= '<form name="'.$formName.'" method="post" enctype="multipart/form-data" onsubmit="return validateForm(\'tx_julleevents_participants_form\',\'tx_julleevents_pi1[DATA][tx_julleevents_participants][firstname]_feVal,Vorname,tx_julleevents_pi1[DATA][tx_julleevents_participants][lastname]_feVal,Nachname,tx_julleevents_pi1[DATA][tx_julleevents_participants][email]_feVal,Email\',\'\',\'\',\'\')">';

Dadurch wird Vorname, Nachname und Email auf eine Eingabe überprüft. Lässt sich leicht auf weitere Felder erweitern. Das nötige Javascript ist von Typo3 selber und muss im <head>-Bereich per Typoscript eingebunden werden. Ich hab mir dafür ein EXT-Template erstellt. Viel Erfolg