Mailinglisten-Archive |
Hallo, ich habe ein mir vollkommen unverständliches Problem, vielleicht kann mir ja jemand eine Erklärung geben. Ich schreibe ein Datenbankinterface und will per hidden parameter den Inhalt von $_SESSION['work'] weiterreichen. Das klappt in einem Fall im anderen nicht. ###################################### if ($_SESSION['work'] == delete){ /******************************************************** *löschen und feedback * *Datenbankabfrage = Eingabe + Verarbeitung * *hier direkt im script, da interner Bereich * *zuallererst die Authentifizierung (siehe ganz am Ende) * *********************************************************/ /*require_once "DB.php"; $host = 'localhost'; $db_name = 'literatur'; $dsn = "pgsql://".$_SESSION['user'].":".$_SESSION['pass']."@$host/$db_name"; $db = DB::connect($dsn); $db->query("DELETE FROM museum WHERE id = '".$_POST['id']."'"); //Datenbankverbindung beenden $db->disconnect();*/ $tpl->setVariable("SEARCH", "Der Datensatz '".$_POST['title']."' von '".$_POST['authors']."' mit der id ".$_POST['id']." wurde aus der Datenbank gelöscht"); $tpl->parse("arbeit"); //Der Backbutton $form = new HTML_QuickForm('firstForm','','working.php'); //Layout der Formen verändern $renderer =& $form->defaultRenderer(); $renderer->setFormTemplate('<table width="100%" border="0" cellpadding="0" cellspacing="0"> <form{attributes}>{content}</form></table>'); $renderer->setHeaderTemplate('<tr><td align="left" colspan="2"><p><b>{header}</b></p></td></tr>'); $form->addElement('hidden', 'work', $_SESSION['work']); <----------####hier geht es nicht##### $form->addElement('submit', null, 'nächsten Satz löschen'); $t = $form->toHtml(); $tpl->setVariable("BACK","$t"); } elseif ($_SESSION['work'] == add){ /******************************************************** *einfügen und feedback * *Datenbankabfrage = Eingabe + Verarbeitung * *hier direkt im script, da interner Bereich * *zuallererst die Authentifizierung (siehe ganz am Ende) * *********************************************************/ require_once "DB.php"; $host = 'localhost'; $db_name = 'literatur'; $dsn = "pgsql://".$_SESSION['user'].":".$_SESSION['pass']."@$host/$db_name"; $db = DB::connect($dsn); $db->query("INSERT INTO museum VALUES (nextval('museum_id_seq'::text),'".$_POST['title']."', '".$_POST['year']."', '".$_POST['authors']."', '".$_POST['editor']."', '".$_POST['abstract']."', '".$_POST['journal']."', '".$_POST['volume']."', '".$_POST['pagebegin']."', '".$_POST['pageend']."', '".$_POST['series']."', '".$_POST['number']."', '".$_POST['address']."', '".$_POST['institution']."', '".$_POST['publisher']."', '".$_POST['language']."', '".$_POST['isbn_issn']."', '".$_POST['standort']."', '".$_POST['anmerkung']."', '".$_POST['rezension']."', '".$_POST['citationtype']."', 'now', '".$_POST['keywords']."')"); //Datenbankverbindung beenden $db->disconnect(); $tpl->setVariable("SEARCH","Der Datensatz mit dem Titel: '".$_POST['title']."' von '".$_POST['authors']."' wurde der Datenbank hinzugefügt" ); $tpl->parse("arbeit"); //Der Backbutton $form = new HTML_QuickForm('firstForm','','working.php'); //Layout der Formen verändern $renderer =& $form->defaultRenderer(); $renderer->setFormTemplate('<table width="100%" border="0" cellpadding="0" cellspacing="0"> <form{attributes}>{content}</form></table>'); $renderer->setHeaderTemplate('<tr><td align="left" colspan="2"><p><b>{header}</b></p></td></tr>'); $form->addElement('hidden', 'work', $_SESSION['work']); <------------- ####hier geht es##### $form->addElement('submit', null, 'nächsten Satz hinzufügen'); $t = $form->toHtml(); $tpl->setVariable("BACK","$t"); } ##################################################### Sobald ich im Falle von $_SESSION['work'] == delete aus $form->addElement('hidden', 'work', $_SESSION['work']); $form->addElement('hidden', 'anders', $_SESSION['work']); mache geht es. Irgendwie weiß ich nicht mehr weiter. Dankbar für jeden Hinweis Matthias -- Entweder man lebt, oder man ist konsequent. -- Erich Kästner
php::bar PHP Wiki - Listenarchive