Hallo,
komme ich irgendwo an die last_insert_id von einem Datenbank Eintrag der rex_form Klasse? Der Extension Point 'REX_FORM_SAVED" liefert mir ja nur true bzw. einen evt. Fehler zurück?
Wofür? Ich habe eine 2 Tabelle in die ich gewisse Werte von diesem Formular eintragen möchte, dort benötige ich jedoch die Id vom jeweiligen Eintrag. Ich habe auch schon versucht die rex_form zu erweitern. Dort sehe ich aktuell aber auch keine Möglichkeit an die Id zu kommen ...
Vielleicht kann mir dazu kurz jemand was sagen, evt. ist es ja ganz einfach und ich übersehe da einfach was.
Wäre cool - Danke!
Hallo,
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
-
- Beiträge: 21
- Registriert: 22. Jul 2007, 19:27
- runstop64
- Beiträge: 369
- Registriert: 23. Okt 2012, 21:34
- Wohnort: Hamburg
- Kontaktdaten: Website Facebook Twitter
Re: Last Insert Id
Hi,
dem EP werden auch das rex_form-Objekt und das rex_sql-Objekt übergeben:
https://github.com/redaxo/redaxo/blob/5 ... .php#L1361
Die zusätzlichen Werte erhälst du über
Daher müsste es eigentlich möglich sein, über die ID abzufragen:
https://github.com/redaxo/redaxo/blob/5 ... #L893-L899
dem EP werden auch das rex_form-Objekt und das rex_sql-Objekt übergeben:
https://github.com/redaxo/redaxo/blob/5 ... .php#L1361
Die zusätzlichen Werte erhälst du über
Code: Alles auswählen
$ep->getParam($variablenname)
Code: Alles auswählen
$sql->getLastId()
https://github.com/redaxo/redaxo/blob/5 ... #L893-L899
-
- Beiträge: 21
- Registriert: 22. Jul 2007, 19:27
Re: Last Insert Id
Hallo Daniel,
ja du hast vollkommen recht. Hier kommt auch das sql Objekt und damit kann man arbeiten ...
Danke für deinen Hinweis ...
ja du hast vollkommen recht. Hier kommt auch das sql Objekt und damit kann man arbeiten ...
Danke für deinen Hinweis ...
-
- Beiträge: 21
- Registriert: 22. Jul 2007, 19:27
Re: Last Insert Id
Hallo Daniel,
hätte da noch eine Zusatzfrage. Komme ich irgendwie an die Werte eines form raw Feldes? Ich nutze im Formular das raw Element um ein Array mit Kategorien zu erstellen. Das raw Feld taucht im rex_form Objekt auch auf ($form->getFieldsetElements()). Dennoch kann ich auf das Array so nicht zugreifen da es ja nur als html String zur Verfügung steht.
Gibt es beim rex_form Objekt eine Möglichkeit auf alle POST Werte zuzugreifen?
Danke für dein Feedback ...
hätte da noch eine Zusatzfrage. Komme ich irgendwie an die Werte eines form raw Feldes? Ich nutze im Formular das raw Element um ein Array mit Kategorien zu erstellen. Das raw Feld taucht im rex_form Objekt auch auf ($form->getFieldsetElements()). Dennoch kann ich auf das Array so nicht zugreifen da es ja nur als html String zur Verfügung steht.
Gibt es beim rex_form Objekt eine Möglichkeit auf alle POST Werte zuzugreifen?
Danke für dein Feedback ...
-
- Beiträge: 21
- Registriert: 22. Jul 2007, 19:27
Re: Last Insert Id
Also die derzeit einfachste Möglichkeit die ich gefunden habe ist die Kategorien zusätzlich in der ursprünglichen rex_form Tabelle abzuspeichern und dort die Kategorien als ganz normales Checkbox Feld zu hinterlegen. Jetzt landen die Kategorien zwar als String zusätzlich in dieser Tabelle, aber für Abfragen im Frontend kann ich die entsprechende neue Tabelle verwenden. Vielleicht gibt es da eine andere, bessere Möglichkeit - ich habe keine gefunden. Ich komme in meiner processCats nicht an das in rex_form definierte raw Element bzw. an das darin enthaltene Array und auch nicht an die globalen $_POST Werte.
Code: Alles auswählen
public static function processCats($ep)
{
$sql = $ep->getParam('sql');
$form = $ep->getParam('form');
$infraId = ($_GET['id']) ? intval($_GET['id']) : $sql->getLastId();
$formValues = $form->fieldsetPostValues($form->getFieldsetName());
self::insertCats($infraId, $formValues['kategorien']);
}