php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004-2

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 08.12.2004, 09:41  
Erfahrener Benutzer
 
Registriert seit: 08.08.2003
Beiträge: 111
Fraylman
Standard include schlägt fehl

hallo leute

irgendwie bekomm ich das hier net gebacken aber seht selbst!

hier so mein login bereich! login.php
Code:
<?
session_start();
include 'php/funktionen.inc.php';
include 'php/dbconnect.inc.php';
# Session gestartet und Funktionsdatei eingebunden

# Prüfen ob ein Cookie gefunden wurde
if(!$_COOKIE["djkoberthal"])
{
# Alle folgenden Aktionen passieren wenn kein Cookie gesetzt wurde
	if(isset($_POST["login"]))
	{
	# mit der Funktion check_user wird getestet ob es zu diesem Passwort und Benutzernamen
	# einen User gibt und ob alle Angaben korrekt sind
	$usr_id = check_user($_POST["username"], $_POST["userpass"]);
		if($usr_id!=false)
		{
		# alles korrekt: der user wird eingeloggt und ein cookie gesetzt
		login($usr_id);
		setcookie("djkoberthal", $usr_id, time() +120);
		# Hier kommt die Aktion nach erfolgreichem Login hin
		print "Sie sind eingeloggt";
		include 'php/usermenu.inc.php';
		}
		else
		{
		# nix korrekt: dem user wird eine fehlermeldung ausgegeben
		$fehler = "Fehlerhafter Login";
		print_loginform($fehler);
		}
	}
	else
	{
	$fehler = " ";
	print_loginform($fehler);
	}	
}
else
{
# Alle Aktionen ab hier passieren nur noch wenn ein Cookie gefunden wurde
print "Der Cookie wurde gefunden und Sie sind eingeloggt";
$usr_id = $_COOKIE["djkoberthal"];
# Das Cookie wird neugesetzt
setcookie("djkoberthal", $usr_id, time() +120);
# Das Menue wird eingebunden
include 'php/usermenu.inc.php';
}
?>
jo auf jeden fall klappt das so schon mal alles! auch mim cookie oder so! nun will ich wenn der user eingeloggt wurde egal wie die datei usermenu.inc.php includen! das klappt auch eigentlich!

eigentlich :wink:

denn in dieser datei brauch ich ja wieder mal meine funktionen.inc.php die ich dann natürlich auch include! aber dann kommt das
Code:
Fatal error: Cannot redeclare check_user() (previously declared in C:\xampp\htdocs\projekte\login2\php\funktionen.inc.php:3) in C:\xampp\htdocs\projekte\login2\php\funktionen.inc.php on line 3
hier noch die datei usermenu.inc.php
Code:
<?
session_start();
include 'php/funktionen.inc.php';

# Session gestartet und Funktionsdatei eingebunden
$usr_id = $_COOKIE["djkoberthal"];
print "

$usr_id

";
$usr_rechte = userrechte($usr_id);
print "

Sie haben den Rechtestatus $usr_rechte

";
?>
wenn ich das includen der funktionen weglasse bekomme ich keine fehlermeldung aber ich bekomme auch meine rechte nicht angezeigt!

komisch komisch! aber wahrscheinlich wieder was superleichtes was nur mir passiert

greetz fraylman
Fraylman ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 08.12.2004, 09:52  
Erfahrener Benutzer
 
Registriert seit: 06.09.2003
Beiträge: 309
suter
Standard

Nach deiner Fehlermeldung wird etwas 2 Mal included. Dass heisst es probiert eine zuvor deklarierte Funktion wieder zu deklarieren was natürlich nicht geht. Überprüfe das Mal.
suter ist offline  
Alt 08.12.2004, 09:56  
Erfahrener Benutzer
 
Registriert seit: 08.08.2003
Beiträge: 111
Fraylman
Standard

ähm jo thx! das konnte ich mir auch denken

aber ich brauch die funktionen in der usermenu.inc.php auch wieder deshalb muss ich sie auch includen! tue ich das nicht hab ich keine funktionen zur verfüfung! und das geht ja nicht!

greetz fraylman
Fraylman ist offline  
Alt 08.12.2004, 10:04  
Erfahrener Benutzer
 
Registriert seit: 06.09.2003
Beiträge: 309
suter
Standard

dann nimm doch das include aus der usermenu.inc.php raus
suter ist offline  
Alt 08.12.2004, 10:06  
Erfahrener Benutzer
 
Registriert seit: 08.08.2003
Beiträge: 111
Fraylman
Standard

aber dann stehen mir meine funktionen die in der funktionen.inc.php deklariert sind nicht verfügung

da haben wir ja das problem
Fraylman ist offline  
Alt 08.12.2004, 10:11  
Gast
 
Beiträge: n/a
Standard

Das zeugt von einer unsauberen Struktur. 2 Möglichkeiten

1. Die Struktur überarbeiten
2. Statt include include_once nehmen

Gruß
phpfan

PS: Ich möchte garnicht wissen, welchen Punkt du wählst, denn ich tippe auf 2.
 
Alt 08.12.2004, 10:14  
Erfahrener Benutzer
 
Registriert seit: 08.08.2003
Beiträge: 111
Fraylman
Standard

hab das im manual gelesen das man include_once dann nehmen soll (ja es gibt leute die doch noch ins manual schauen bevor sie posten )

aber nee punkt 2 wähle ich nicht denn das hab ich auch schon gemacht und es kommt genau das selbe

was meinst du mit punkt 1? wie die struktur überarbeiten! bin offen für gute verbesserungen!

greetz fraylman
Fraylman ist offline  
Alt 08.12.2004, 10:17  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Fraylman
aber nee punkt 2 wähle ich nicht denn das hab ich auch schon gemacht und es kommt genau das selbe
Das kann nicht sein, oder du hast nicht alle includes geändert.

Gruß
phpfan
 
Alt 08.12.2004, 10:20  
Erfahrener Benutzer
 
Registriert seit: 06.09.2003
Beiträge: 309
suter
Standard

Er meint, du sollst deine Struktur so überarbeiten, dass du nicht in so eine Zwickmühle geraten kannst.
Du kannst ja immer wenn du die Funktionen im anderen include benötigst beides includen. So kannst dus umgehen. Das meinte ich.
suter ist offline  
Alt 08.12.2004, 10:24  
Erfahrener Benutzer
 
Registriert seit: 08.08.2003
Beiträge: 111
Fraylman
Standard

ok doch nicht richtig gelesen!

ja hat noch ein include gefehlt! keine fehlermeldung

aber den rechtestatus bekomm ich trotzdem nicht angezeigt

hier noch die funktion userrechte() aus der datei funktionen.inc.php
Code:
function userrechte($usr_id)
{
$sql = "SELECT * FROM users WHERE usr_id='$usr_id'";
$result = mysql_query($sql);
return ($row["usr_rechte"]);
}
aber warum sagtest du eben das ich die struktur verändern solle? was stimmt denn da nicht oder was kann/sollte man besser machen?

greetz fraylman
Fraylman ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
include() ersetzen Shadow21 PHP Tipps 2006 3 30.08.2008 14:13
include isoliert ausführen – Lösungsansatz gesucht veit PHP-Fortgeschrittene 8 09.04.2008 09:26
hinter include wird eine 1 angezeigt |~Râdîant~| PHP Tipps 2008 8 19.09.2007 13:52
include Dateien wieder ausängen o.Ä. netti PHP Tipps 2007 8 17.12.2006 15:14
include problem Canni PHP Tipps 2006 26 14.11.2006 14:24
include, nur bestimmten teil neu laden Calli PHP Tipps 2006 2 27.01.2006 15:57
include aus frame heraus auf anderen Frame Calli PHP Tipps 2005-2 2 08.09.2005 15:23
Auf Firmen-Server funzt kein include aus fremden Verzeichnis PHP-Fortgeschrittene 3 19.07.2005 16:49
[Erledigt] Include liegt in einem anderen Verzeichnis - es geht nix PHP Tipps 2005-2 3 03.07.2005 22:40
Warum eigentlich immer include? Zero.exe PHP Tipps 2005 10 17.03.2005 15:30
[Erledigt] Sessions auch bei include aktiv? PHP Tipps 2005 1 28.02.2005 19:58
[Erledigt] Variable geht bei include verloren PHP Tipps 2004-2 8 03.12.2004 09:13
[Erledigt] Problemme mit include... PHP Tipps 2004-2 6 30.11.2004 12:20
HTTP_GET_VARS + Include = Array leer PHP Tipps 2004-2 3 24.11.2004 15:12
include Problem andrew22 PHP Tipps 2004 26 10.09.2004 16:04

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php include schlägt fehl, php include projekte struktur, include schlägt fehl, fehl inkludierung, user php include, php inculde schlägt fehl, php-funktionsdatei vorladen, cookie include.php, cannot redeclare check_user() (previously declared, redeclare umgehen, warum schlug include fehl? php, fatal error: cannot redeclare check_user()on line 8

Alle Zeitangaben in WEZ +2. Es ist jetzt 23:21 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.