PHP Problem mit logout brauche Hilfe******

Eiskaffe

Mitglied
Hallo Damen und Herren,

wie es der Titel schon sagt, habe ich ein problem mit mein logout. Wenn ich mich auf meiner Profilseite ausloggen möchte dan logt der nicht aus sondern hängt einfach an der URL: profil.php?benutzer_id=1?abmelden. Müsste er nicht eigendlich dan automatisch die sitzung zerstören da an der URL: ?abmelden steht?

PHP:
$_SESSION['benutzer_id'] //ist in dem fall benutzer_id = 1

if(isset($_GET['abmelden']))
{
   /* Zerstoere die Sitzung */
   session_destroy();

   header('Location: ./index.php');
}
	
?>
<form action="profil.php?benutzer_id=1?abmelden" method="post">
<input type="submit" value="Abmelden">
</form>

ich hoffe Ihr könnt mir helfen danke im vorraus.

Mit freundlichen Grüßen David Koch
 
Ich würde 'abmelden' in $_POST suchen, nicht in $_GET, wenn du das Formular mit post übergibst
 
Hi,

@yaslaw: Das Formular wird zwar per POST gesendet, aber das Ziel enthält den Parameter als GET. Von daher stimmt die Abfrage über $_GET.

Das Problem ist die URL selbst:
Code:
profil.php?benutzer_id=1?abmelden

Nur der erste Parameter (hier benutzer_id=1) wird per "?" angehängt, der Rest kommt per "&" getrennt dran. So wäre es richtig:

Code:
profil.php?benutzer_id=1&abmelden

Im HTML selbst schreibst du aber nicht nur "&", sondern musst das maskieren mit "&amp;". So also der komplette Formtag:

HTML:
<form action="profil.php?benutzer_id=1&amp;abmelden" method="post">

Das POST als method ist hier übrigens überflüssig, da du keine Felder sendest oder auswertest.

Grüße,
BK
 
Zuletzt bearbeitet:
Danke dir viel mals nur wegen so ein zeichen :D ich danke jeden der sich zeit genommen hat! :)

grüße
David Koch
 
Zuletzt bearbeitet:
Zurück