|
|
| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
roebert Neuer User
Anmeldungsdatum: 23.07.2009 Beiträge: 2
|
23.07.2009 14:15 mdb2, prepare und date |
|
|
Hallo,
starte eben mit pear und habe auch schon bißchen was zum laufen bekommen, bloß ein Datum in die DB zu schreiben gelingt mir nicht
hier mal etwas Code
| PHP: | <?php if (isset($_POST['StartDate']) && isset($_POST['EndDate']))
{
$anfang = new Date(str_replace('.','',$_POST['StartDate']) . "000000");
$ende = new Date(str_replace('.','',$_POST['EndDate']) . "000000");
echo substr($ende->getDate(),0,10);
$date_check = Date::compare($anfang, $ende);
if ($date_check == -1)
{
$types = array('date', 'text');
$sth = $mdb2->prepare('insert into dl_dates (datum) values(?) where typ=?', $types, MDB2_PREPARE_MANIP);
if (PEAR::isError($sth))
{
die($sth->getMessage() . ', ' . $sth->getDebugInfo());
}
$data = array(substr($ende->getDate(),0,10), "end");
$affectedRows = $sth->execute($data);
$sth2 = $mdb2->prepare('insert into dl_dates (datum) values(?) where typ=?', $types, MDB2_PREPARE_MANIP);
if (PEAR::isError($sth2))
{
die($sth2->getMessage() . ', ' . $sth2->getDebugInfo());
}
$data2 = array(substr($anfang->getDate(),0,10), "anfang");
$affectedRows2 = $sth2->execute($data2);
if ($affectedRows == 1 && $affectedRows2 == 1)
{
echo "Anfangs- und Enddatum erfolgreich abgespeichert";
}
}
else if ($date_check == 0 || $date_check == 1)
{
echo "Anfang vor End-Datum bitte";
}
} |
es kommen 2 Datumsangaben aus dem Formular an und diese sollen in die DB, jedoch bekomme ich nur Fehlermeldungen wie:
MDB2 Error: syntax error, _doQuery: [Error message: Could not execute statement] [Last executed query: PREPARE MDB2_STATEMENT_mysql_84b69e76848317c3dc2eb71c0203a412 FROM 'insert into dl_dates (datum) values(?) where typ=?'] [Native code: 1064] [Native message: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where typ=?' at line 1]
Kann ich mir irgendwie die query ausspucken lassen, die er da vorbereitet?
Oder sieht jmd einen anderen offensichtlichen Fehler? |
|
| Nach oben |
|
 |
roebert Neuer User
Anmeldungsdatum: 23.07.2009 Beiträge: 2
|
23.07.2009 14:42 |
|
|
ich bin doof!
sollte ja auch ein update und kein insert werden!
| PHP: | <?php $types = array('date', 'text');
$sth = $mdb2->prepare('update dl_dates set datum=? where typ=?', $types, MDB2_PREPARE_MANIP);
if (PEAR::isError($sth))
{
die($sth->getMessage() . ', ' . $sth->getDebugInfo());
}
$data = array(substr($ende->getDate(),0,10), "end");
$affectedRows = $sth->execute($data);
$sth2 = $mdb2->prepare('update dl_dates set datum=? where typ=?', $types, MDB2_PREPARE_MANIP);
if (PEAR::isError($sth2))
{
die($sth2->getMessage() . ', ' . $sth2->getDebugInfo());
}
$data2 = array(substr($anfang->getDate(),0,10), "start");
$affectedRows2 = $sth2->execute($data2); |
so klappt alles! |
|
| Nach oben |
|
 |
|
|
|
Zu Deinen Favoriten hinzufügen
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum nicht posten Du kannst Dateien in diesem Forum herunterladen
|
|