Hilfe... fehler beim deletescript

alive

Erfahrenes Mitglied
Hiho...
scheinbar bin ich nur zu bloed... aber ich habe ein script geschrieben, dass den benutzername aus einer Datenbakn ausliest, wenn das passwort stimmt löscht er den Beitrag, wenn nichtsoll er ihn auch nicht löschen , mach er aber...



PHP:
<form name="delete" method="post" action="http://localhost/?content=admin&view=gbook&sub=del&id=1">
  <p align="center"><strong>Guestbookeintrag l&ouml;schen</strong></p>
  <table width="40%" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr> 
      <td width="33%" height="24"><font size="2">Benutzername:</font></td>
      <td width="67%"><input name="user" type="text" id="user"></td>
    </tr>
    <tr> 
      <td><font size="2">Passwort:</font></td>
      <td><input name="password" type="password" id="password">
      </td>
    </tr>
    <tr> 
      <td><font size="2">Eintragid:</font></td>
      <td><input name="ident" type="text" id="ident" value="<?php echo "$id"; ?>" readonly></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><input name="delete" type="submit" id="login2" value="delete"></td>
    </tr>
  </table>
</form>
<?php if ($delete) {
include ("mysql/connect.php") ;
$sqlkommando = "SELECT * FROM members_new WHERE benutzername = $user";
$sqldelete = "DELETE FROM gbook_new WHERE id = $ident";
$zeileholen = mysql_fetch_array($sqlkommando);
if ($zeileholen["passwort"] = $passwort)
{
mysql_db_query("usr_web39_1", $sqldelete) ;
echo "Der G-Bookeintrag mit der ID '$ident' wurde gelöscht";
}}
?>
Leider löscht er immer, egal ob das PW richtig ist oder falsch.... außerdem wollt ich noch ein LEVEL einbauen, der osll noch prüfen, ob das level unter 3 ist , also das LEV 1 und LEV 2 delten koenne 3 und 5 aber nicht
Naja bitte helft mir , danke...
 
Zuletzt bearbeitet:
PHP:
<?php if ($delete) {
include ("mysql/connect.php") ;
$sqlkommando = "SELECT * FROM members_new WHERE benutzername = '$user'";
$sqldelete = "DELETE FROM gbook_new WHERE id = '$ident'";
$zeileholen = mysql_fetch_array($sqlkommando);
if ($zeileholen["passwort"] == $passwort)
{
mysql_db_query("usr_web39_1", $sqldelete) ;
echo "Der G-Bookeintrag mit der ID '$ident' wurde gelöscht";
}}
?>

ist untested ... aber dürfte klappen...mit den ' um die variablen bin nicht sicher aber beim if müssen eindeutig 2 "=" hin :D
hoffe geholfen zu haben
 
Hm... da kommt immer
PHP:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\wampp2\htdocs\admin\gbook\delete.php on line 27
komsich... nun funzt nix mehr :p
P.s: die '' um die Vars sind nu schau :D
 
Zuletzt bearbeitet:
Du musst ja auch noch n Query dazwischen setzten.
Frag abba bitte net was des is, oder wie des geht, hatten wir schon oft genug und ist uach in jedem gescheitem PHP-Buch zu finden!
 
Wenn ihr mir nicht sagt wie es geht, aknnich auch nix machen.. lol suchen ja.... aber bringt mir nix zu dem SCRIPT.. sry...
P.s hat sich erledigt..
 
Zuletzt bearbeitet:
OK, dann werd ich mla was schreiben:

PHP:
if ($delete) {
  include ("mysql/connect.php");
  $sqlkommando = "SELECT * FROM members_new WHERE benutzername = '$user'";
  $sqlkommando_result = mysql_query($sqlcommando);
  $sqldelete = "DELETE FROM gbook_new WHERE id = '$ident'";
  $zeileholen = mysql_fetch_array($sqlkommando_result);
  if ($zeileholen["passwort"] == $passwort) {
    mysql_db_query("usr_web39_1", $sqldelete); #<-Sprintweb  ; )
    echo "Der G-Bookeintrag mit der ID '$ident' wurde gelöscht";
  }
}
 
Thx... bei mir hast doch nciht geklappt :D
aber was heißt sprintweb? :-)

hm... das prob ist ... das er mir nun sagt das mein Pw falsch ist ... obwohl es so in der mysql datenban eingetragen ist

PHP:
<?php if ($delete) {
include ("mysql/connect.php") ;
$sqlkommando = "SELECT * FROM members_new WHERE benutzername = $user";
$sqlanfrage = mysql_query($sqlkommando) or die("<b><center>Falscher Benutzername oder falsches Passwort!</center><b/b>");
$sqldelete = "DELETE FROM gbook_new WHERE id = $ident";
$zeileholen = mysql_fetch_array($sqlanfrage);
if ($zeileholen["passwort"] == "$passwort")
{
mysql_db_query("usr_web39_1", $sqldelete) ;
echo "Der G-Bookeintrag mit der ID '$ident' wurde gelöscht";
}
else {
echo "Eintrag mit der ID '$ident' konnte nicht gelöscht werden!" ;
}
}

?>
 
Zuletzt bearbeitet:
PHP:
CREATE TABLE members_new (
  id bigint(20) NOT NULL default '0',
  level text NOT NULL,
  benutzername text NOT NULL,
  passwort text NOT NULL
) TYPE=MyISAM;
so sieht die msql tabelle aus
 
hm... da ich selber keine Lösung gefunden habe, bitte euch nun mal dieses script mal umzuschreiben, dass es geht....
// Der Form code
PHP:
<form name="delete" method="post" action="http://localhost/?content=admin&view=gbook&sub=del">
  <p align="center"><strong>Guestbookeintrag l&ouml;schen</strong></p>
  <table width="40%" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr> 
      <td width="33%" height="24"><font size="2">Benutzername:</font></td>
      <td width="67%"><input name="user" type="text" id="user"></td>
    </tr>
    <tr> 
      <td><font size="2">Passwort:</font></td>
      <td><input name="passwort" type="password">
      </td>
    </tr>
    <tr> 
      <td><font size="2">Eintragid:</font></td>
      <td><input name="ident" type="text" id="ident" value="<?php echo "$id"; ?>" readonly></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><input name="delete" type="submit" id="login2" value="delete"></td>
    </tr>
  </table>
// der php code
PHP:
<?php 
	if ($delete) {
  	$sqlhost = localhost ;
	$username = web39 ;
	$passwort = paulpaul ;
	$db = mysql_pconnect ($sqlhost,$username,$passwort);
	mysql_select_db (usr_web39_1);
	$base = mysql_select_db (usr_web39_1);
  	$sqlkommando = "SELECT passwort FROM members_new WHERE benutzername = '$user'";
  	$sqlkommando_result = mysql_query($sqlkommando) or die("Error: " . mysql_error());
  	$sqldelete = "DELETE FROM gbook_new WHERE id = '$ident'";
  	$zeileholen = mysql_fetch_array($sqlkommando_result) or die("Error: " . mysql_error());
  
	if ($zeileholen["passwort"] == $passwort) {
	$sqlhost = localhost ;
	$username = web39 ;
	$passwort = paulpaul ;
	$db = mysql_connect ($sqlhost,$username,$passwort);
	mysql_select_db (usr_web39_1);
	$base = mysql_select_db (usr_web39_1);
    	mysql_query($sqldelete) or die("Error: " . mysql_error());
    	echo "Der G-Bookeintrag mit der ID '$ident' wurde gelöscht";
  	}

	}
?>
 
Zurück