Bearbeiten von MySQL Einträgen

cry_baby

Mitglied
Hallo,

mit unten stehendem Script werden die Inhalte aus der Datenbank ausgelesen und angezeigt. In der Datenbank befinden sich 5 Einträge, die nie mehr oder weniger werden. Diese Einträge müssen allerdings verändert werden. Deswegen hätte ich gerne einen Button hinter jedem angezeigten Eintrag, womit man diesen Eintrag in der Datenbank direkt bearbeiten kann.

Habe schon gelesen, dass das über die Funktion UPDATE funktionieren soll, aber wie genau ich diese Funktion in mein Script einbauen muss, verstehe ich nicht.

Kann mir jemand helfen?

PHP:
<html>
<head>
<title>Inhalte ausgeben</title>
</head>
<body>

<?php

$host = "localhost";
$user = "xxx";
$password = "xxx";
$dbname = "xxx";
$tabelle ="xxx";

$dbverbindung = mysql_connect ($host, $user, $password);

$dbanfrage = "SELECT * from $tabelle ORDER BY Jahr, Monat, Tag";
$result = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);

 while ($ausgabe = mysql_fetch_array ($result))
 {

 print (" $ausgabe[Wochentag], $ausgabe[Tag].$ausgabe[Monat].$ausgabe[Jahr]<br>$ausgabe[Stunde]:$ausgabe[Minute] Uhr - $ausgabe[Ereignis]<br><hr><br>");
 }

mysql_close ($dbverbindung)

?>

Die Ausgabe sieht momentan im Browser so aus:

PHP:
Montag, 05.02.2007
15:30 Uhr - xxx

--------------------------------------------------------------------------------

Mittwoch, 01.05.2007
10:39 Uhr - xxx

--------------------------------------------------------------------------------

Sonntag, 08.05.2007
16:34 Uhr - xxx

--------------------------------------------------------------------------------

Sonntag, 06.11.2007
08:15 Uhr - xxx

--------------------------------------------------------------------------------

Dienstag, 06.12.2007
18:26 Uhr - xxx

--------------------------------------------------------------------------------
 
Ok, ich glaube ich setze die Funktion falsch in meinem Script ein.... Wie müsste es richtig heissen?

PHP:
<html>
<head>
<title>Inhalte ausgeben</title>
</head>
<body>

<?php

$host = "localhost";
$user = "xxx";
$password = "xxx";
$dbname = "xxx";
$tabelle ="xxx";

$dbverbindung = mysql_connect ($host, $user, $password);

$dbanfrage = "SELECT * from $tabelle ORDER BY Jahr, Monat, Tag";
$result = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);

 while ($ausgabe = mysql_fetch_array ($result))
 {

 print (" $ausgabe[Wochentag], $ausgabe[Tag].$ausgabe[Monat].$ausgabe[Jahr]<br>$ausgabe[Stunde]:$ausgabe[Minute] Uhr - $ausgabe[Ereignis]
 <br>UPDATE TermineVerein SET Wochentag, Tag, Monat, Jahr, Stunde, Minute, Ereignis;<br>
 <br><hr><br>");
 }

mysql_close ($dbverbindung)

?>

Die Ausgabe schaut jetzt so aus:

PHP:
Freitag, 22.08.2007
17:15 Uhr - Käsekuchen 
UPDATE TermineVerein SET Wochentag, Tag, Monat, Jahr, Stunde, Minute, Ereignis;


--------------------------------------------------------------------------------

Dienstag, 05.10.2007
10:22 Uhr - Leberwurst 
UPDATE TermineVerein SET Wochentag, Tag, Monat, Jahr, Stunde, Minute, Ereignis;


--------------------------------------------------------------------------------
 
PHP:
$dbupdate="UPDATE TermineVerein SET 
                      Wochentag = ,
                      Tag = ,
                      Monat = , 
                      Jahr = , 
                      Stunde = , 
                      Minute = , 
                      Ereignis = ";

mysql_db_query ($dbname, $dbupdate, $dbverbindung);

Du musst ja angeben was denn neue eingetragen werden soll.

MFG
Sandro
 
PHP:
$dbupdate="UPDATE 
                      TermineVerein 
                 SET 
                      Wochentag = '',
                      Tag = '',
                      Monat = '', 
                      Jahr = '', 
                      Stunde = '', 
                      Minute = '', 
                      Ereignis = ''";

mysql_db_query ($dbname, $dbupdate, $dbverbindung);

Du musst ja angeben was denn neue eingetragen werden soll.

MFG
Sandro
 
PHP:
$dbupdate="UPDATE 
                      TermineVerein 
                 SET 
                      Wochentag = '',
                      Tag = '',
                      Monat = '', 
                      Jahr = '', 
                      Stunde = '', 
                      Minute = '', 
                      Ereignis = ''";

mysql_db_query ($dbname, $dbupdate, $dbverbindung);

Du musst ja angeben was eingetragen werden soll.

MFG
Sandro
 
Ok, ich glaube ich habe vielleicht falsch formuliert, was ich wirklich will. Die Datenbankänderung funktioniert mit diesem Befehl.

Aber es ist so, dass mir im Browser angezeigt wird:
PHP:
Freitag, 02.05.2007
05:10 Uhr - Spiegelei

--------------------------------------------------------------------------------

Mittwoch, 10.12.2007
11:45 Uhr - Leberwurst

--------------------------------------------------------------------------------

Hinter jedem Eintrag soll ein Button erscheinen, auf den man klicken kann, um den jeweiligen Eintrag zu ändern. Mit diesem Button soll man auf mein Formular springen, dass ich extra dafür erstellt habe, und über dieses Formular soll der Datenbankeintrag geändert werden.

So, da dass mit dem Update scheinbar erstmal funktioniert, müsste ich noch wissen, wie ich in dieses Script einen "Button" zum Ändern des Eintrages einfüge.

Echt blöd, ich weiss nicht wie ich es anders erklären soll...

PHP:
<html>
<head>
<title>Inhalte ausgeben</title>
</head>
<body>

<?php

$host = "localhost";
$user = "xxx";
$password = "xxx";
$dbname = "xxx";
$tabelle ="xxx";

$dbverbindung = mysql_connect ($host, $user, $password);

$dbanfrage = "SELECT * from $tabelle ORDER BY Jahr, Monat, Tag";
$result = mysql_db_query ($dbname, $dbanfrage, $dbverbindung);

 while ($ausgabe = mysql_fetch_array ($result))
 {

 print (" $ausgabe[Wochentag], $ausgabe[Tag].$ausgabe[Monat].$ausgabe[Jahr]<br>$ausgabe[Stunde]:$ausgabe[Minute] Uhr - $ausgabe[Ereignis]<br><hr><br>");
 }

mysql_close ($dbverbindung)

?>
 
Zuletzt bearbeitet:
Du fügst in deine Datenbank noch jeweils eine Spalte mit der ID ein.

PHP:
while ($ausgabe = mysql_fetch_array ($result))
 {

 print (" $ausgabe[Wochentag], $ausgabe[Tag].$ausgabe[Monat].$ausgabe[Jahr]<br>$ausgabe[Stunde]:$ausgabe[Minute] Uhr - $ausgabe[Ereignis]<br><hr><br>");
echo echo "<a href=edit.php?id=".$ausgabe['id'].">Editieren</a><br></br>";
        
 }

Dann musst du in der edit.php noch die ID aus dem URL-Parameter ID übernehmen und dann den DB Update mit einer Whre Bedingung ausführen.

Update das und das WHERE ID=$_GET['id];

Aber die id aus der URL sollte noch geprüft werden.
Das müsste passen.
Habs allerdings nicht getestet.

MFG
Sandro
 
Zuletzt bearbeitet:
Das hier hat funktioniert:

PHP:
 while ($ausgabe = mysql_fetch_array ($result))
 {

 print ("$ausgabe[Wochentag], $ausgabe[Tag].$ausgabe[Monat].$ausgabe[Jahr]
<br>$ausgabe[Stunde]:$ausgabe[Minute] Uhr - $ausgabe[Ereignis]
&nbsp;&nbsp;&nbsp;<a href=termineaktivewehr.php target=_self><img src=b_edit.png 
border=0></a><br><hr><br>");
 }

mysql_close ($dbverbindung)

Jetzt hab ich noch das Problem, dass meine Tabelle, zu der der Link führt, die Daten in der Datenbank nicht aktualisiert...

Tabelle:
PHP:
<html>
<head>
<title>Feuerwehr Sonnefeld - Termine aktive Wehr</title>
</head>

<body>
<form action="termineaktivewehr_speichern.php">
  	<table border="0" align="left" cellpadding="5" cellspacing="0" bgcolor="#E5E5E5">

      <tr>
	  <td></td>
      <td align="left" style="font-family:HandelGothic BT; font-size:25px; color:#d33736"><b><i><p>Termine aktive Wehr</p><i><b> <p>&nbsp;</p></td>
	  
</tr>

<tr>
      		<td align="right" style="font-family:HandelGothic BT">Termine</td>
     
      		<td align="left" style="font-family:HandelGothic BT"><p>
			Tag<select name="Array[Wochentag]">
      			<option selected>Montag</option>
      			<option>Dienstag</option><option>Mittwoch</option><option>Donnerstag</option><option>Freitag</option><option>Samstag</option><option>Sonntag</option>
    		</select>
			Datum<select name="Array[Tag]">
      			<option selected>01</option>
      			<option>02</option><option>03</option><option>04</option><option>05</option><option>06</option><option>07</option><option>08</option>
			  	<option>09</option><option>10</option><option>11</option><option>12</option><option>13</option><option>14</option><option>15</option>
		  		<option>16</option><option>17</option><option>18</option><option>19</option><option>20</option><option>21</option><option>22</option>
	  			<option>23</option><option>24</option><option>25</option><option>26</option><option>27</option><option>28</option><option>29</option>
	  			<option>30</option><option>31</option>
    		</select>
    		<select name="Array[Monat]">
      			<option selected>01</option>
      			<option>02</option><option>03</option><option>04</option><option>05</option><option>06</option><option>07</option><option>08</option>
				<option>09</option><option>10</option><option>11</option><option>12</option>
    		</select>
	    	<select name="Array[Jahr]">
		    	<option>2008</option><option selected>2007</option><option>2006</option>
	  		</select>
			Uhrzeit<select name="Array[Stunde]">
	  			<option selected>00</option>
      			<option>01</option><option>02</option><option>03</option><option>04</option><option>05</option><option>06</option><option>07</option>
	  			<option>08</option><option>09</option><option>10</option><option>11</option><option>12</option><option>13</option><option>14</option>
	  			<option>15</option><option>16</option><option>17</option><option>18</option><option>19</option><option>20</option><option>21</option>
	  			<option>22</option><option>23</option><option>24</option>
    		</select>
			<select name="Array[Minute]">
 	  		<option selected>0</option>
     	 		<option>01</option><option>02</option><option>03</option><option>04</option><option>05</option><option>06</option><option>07</option>
	  			<option>08</option><option>09</option><option>10</option><option>11</option><option>12</option><option>13</option><option>14</option>
				<option>15</option><option>16</option><option>17</option><option>18</option><option>19</option><option>20</option><option>21</option>
			  	<option>22</option><option>23</option><option>24</option><option>25</option><option>26</option><option>27</option><option>28</option>
			  	<option>29</option><option>30</option><option>31</option><option>32</option><option>33</option><option>34</option><option>35</option>
		      	<option>36</option><option>37</option><option>38</option><option>39</option><option>40</option><option>41</option><option>42</option>
			  	<option>43</option><option>44</option><option>45</option><option>46</option><option>47</option><option>48</option><option>49</option>
			  	<option>50</option><option>51</option><option>52</option><option>53</option><option>54</option><option>55</option><option>56</option>
			  	<option>57</option><option>58</option><option>59</option>
   	  		</select><br>
			Ereignis<input name="Array[Ereignis]" type="text" size="90" maxlength="500"></p>
			<p>&nbsp;</p></td>
</tr>

<tr>
      <td align="right"></td>
      <td>
        <input type="submit" value=" Speichern ">
        <input type="reset" value=" Zurücksetzen ">
      </td>
</tr>
	
</table>
</form>

</body>
</html>

Speichern:
PHP:
<html>
<head>
<title>Daten verarbeiten</title>
</head>
<body>

<?php

$host = "localhost";
$user = "xxx";
$password = "xxx";
$dbname = "xxx";
$tabelle ="xxx";

$dbverbindung = mysql_connect ($host, $user, $password);


$dbanfrage = "UPDATE $tabelle SET ('id', '$Array[Wochentag]', '$Array[Tag]', '$Array[Monat]', '$Array[Jahr], '$Array[Stunde]', '$Array[Minute]', '$Array[Ereignis]')";

if (mysql_db_query ($dbname, $dbanfrage, $dbverbindung)) {
print ("Datenbankeintrag erfolgreich.");
} else {
print ("Es traten Probleme auf.");
}
mysql_close ($dbverbindung);

?>

</body>
</html>
 
Zurück