Hallo,
im folgenden findet ihr ein kleines DB Projekt, bestehend aus einem Eingabe-Formular und einer Ausgabe-Tabelle für die Datensätze. Jeder aufgelistete Datensatz verfügt über eine Bearbeitungs- und Lösch-Funktionen. Bei Aufruf des Bearbeitungs-Links wird der bestehenden Datensatz aus der DB ausgelesen und in das Eingabe-Formular eingeschrieben. Im Anschluss können jetzt die Daten manipuliert werden und bei Aufruf von "Prokjekt aktualisieren" wird der Datensatz aktualisiert.
Das zur Theorie, allerdings habe ich Probleme bei der Umsetzung der Aktualisierungs-Funktion
. Bei Aufruf der Funktion steht z.B. das in der Adresszeile:
ZitatmeineDB.php?id=5&action=aktualisieren
. Als Ergebnis erhalte ich dann einen leeren Datensatz z.B. #5.
Hier zum Code:
<?php
include ("connect.inc.php");
$id = $_POST['id'];
$nummer = $_POST['nummer'];
$name = $_POST['name'];
$gruppe = $_POST['gruppe'];
$text = $_POST['text'];
$bild = $_POST['bild'];
$id = $_GET['id'];
$action = $_GET['action'];
if ($action == 'geloescht')
{
$ErrorMessage = LoeschenProjekt( $id , $dbCon );
}
elseif ($action == 'bearbeiten')
{
$row = AbfrageBearbeitenProjekt( $id );
if(is_string($row))
{
$ErrorMessage = $row;
}
}
elseif ($action == 'aktualisieren')
{
$ErrorMessage = AktualierenProjekt( $id, $nummer, $name, $gruppe, $text, $bild );
if ($ErrorMessage == '')
{
$ErrorMessage = "Projekt wurde aktualisiert!";
}
}
else
{
$ErrorMessage = HinzufuegenProjekt($nummer, $name, $gruppe, $text, $bild);
if ($ErrorMessage == '')
{
$ErrorMessage = "Projekt hinzugefügt!";
}
}
$result = AbfrageProjekt( $query, $dbCon );
include "EingabeDB-opt-01.html";
//---------------------------------------------------------------------------
function HinzufuegenProjekt($nummer, $name, $gruppe, $text, $bild)
{
$ErrorMessage = CheckEingabe( $nummer, $name, $gruppe, $text, $bild );
return $ErrorMessage;
}
//---------------------------------------------------------------------------
function CheckEingabe( $nummer, $name, $gruppe, $text, $bild )
{
if ( $nummer == '' )
{
$ErrorMessage = "Nummer ... <br />";
}
if ( $name == '' )
{
$ErrorMessage = $ErrorMessage . "Name ... <br />";
}
if ( $gruppe == '' )
{
$ErrorMessage = $ErrorMessage . "Gruppe ... <br />";
}
if ( $text == '' )
{
$ErrorMessage = $ErrorMessage . "Text ... <br />";
}
if ( $bild == '' )
{
$ErrorMessage = $ErrorMessage . "Bild ... <br />";
}
if ($ErrorMessage == '')
{
$returnValue = EintragProjekt( $nummer, $name, $gruppe, $text, $bild );
if( $returnValue === TRUE )
{
$ErrorMessage = '';
}
else
{
$ErrorMessage = 'Große Probleme: ' . $returnValue;
}
}
return $ErrorMessage;
}
//---------------------------------------------------------------------------
function VerbindungDB()
{
include ("connect.inc.php");
return $dbCon;
}
//---------------------------------------------------------------------------
function EintragProjekt( $nummer, $name, $gruppe, $text, $bild )
{
$dbCon = VerbindungDB();
$insert = "INSERT INTO links(nummer, name, gruppe, text, bild)
VALUES ('$nummer', '$name', '$gruppe', '$text', '$bild')";
$bolSuccess = mysql_query( $insert, $dbCon );
if ($bolSuccess)
{
return $bolSuccess;
}
else
{
return mysql_error();
}
}
//---------------------------------------------------------------------------
function AbfrageProjekt( $query, $dbCon )
{
$query = "SELECT id, nummer, name, gruppe, text, bild FROM links ORDER BY gruppe, nummer";
$result = mysql_query( $query, $dbCon )
or die ("MySQL-Error: " . mysql_error() );
return $result;
}
//---------------------------------------------------------------------------
function AbfrageBearbeitenProjekt( $id )
{
$dbCon = VerbindungDB();
$query = "SELECT id, nummer, name, gruppe, text, bild FROM links WHERE id=$id";
$result = mysql_query( $query, $dbCon )
or die ("MySQL-Error: " . mysql_error() );
if ($result)
{
return mysql_fetch_assoc($result);
}
else
{
return DBerror();
}
}
//---------------------------------------------------------------------------
function LoeschenProjekt( $id , $dbCon )
{
$delEntry = "DELETE FROM links WHERE id=$id";
$bolSuccess = mysql_query( $delEntry, $dbCon );
if ($bolSuccess)
{
return "Projekt gelöscht";
}
else
{
return DBerror();
}
}
//---------------------------------------------------------------------------
function AktualierenProjekt( $id, $nummer, $name, $gruppe, $text, $bild )
{
$dbCon = VerbindungDB();
$updateEntry = "UPDATE links
SET id='$id', nummer='$nummer', name='$name', gruppe='$gruppe', text='$text', bild='$bild'
WHERE id=$id";
$bolSuccess = mysql_query( $updateEntry, $dbCon );
if ($bolSuccess)
{
return $bolSuccess;
}
else
{
return mysql_error();
}
}
?>
Alles anzeigen
<html>
<head>
<title>Projekte</title>
</head>
<body>
<center>
<h2>Projekte hinzufügen</h2>
</center>
<hr>
<h3>
<?php
echo $ErrorMessage; // Will only appear if this html file is used in include statement
?>
</h3>
<form action="meineDB-opt-01.php" method="POST">
<center>
<table width="30%" border="0" cellpadding="0" cellspacing="10">
<tr>
<td>Projektnummer:</td>
<td><input type="text" name="nummer" value="<?php echo $row['nummer']; ?>"</td>
</tr>
<tr>
<td>Projektname:</td>
<td><input type="text" name="name" value="<?php echo $row['name']; ?>"></td>
</tr>
<tr>
<td>Gruppenname:</td>
<td><select name="gruppe">
<option value="a">Gruppe a</option>
<option value="b">Gruppe b</option>
<option value="c">Gruppe c</option>
</select> <?php echo $row['gruppe']; ?></td>
</tr>
<tr>
<td>Text:</td>
<td><input type="text" name="text" value="<?php echo $row['text']; ?>"></td>
</tr>
<tr>
<td>Bildpfad:</td>
<td><input type="text" name="bild" value="<?php echo $row['bild']; ?>"></td>
</tr>
<tr>
<td><input type="submit" name="SubmitButton" value="Projekt hinzufügen"></td>
<td><input type="reset"></td>
</tr>
<tr>
<td><a href="meineDB-opt-01.php?id=<?php echo $row['id']; ?>&action=aktualisieren">Prokjekt aktualisieren</a></td>
<td></td>
</tr>
</table>
</center>
</form>
<hr>
<center>
<h2>Meine Projekte</h2>
</center>
<?php
while($row = mysql_fetch_assoc($result))
{
echo $row['id']; //Kontrolle
?>
<table align="center" width="80%" border="1" bordercolordark="1" cellpadding="0" cellspacing="2">
<tr>
<td colspan="2" >Überschrift:<br> <h1><?php echo $row['name']; ?>////<?php echo $row['nummer']; ?></h1></td>
</tr>
<tr>
<td >Kategorie:<br> <h2><?php echo $row['gruppe']; ?><h2></td>
<td > <a href="meineDB-opt-01.php?id=<?php echo $row['id']; ?>&action=geloescht">Löschen</a>
<a href="meineDB-opt-01.php?id=<?php echo $row['id']; ?>&action=bearbeiten">Bearbeiten</a>
</td>
</tr>
<tr>
<td>Bild:<br>
<img src="img/<?php echo $row['bild']; ?>" alt="" border="0" width="100" >
</td>
<td>Textteil:<br><?php echo $row['text']; ?></td>
</tr>
</table>
<?php
}
?>
</body>
</html>
Alles anzeigen
Danke Seb