Hallo,
ich hab das mit meinem bescheidenen Wissen mal versucht und hatte tatsächlich ein wenig Erfolg :-) Eines jedoch bekomm ich nicht gebacken: Wenn ein Bearbeiter oder ein Status in mehreren Datensätzen gleich ist, werden ALLE geändert, wenn ich einen ändere. Auch bekomme ich die neuen Werte erst dann angezeigt, wenn ich die Seite neu lade bzw. das Skript nochmals laufen lasse? Ich füge das aktuelle Skript mal mit hier ein, vielleicht kann ja jemand kurz drüber kucken.
Danke schonmal im Voraus und schönes WE;-)
<?php
$con = mysql_connect("Datenbankserver","Benutzer","Passwort");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("Datenbankname", $con);
$sql = "SELECT * FROM aufgaben";
$db_erg = mysql_query($sql);
if (! $db_erg)
{
die('Ungültige Abfrage: ' . mysql_error());
}
function anzeigen($db_erg) {
# nur Anzeige
$bearbeiter_list = array('b1','b2','b3','b4','b5');
$status_list = array('offen','in Bearbeitung','erledigt');
while ($zeile = mysql_fetch_array($db_erg, MYSQL_ASSOC)) {
echo "Thema: " . $zeile['topic'] . "<br>";
echo '<form method="post" name="living_protocol" id="living_protocol" action="mysql_test.php">';
# Bearbeitungsliste
echo 'Verantwortlich: <select name="option_bearbeiter">';
foreach($bearbeiter_list as $bearbeiter) {
echo '<option' . (($bearbeiter == $zeile['bearbeiter']) ? " selected " : "") . '>' . $bearbeiter . '</option>';
}
echo '</select><br>';
# Statusliste
echo 'Status: <select name="option_status">';
foreach($status_list as $status) {
echo '<option' . (($status == $zeile['status']) ? " selected " : "") . '>' . $status . '</option>';
}
echo '</select><br>';
echo "Bemerkung: " . $zeile['bemerkung'] . "<br>";
echo '<input type="hidden" name="bearbeiter_original" value="' . $zeile['bearbeiter'] . '">';
echo '<input type="submit" value="speichern">';
echo '</form>';
}
}
if(empty($_REQUEST['bearbeiter_original'])) {
anzeigen($db_erg);
} else {
# nur Update
$update = mysql_query("UPDATE aufgaben Set bearbeiter = '" . $_REQUEST['option_bearbeiter'] . "' WHERE bearbeiter = '" . $_REQUEST['bearbeiter_original'] . "'");
$update = mysql_query("UPDATE aufgaben Set status = '" . $_REQUEST['option_status'] . "' WHERE bearbeiter = '" . $_REQUEST['bearbeiter_original'] . "'");
anzeigen($db_erg);
}
mysql_free_result($db_erg);
?>