Datensatz löschen

Alles, was PHP betrifft, kann hier besprochen werden.

Datensatz löschen

Postby Negro » 28. June 2003 17:04

Hallo,

hab mit Dreamweaver eine PHP-Seite gebastelt, mit der man Datensätze aus einer MySQL-Datenbank in Textfeldern bearbeiten und anschließend aktualisieren kann. Klappt auch alles wunderbar, nur brauche ich neben dem Button "Aktualisieren" auch einen zusätzlichen Button, damit ich den aktuell angezeigten Datensatz auch löschen kann.

Habe zwar jetzt was im Internet gefunden, wie man einen Datensatz aus einer DB löschen kann, aber ich weiss immer noch nicht wo der Code eingefügt werden muss ?

Den Button zum löschen erstelle ich so:
<INPUT type=submit name="Auswahl" value="Löschen">

Und zum löschen dann das hier, (oder???)
if ($Auswahl=="Löschen")

und mit DELETE FROM tabelle WHERE . . .

Nur wo auf meiner Website muss das hin ? Und geht das überhaupt ?

Hier mal der komplette Code der Website:

Danke für jeden Tipp !!!

<?php require_once('Connections/conAbwesenheit.php'); ?>
<?php
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "")
{
$theValue = (!get_magic_quotes_gpc()) ? addslashes($theValue) : $theValue;

switch ($theType) {
case "text":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "long":
case "int":
$theValue = ($theValue != "") ? intval($theValue) : "NULL";
break;
case "double":
$theValue = ($theValue != "") ? "'" . doubleval($theValue) . "'" : "NULL";
break;
case "date":
$theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
break;
case "defined":
$theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
break;
}
return $theValue;
}

$editFormAction = $HTTP_SERVER_VARS['PHP_SELF'];
if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
$editFormAction .= "?" . $HTTP_SERVER_VARS['QUERY_STRING'];
}

if ((isset($HTTP_POST_VARS["MM_update"])) && ($HTTP_POST_VARS["MM_update"] == "form1")) {
$updateSQL = sprintf("UPDATE tblabwesenheit SET Vorname=%s, Nachname=%s, Grund=%s, vom=%s, bis=%s WHERE ID=%s",
GetSQLValueString($HTTP_POST_VARS['Vorname'], "text"),
GetSQLValueString($HTTP_POST_VARS['Nachname'], "text"),
GetSQLValueString($HTTP_POST_VARS['Grund'], "text"),
GetSQLValueString($HTTP_POST_VARS['vom'], "text"),
GetSQLValueString($HTTP_POST_VARS['bis'], "text"),
GetSQLValueString($HTTP_POST_VARS['ID'], "int"));

mysql_select_db($database_conAbwesenheit, $conAbwesenheit);
$Result1 = mysql_query($updateSQL, $conAbwesenheit) or die(mysql_error());

$updateGoTo = "uebersicht1.php";
if (isset($HTTP_SERVER_VARS['QUERY_STRING'])) {
$updateGoTo .= (strpos($updateGoTo, '?')) ? "&" : "?";
$updateGoTo .= $HTTP_SERVER_VARS['QUERY_STRING'];
}
header(sprintf("Location: %s", $updateGoTo));
}

mysql_select_db($database_conAbwesenheit, $conAbwesenheit);
$query_Recordset1 = "SELECT * FROM tblabwesenheit";
$Recordset1 = mysql_query($query_Recordset1, $conAbwesenheit) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?>
<html>
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<form method="post" name="form1" action="<?php echo $editFormAction; ?>">
<table align="center">
<tr valign="baseline">
<td nowrap align="right">ID:</td>
<td><?php echo $row_Recordset1['ID']; ?></td>
</tr>
<tr valign="baseline">
<td nowrap align="right">Vorname:</td>
<td><input type="text" name="Vorname" value="<?php echo $row_Recordset1['Vorname']; ?>" size="32">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">Nachname:</td>
<td><input type="text" name="Nachname" value="<?php echo $row_Recordset1['Nachname']; ?>" size="32">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">Grund:</td>
<td><input type="text" name="Grund" value="<?php echo $row_Recordset1['Grund']; ?>" size="32">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">Vom:</td>
<td><input type="text" name="vom" value="<?php echo $row_Recordset1['vom']; ?>" size="32">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">Bis:</td>
<td><input type="text" name="bis" value="<?php echo $row_Recordset1['bis']; ?>" size="32">
</td>
</tr>
<tr valign="baseline">
<td nowrap align="right">&nbsp;</td>
<td><input type="submit" value="Datensatz aktualisieren">
</td>
</tr>
</table>
<input type="hidden" name="MM_update" value="form1">
<input type="hidden" name="ID" value="<?php echo $row_Recordset1['ID']; ?>">
<?php if (isset($_GET["ID"]) && is_numeric($_GET["ID"])) {
$ID = $_GET["ID"];
}?></form>
<p>&nbsp;</p>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>
Negro
 

Postby phlogg » 28. June 2003 23:15

Sensationell... Der Code ist vergleichbar mit dem HTML der ersten Frontpage Versionen...

SCNR
phlogg
 
Posts: 24
Joined: 19. June 2003 14:40

Postby chris17 » 01. July 2003 16:41

Code: Select all
<input type="submit" name="Auswahl" value="Löschen">
<input type="hidden" name="ID" value="<?php echo $row_Recordset1['ID']; ?>">

Du schickst z.B. per POST die ID mit ans gleiche Skript, und dann kannste oben in diesem Skript die Löschfunktion einbauen:
Code: Select all
if ($Auswahl=="Löschen")
{
   mysql_query("DELETE FROM tblabwesenheit WHERE ID='".$_POST['ID']."'");
}

P.S.: Ich würde Dir empfehlen "Loeschen" anstatt "Löschen" zu schreiben...
chris17
 
Posts: 8
Joined: 05. June 2003 16:31

Postby Pc-dummy » 01. July 2003 17:47

@ phplog

Jo *lol*

MFG
Pc-Dummy
Gentoo/X86_64, AMD Athlon 64 FX-53, 1,5 GB INFINEON Ram, Audigy 2 ZS Platinum Pro, 300 GB Platten, LG-DVD Brenner
Pc-dummy
AF Moderator
 
Posts: 784
Joined: 29. December 2002 01:46
Location: AT-Vorarlberg-Feldkirch


Return to PHP

Who is online

Users browsing this forum: No registered users and 15 guests