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