cookie prob

sf-q3.cHa0s

Mitglied
da in den andern threat ja scheinbar keiner mehr reinguckt nochmal nen eigener:

Ich hab auch den fehler aus dem threat, nur mit ob_start() und ob_end_flush() gehts irgendwie nich, naja, schauts euch mal bitte an:
PHP:
<?php
 ob_start();
 if ($login) {
 	setcookie("bla1",$1);
 	setcookie("bla2",$2);
 	setcookie("bla3",$3);
 }
 	$db = mysql_connect();
	
	mysql_select_db("datenbank");

	$act = "select count(*) from ...........";

	$num = mysql_result(mysql_query($act), 0);

	mysql_close($db);

	$funktion = "$num>0";
	
  ob_end_flush();
?>
mhmmm....
 
Du brauchst doch ob_flush() garnicht.

dir fehlen noch ein paar angaben für das cookie, ich würde es so setzten,

setcookie("bla3",$3, time()+3600*24*$tage, "/", "", 1);

versuch es mal so.
 
-

Original geschrieben von sf-q3.cHa0s
ich brauch es wohl, die datei wird includet....;)
Und da liegt dein Fehler !
Nehmen wir mal an, deine Index-Seite sieht so aus:
PHP:
<?PHP
include("header.php");
include("$show.php");
include("footer.php");
?>
Dein mittlerer Teil ist variabel, der Rest wird immer fest includet.
Um nun ob_start() und ob_end_flush() richtig einzusetzen, schreibst du:
PHP:
<?PHP 
ob_start();
include("header.php");
include("$show.php");
include("$footer.php");
ob_end_flush();
?>
Hoffe, du verstehst, wie man die Funktionen richtig einsetzt.
 
jo, ich werds versuchen, hab aber noch nen prob:
bei den cookies gehts um nen internen bereich, der befindet sich im ordner intern, von dort aus wird dann auch die cookies erstellt, ich möchte aber im hauptverzeichnis, falls die cookies schon vorhanden sind, nurnoch nen link zum internen anzeigen, sind die cookies noch nicht gesetzt möchte ich nen formular anzeigen, jedoch scheinen die cookies nur für das verzeichnis intern zu gelten, da immer das formular angezeigt wird...:(
 
PHP:
if(isset($HTTP_COOKIE_VARS[asdf]) {
// Anzeige: Interner Bereich
}else{
// Anzeige: Formular
}

Fuer "asdf" setzt du dann noch den Namen des Cookies ein das noetig ist um den Internen Bereich zu betreten.
Aber ich wuerde eine kleine Funktion schreiben.

Auf unserer Clanpage habe ich das so geloest:
In die DB (MySQL) werd in die Zelle "intern" eine "1" fuer User eingetragen die in den Internen Bereich duerfen und eine "0" fuer die User denen der Zugriff auf den Internen Bereich verwehrt ist.
Hier meine Funktion:
PHP:
function checkinternuser() {
        global $usertabelle, $HTTP_COOKIE_VARS; // $usertabelle ist der name der Tabelle
        $check = @mysql_fetch_array(mysql_query("SELECT * FROM ".$usertabelle." WHERE id='".$HTTP_COOKIE_VARS[userID]."' AND secpwd='".$HTTP_COOKIE_VARS[userPWD]."'"));
        if($check[intern] == '1' && checklogin()) {
                $return = True;
        }
        return $return;
}

Ich hoffe das hilft dir.
Ansonsten kannst du dich gerne per Mail bei mir melden:
info@emkey.de

-emkey
 
Zurück