Hello
Habe irgendwie schwierigkeiten eine fehler meldung weg zu bekommen!
Ich versuche seit 3 tagen cookies zu setzen damit user sich nicht immer wieder neu einloggen müssen! Aber ich bekomme immer eine fehler meldung die bestimmt so einige kennen
Es handelt sich hier um ein Tutorial script (so ca. das 10000ste was ich schon probiert habe) der cookies setzen soll mit loginformular! Diese fehlermeldung bekomm ich überall bei jeden script was ich probiere! Aber ich weiss nicht warum! Könnte mir da jemand vieleicht ein rat geben?
P.s. Ich habe schon nach möglichen fehlern gegoogled, bin auch fündig geworden aber geholfen hast es nicht! Hier mal das login script was ich selber aus einen anderen forum habe!
INCHP
HIr das login formular!
Habe irgendwie schwierigkeiten eine fehler meldung weg zu bekommen!
Ich versuche seit 3 tagen cookies zu setzen damit user sich nicht immer wieder neu einloggen müssen! Aber ich bekomme immer eine fehler meldung die bestimmt so einige kennen
PHP:
Warning: Cannot modify header information - headers already sent by (output started at D:\xampp\htdocs\test\index.php:16) in D:\xampp\htdocs\test\index.php on line 24
P.s. Ich habe schon nach möglichen fehlern gegoogled, bin auch fündig geworden aber geholfen hast es nicht! Hier mal das login script was ich selber aus einen anderen forum habe!
INCHP
PHP:
<?php
@session_start();
@mysql_connect("HOST","USER","PASS");
@mysql_select_db("DB");
function check_string($string) {
// erlaubte zeichen a-z,A-Z,0-9,-,_
if((preg_match('/^[a-zA-Z0-9\-\_]+$/',$string))) return true;
return false;
}
function login($benutzername,$kennwort,$modus=1,$cookie_gelesen=1) {
// ############# Konfiguration start #############
// ### Cookies ###
// Name des Cookies
$conf['cookie_name'] = "login_cookie";
// Ablaufzeit des Cookies (1 Monat)
$conf['cookie_zeit'] = time()+3600*24*7*4;
// Inhalt des Cookies (Wird im spaeterem Verlauf festgelegt)
$conf['cookie_inhalt'] = "";
// ### Sonstiges ###
// Modus ( 1 = Session und Cookie setzen / 2 = Session ohne Cookie setzen )
$conf['modus'] = $modus;
// CookieSet ( 1 = Benutzername und Kennwort sind nicht aus einem Cookie entnommen / <1 = Benutzername und Kennwort sind einem Cookie entnommen somit ist das Kennwort schon verschluesselt )
$conf['cookie_gelesen'] = $cookie_gelesen;
// ### Variablen ###
// Benutzername
$vars['benutzername'] = htmlspecialchars(trim($benutzername));
// Kennwort
$vars['kennwort'] = htmlspecialchars(trim($kennwort));
// ############# Konfiguration ende #############
// Ist der Benutzername oder das Kennwort "leer" oder sind ungueltige Zeichen im String dann gib ein false wert zurueck
if(strlen($vars['benutzername']) == 0 OR strlen($vars['kennwort']) == 0 OR !check_string($vars['benutzername']) OR !check_string($vars['kennwort'])) {
return false;
}else {
// Ist das Kennwort NICHT aus einem Cookie dann muss es mit md5 verschluesselt bzw. verhasht werden
if($conf['cookie_gelesen'] == 1) {
$vars['kennwort'] = md5($vars['kennwort']);
}
// SQL Abfrage ob benutzername und kennwort gleich den in der Datenbank sind
$sql = @mysql_query("SELECT benutzer_id FROM tbl_benutzer WHERE benutzername = '".$vars['benutzername']."' AND kennwort = '".$vars['kennwort']."' ");
// Ist die Abfrage erfolgreich dann check den Modus
if(@mysql_num_rows($sql) == 1) {
if($conf['modus'] == 1) {
// Cookie Inhalt wird aus benutzername@kennwort zusammengebaut
$conf['cookie_inhalt'] = $vars['benutzername']."@".$vars['kennwort'];
// Cookie wird gesetzt
@setcookie($conf['cookie_name'],$conf['cookie_inhalt'],$conf['cookie_zeit']);
// Session für den login wird gesetzt
$_SESSION['success'] = true;
return true;
}else {
// Session für den login wird gesetzt
$_SESSION['success'] = true;
return true;
}
}else {
// SQL Abfrage hat nicht geklappt
return false;
}
}
}
PHP:
<?php
// Pruefen ob der Browser Cookies akzeptiert
if(isset($_COOKIE['browser_check'])) {
$browser_check = true;
}elseif($_GET['check'] != 1) {
@setcookie("browser_check","set",time()+3600);
header("Location: index.php?check=1");
}
include("inc.php");
// Wenn $_GET['logout'] gesetzt ist dann loesche $_SESSION['success']
if(isset($_GET['logout'])) {
// Wenn $_COOKIE['login_cookie'] gesetzt ist dann loesche Cookie
if(isset($_COOKIE['login_cookie'])) @setcookie("login_cookie",0,time()-3600);
// Loesche SESSION['success']
unset($_SESSION['success']);
//Leite weiter zur index.php
header("Location: index.php");
}
// Wenn $_COOKIE['login_cookie'] gesetzt ist dann ueberpruefe den Inhalt und fuehre ggf. den auto login aus
if(isset($_COOKIE['login_cookie']) AND !isset($_POST['sender']) AND !isset($_GET['logout'])) {
// Hole den Inhalt aus dem Cookie
$cookie_inhalt = $_COOKIE['login_cookie'];
// Trenne benutzername und kennwort anhand des Trennzeichens @
$cookie_inhalt = explode("@",$cookie_inhalt);
// Gehe mit Cookiedaten in die login funktion
login($cookie_inhalt[0],$cookie_inhalt[1],1,2);
}
// Wenn Sumbit gepostet wurde
if(isset($_POST['sender'])) {
// Wenn Cookie setzen "aktiv"
if($_POST['co'] == 'on') {
if(login($_POST['username'],$_POST['password']) == false) {
echo "Sry da hat was nicht geklappt";
}
}else {
if(login($_POST['username'],$_POST['password'],2,1) == false) {
echo "Sry da hat was nicht geklappt";
}
}
}
?>
<html>
<head>
<title>test</title>
</head>
<body bgcolor="#FFFFFF" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0" >
<?php
if(isset($_SESSION['success'])) {
echo "drin<a href='index.php?logout=true'>Logout</a>";
}else {
?>
<form target="_self" method="post" name="main">
<?php if(!isset($browser_check)) echo "Ihr Browser akzeptiert keine Cookies, daher wird dieses Feld deaktiviert"; ?>
User : <input type="text" name="username">
Pass : <input type="text" name="password">
Cookie (ja/nein) : <input type="checkbox" name="co" <?php if(!isset($browser_check)) echo "disabled";?>>
<input type="submit" name="sender">
</form>
<?php } ?>
</body>
</html>