SQL - Datenbank auslesen und löschen

Ich habe bis jetzt alles im Kopf gemacht und nichts selbst ausprobiert.
Sag mir mal bitte, was für eine Fehlermeldung erscheint.
 
Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /web/service/admin/admins.php on line 42
 
Versuch mal folgendes:

PHP:
echo "<option value=\"$data[0]\">$data[0]</option>";}
 
Fehler sind nun alle behoben, hab noch ne Klammer ganz unten setzten müssen...

Sieht nun so aus:

PHP:
<?php
session_start();
?>

<?
if (!session_is_registered('user'))
{
die ("<center><font color='FF0000'><b>ZUGRIFF VERWEIGERT!<br><br>Dieser Dienst steht nur authorisierten Administratoren zur verfügung!<br><br>Bitte loggen Sie sich ein!</b></font><br><br><img src='images/zugriff.ico' border='0'></img></center>");
}
?>


<html>
<head>
<title>
</title>
<link rel="stylesheet" href="format.css" type="text/css">
</head>
<body bgcolor="#E6E6FA"><center>
<font size="+1"><b>Administratoren</b></font><br>
<?php 
include("config.php");
// Hier musst du noch eine Verbindung zur Datenbank herstellen
 $loeschen = "DELETE FROM `admin` WHERE `user` = '$userzumloeschen'";
 $loesch = mysql_query($loeschen);


  if(isset($_POST['ueberpruefung']))  
  {  
$userzumloeschen = $_POST['admin']; 
   } 
    else 
  { 
  ?> 

<form name="delete_admin" method="post" action="<?php echo $_SERVER['PHP_SELF']?>">
<select name="admins" size="10" style="width:350px">
<?php
include("config.php");
$SQL_statement="SELECT `user` FROM `admin` ORDER BY `id`";
$resultset=mysql_query($SQL_statement);
while($data=mysql_fetch_array($resultset)){
echo "<option value=\"$data[0]\">$data[0]</option>";} 
mysql_close();
?>
</select>
<input type="hidden" name="ueberpruefung">
<input type="submit" name="loeschen" value="loeschen">
</form>

</body>
</html>
<?php
}
?>

Wähle ich nun einen aus und klicke auf Löschen, werde ich auf eine leere Seite geleitet und das wars! Es wird nichts gelöscht! Mann ... :suspekt:
 
Logisch, denn zwischen "{" und "}" wurde ja nur eine Variable erstellt, ansonsten nichts.
Der Befehl zum Löschen stand noch über der If-Anweisung.

PHP:
 <?php 
session_start(); 
?> 
 
<? 
if (!session_is_registered('user')) 
{ 
die ("<center><font color='FF0000'><b>ZUGRIFF VERWEIGERT!<br><br>Dieser Dienst steht nur authorisierten Administratoren zur verfügung!<br><br>Bitte loggen Sie sich ein!</b></font><br><br><img src='images/zugriff.ico' border='0'></img></center>"); 
} 
?> 
 

<html> 
<head> 
<title> 
</title> 
<link rel="stylesheet" href="format.css" type="text/css"> 
</head> 
<body bgcolor="#E6E6FA"><center> 
<font size="+1"><b>Administratoren</b></font><br> 
<?php  
   if(isset($_POST['ueberpruefung']))   
  {   
$userzumloeschen = $_POST['admin'];
include("config.php"); 
 $loeschen = "DELETE FROM `admin` WHERE `user` = '$userzumloeschen'"; 
 $loesch = mysql_query($loeschen);

echo "$userzumloeschen erfolgreich aus der Datenbank entfernt.";
echo "<br>";
echo "<a href=\"link_zurueck\">Text</a>";
   }  
    else  
  {  
  ?>  

<form name="delete_admin" method="post" action="<?php echo $_SERVER['PHP_SELF']?>"> 
<select name="admins" size="10" style="width:350px"> 
<?php 
include("config.php"); 
$SQL_statement="SELECT `user` FROM `admin` ORDER BY `id`"; 
$resultset=mysql_query($SQL_statement); 
while($data=mysql_fetch_array($resultset)){ 
echo "<option value=\"$data[0]\">$data[0]</option>";}  
mysql_close(); 
?> 
</select> 
<input type="hidden" name="ueberpruefung"> 
<input type="submit" name="loeschen" value="loeschen"> 
</form> 

</body> 
</html> 
<?php 
} 
?>
 
Zuletzt bearbeitet von einem Moderator:
Er löscht immer noch nicht!

Es kommt nur; erfolgreich aus der Datenbank entfernt.

Fehlt da nicht noch der Name der entfernt wurde? Also fehlt noch irgendwas oder
 
Zuletzt bearbeitet:
Schau dir mal diese 2 Zeilen an:

PHP:
$userzumloeschen = $_POST['admin'];
HTML:
<select name="admins" size="10" style="width:350px">
 
Zuletzt bearbeitet von einem Moderator:
Hey daaaaaaaanke! Vielen vielen Dank! Deswegen ging es die ganze Zeit nich! :eek:

:)

Noch ein Anliegen; Kann man da noch etwas einbauen, dass man nach dem Klick auf den Button gefragt wird; Wirklich diese Benutzer löschen; Benutzer1 - Benutzer2 usw.?

Also nur dass man nicht ausversehen die falschen löscht!? Wäre dir sehr dankbar, dürfte ja net viel mehr sein oder? :)
 
Einfach noch einmal IF mit einbauen.
Wie immer ungetestet und ohne Gewähr :-)

PHP:
<?php 
session_start(); 
?> 
 
<? 
if (!session_is_registered('user')) 
{ 
die ("<center><font color='FF0000'><b>ZUGRIFF VERWEIGERT!<br><br>Dieser Dienst steht nur authorisierten Administratoren zur verfügung!<br><br>Bitte loggen Sie sich ein!</b></font><br><br><img src='images/zugriff.ico' border='0'></img></center>"); 
} 
?> 
 

<html> 
<head> 
<title> 
</title> 
<link rel="stylesheet" href="format.css" type="text/css"> 
</head> 
<body bgcolor="#E6E6FA"><center> 
<font size="+1"><b>Administratoren</b></font><br> 
<?php  
if(isset($_POST['ueberpruefungb'])){   

$userzumloeschen = $_POST['admins'];
include("config.php"); 
 $loeschen = "DELETE FROM `admin` WHERE `user` = '$userzumloeschen'"; 
 $loesch = mysql_query($loeschen);

echo "$userzumloeschen erfolgreich aus der Datenbank entfernt.";
echo "<br>";
echo "<a href=\"link_zurueck\">Text</a>";

} else {  
if(isset($_POST['ueberpruefunga'])){   

echo "<form name=\"ueberpruefen\" method=\"post\" action=\"$_SERVER['PHP_SELF']\">";
$userzumloeschen = $_POST['admins'];
echo "$userzumloeschen wirklich loeschen?";
echo "<input type=\"hidden\" name=\"ueberpruefungb\">";
echo "<input type=\"submit\" value=\"jetzt loeschen\">";
echo "</form>";

} else {

  ?>  

<form name="delete_admin" method="post" action="<?php echo $_SERVER['PHP_SELF']?>"> 
<select name="admins" size="10" style="width:350px"> 
<?php 
include("config.php"); 
$SQL_statement="SELECT `user` FROM `admin` ORDER BY `id`"; 
$resultset=mysql_query($SQL_statement); 
while($data=mysql_fetch_array($resultset)){ 
echo "<option value=\"$data[0]\">$data[0]</option>";}  
mysql_close(); 
?> 
</select> 
<input type="hidden" name="ueberpruefunga"> 
<input type="submit" name="loeschen" value="loeschen"> 
</form> 

</body> 
</html> 
<?php 
} 
}
?>

Edit:

[...]Wirklich diese Benutzer löschen; Benutzer1 - Benutzer2 usw.?

Du kannst mit deinem jetzigen Formular immer nur einen auf einmal löschen...
Wenn du mehrere gleichzeitig aus der Datenbank hauen möchtest, musst du dein Formular ändern.

Nur so nebenbei :)
 
Zuletzt bearbeitet von einem Moderator:
Zurück