Hallo Leute!
Ich habe folgendes Problem und hoffe dass mir jemand dabei helfen kann, ich komme einfach nicht auf einen Lösungsweg.
Zu Beginn:
Ich habe in einer Datenbank ein Kinoprogramm gespeichert, mit Namen, Spieldauer, Altersfreigabe etc.
Ich rufe das Programm über eine while schleife in ein Formular ab.
Also habe ich nun Eingabefelder mit den Inhalten (Namen, Spieldauer, Altersfreigabe etc.)
Ich möchte nun, dass wenn man auf den "Speichern" Button klickt, dass die Angaben im Formular übernommen werden, jedoch gelingt mir dies nicht so recht.
Beispiel:
http://www.cine-royal.de/login/index2.php
Nick: test Pass: test
Es sind 2 Einträge in der DB, die aufgelistet werden, nun möchte ich wenn ich den ersten Eintrag editiere, mit dem Click auf Speichern, diese Eingaben auch gerne in der DB gespeichert haben.
Zur Zeit ist es so, dass die Eingaben des 2. Eintrags in den ersten gespeichert werden.
Zum Verständnis hier der Code:
(falls es hilft: auf $programm[0] ist die jeweilige ID gespeichert.)
Hier der Anfang der PHP:
Meine Vermutung:
Nachdem die Schleife durchgelaufen ist, ist die ID ($programm[0]) IMMER 2, also wird auch alles aus 2 genommen.
Aber wie umgehe ich das? Wie schaffe ich es, dass jeder Eintrag als eigener da steht, und auch nur das verändert was in ihr bearbeitet wird.
Es klingt alles ein wenig kompliziert, aber ich hoffe ihr konntet mir folgen, ich finde einfach keinen Lösungsansatz.
Vielen Dank im vorraus
Dariy
Ich habe folgendes Problem und hoffe dass mir jemand dabei helfen kann, ich komme einfach nicht auf einen Lösungsweg.
Zu Beginn:
Ich habe in einer Datenbank ein Kinoprogramm gespeichert, mit Namen, Spieldauer, Altersfreigabe etc.
Ich rufe das Programm über eine while schleife in ein Formular ab.
Also habe ich nun Eingabefelder mit den Inhalten (Namen, Spieldauer, Altersfreigabe etc.)
Ich möchte nun, dass wenn man auf den "Speichern" Button klickt, dass die Angaben im Formular übernommen werden, jedoch gelingt mir dies nicht so recht.
Beispiel:
http://www.cine-royal.de/login/index2.php
Nick: test Pass: test
Es sind 2 Einträge in der DB, die aufgelistet werden, nun möchte ich wenn ich den ersten Eintrag editiere, mit dem Click auf Speichern, diese Eingaben auch gerne in der DB gespeichert haben.
Zur Zeit ist es so, dass die Eingaben des 2. Eintrags in den ersten gespeichert werden.
Zum Verständnis hier der Code:
HTML:
$inhalt = "select * from programm";
$result = mysql_query($inhalt);
while ($programm = mysql_fetch_array($result))
{
?>
<form method="post" name="aktualisieren" action="<? $PHP_SELF; ?>">
<input type="hidden" name="user" value="test">
<input type="hidden" name="password" value="test">
// Der Login^^
Filmtitel: <input type="text" name="filmname" value="<? echo $programm[1]; ?>"><p>
Genre: <input type="text" name="genre" value="<? echo $programm[2]; ?>"><p>
Altersfreigabe: <input type="text" name="alter" value="<? echo $programm[3]; ?>"><p>
Sendezeiten: <input type="text" name="zeiten" value="<? echo $programm[4]; ?>"><p>
Release: <input type="text" name="release" value="<? echo $programm[5]; ?>"><p>
Spieldauer: <input type="text" name="dauer" value="<? echo $programm[6]; ?>"><p>
Webseite: <input type="text" name="webseite" value="<? echo $programm[7]; ?>"><p>
<p>
<input type="submit" name="speichern" value="Speichern">
<p> </p>
<?
}
?>
(falls es hilft: auf $programm[0] ist die jeweilige ID gespeichert.)
Hier der Anfang der PHP:
PHP:
$inhalt = "select * from programm";
$result = mysql_query($inhalt);
$programm = mysql_fetch_array($result);
if ($speichern == "Speichern") {
MYSQL_QUERY( "UPDATE `programm` SET `titel` = '$filmname' WHERE `ID` ='$programm[0]'") OR die("<hr>Fehler bei Update : ".mysql_errno()."->".mysql_error()."<hr>");
MYSQL_QUERY( "UPDATE `programm` SET `genre` = '$genre' WHERE `ID` =$programm[0]");
MYSQL_QUERY( "UPDATE `programm` SET `age` = '$alter' WHERE `ID` =$programm[0]");
MYSQL_QUERY( "UPDATE `programm` SET `zeit` = '$zeiten' WHERE `ID` =$programm[0]");
MYSQL_QUERY( "UPDATE `programm` SET `release` = '$release' WHERE `ID` =$programm[0]");
MYSQL_QUERY( "UPDATE `programm` SET `dauer` = '$dauer' WHERE `ID` =$programm[0]");
MYSQL_QUERY( "UPDATE `programm` SET `webseite` = '$webseite' WHERE `ID` =$programm[0]");
}
Meine Vermutung:
Nachdem die Schleife durchgelaufen ist, ist die ID ($programm[0]) IMMER 2, also wird auch alles aus 2 genommen.
Aber wie umgehe ich das? Wie schaffe ich es, dass jeder Eintrag als eigener da steht, und auch nur das verändert was in ihr bearbeitet wird.
Es klingt alles ein wenig kompliziert, aber ich hoffe ihr konntet mir folgen, ich finde einfach keinen Lösungsansatz.
Vielen Dank im vorraus
Dariy
Zuletzt bearbeitet: