-
SQL Update per klick
Versuche gerade mit einem Formular ein Update der Datenbank hinzubekommen.
Es klappt leider nicht, vielleicht weiß jemand von euch Rat.
Habe diesen Code vorab im Template drinnen.
PHP
PHP-Code:
<?php
//zum Test
$table = "tl_xxx";
$id = "1";
$field = "name";
$value = "Matthias";
if(isset($_POST['submit'])){
$this->import('Database')
$set = array('$field' => '$value');
$this->Database->prepare("UPDATE $table %s WHERE id=$id ")->set($set)->execute();
}
?>
HTML
Code:
<form action=''>
<input type='submit' value='Speichern' class='save'>
</form>
Vorab habe ich nur einen Button drinnen.
Später möchte ich die Daten aus dem Formular verwenden.
lg Matthias
-
Hast du schon probiert, ob dir "Formular-Daten speichern" genügen würde?
Ansonsten mach mal folgende Änderungen:
PHP
PHP-Code:
<?php
//zum Test
$table = 'tl_xxx';
$id = 1;
$field = 'name';
$value = 'Matthias';
if(Input::getInstance()->post('FORM_SUBMIT') == 'dbchange') // Mit form_submit arbeiten // Input::post() bei Contao 3
{
$arrSet = array($field => $value); // Keine Anführungszeichen
Database::getInstance()->prepare("UPDATE $table %s WHERE id=?")->set($arrSet)->execute($id); // Variablen in execute()
}
?>
HTML
Code:
<form action=''>
<input type="hidden" name="FORM_SUBMIT" value="dbchange">
<input type="submit" value="Speichern" class="save">
</form>
-
Super, danke :)
Werde ich gleich mal ausprobieren.
lg