Hallo,
hab ein Problem mit dem Schreiben von POST-Formulardaten in die DB.
Formularverarbeitung und INSERT hab ich mit der Typo3-API gemacht, soweit so gut.
1) bei Reload nach erfolgreichem Formularversand bleiben die Formulardaten irgendwo "am leben", egal was ich mache, und werde beim nächsten Nutzer dann wiederum anstelle der aktuellen Eingabe in die DB geschrieben.
2) sobald die Seite aufgerufen wird, startet der INSERT, noch bevor das Formular abgesendet wurde.... und schriebt eben die alten Formulardaten rein.
HILFE!
Hier der Code:
das Formular:
</form>
<input type="text" name="post1" value="">Text1
<input type="text" name="post2" value="">Text2
<input type="submit" name="Absenden!"/>
</form>
In der Plugin-Klasse:
// Formularverarbeitung
// POST-Parameter in Array schreiben
$dataArr['post1']= t3lib_div::_POST('post1');
$dataArr['post2']= t3lib_div::_POST('post2');
//DB INSERT in Tipptabelle
$insertArray = array(
'pid' => $GLOBALS['TSFE']->id, //ID der Seite auf der das Plugin läuft
'nutzerid' => $userid, //FE user
'eintrag1' => $dataArr['post1'],
'eintrag2' => $dataArr['post2']
);
$insertQuery = $GLOBALS['TYPO3_DB']->INSERTquery('tx_myext_tabelle', $insertArray);
$res = $GLOBALS['TYPO3_DB']->sql(TYPO3_db, $insertQuery);
//hab alle Arten von Variablenleerung ausprobiert...
unset ($dataArr['post1']);
unset ($dataArr['post2']);
unset ($insertQuery);
Egals was ich mache, die Formualrparameter des voherigens Tipps bleiben im System, unzerstörbar wie die Zombies.
Bin PHP Anfänger und kenne Typo3 bisher eher als Admin. Jetzt muss ein FE-Plugin gebaut werden. Technisch geht es um ein gewöhnliches Formular, dass Werte in eine extra DB-Tabelle schreiben soll.