WebSite X5Help Center

 
Fritz Muhmenthaler
Fritz Muhmenthaler
User

Emailformular saveToDB lastInsertId zurückgeben  de

Autor: Fritz Muhmenthaler
Visited 1597, Followers 1, Udostępniony 0  

in x5engine.php folgende Ergänzung in saveToDb:

        // Save the fields data
        $query = "INSERT INTO `" . $table . "` (" . implode(",", $names) . ") VALUES (" . implode(",", $values) . ")";
        $db->query($query);
        $id = $db->lastInsertId();
        $db->closeConnection();
        return $id;  //true;

Damit wird sichergestellt, dass der korrekte Wert für lastInsertId zurückgegeben wird, wenn gleichzeitig mehrere Anwender ein EmailFormular ausfüllen und absenden.

in imEmailform folgende Ergänzung:

  $lastId = $form->saveToDb($db['host'], $db['user'], $db['password'], $db['database'], 'table');
  if (!$factno) die("Unable to connect to db");

  $location = 'Location: ../bestätigungsseite.html?lastid=' .$lastId;
  @header($location);

Mit diesen Anpassungen wird der Autoincrement-Wert an die Bestätigungsseite weitergegben und kann dort z.B. angezeigt (z.B. Bestellnummer, Rechnungsnummer) oder weiterverabeitet werden.

Posted on the