php.de
Alt 13.08.2004, 10:45  
Gast
 
Beiträge: n/a
Standard Login

Servus xD

also ich bin neu hier und habe folgendes problem. ich habe mir ein login geschrieben, die anmeldung (eintragung in die sql datenbank) funktioniert, das abrufen der daten aus der mysql datenbank funktioniert, aber denoch stehe ich jetzt vor dem nächsten problem.

ich bin soweit, dass das script, wenn man den benutzernamen und passwort angibt, dass er das eingegebene passwort mit dem aus der sql datenbank vergleicht un d ausgibt, dass die passwörter übereinstimmen.

nun das problem:

ich möchte, dass wenn die passwörter übereinstimmer, dass er eine neue seite öffnen bzw zu der "internen" seite sprint.


das ist der quellcode:
Zitat:
<html>
<head>
<title>- LOGIN -</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link href="Main.css" type="text/css" rel="stylesheet">
</head>

<body>

<table width="100%" border="0" height="100%" cellpadding="0" cellspacing="0" >
<tr>
<td colspan="3" class="MainPage" height="120"></td>
</tr>
<tr>
<td width="15%" valign="top" class="MainPage" height="100%">
<? include("includes/Links.inc.php"); ?>
</td>
<td width="70%" height="100%" bgcolor="#FFFFFF" align="center" valign="top">
<h3>Login</h3>



<form method="POST" action="" name="login_form">
<table width="50%" border="0" align="center">
<tr>
<td>Benutzer</td>
<td><input id="benutzer" name="benutzer" type="text"></td>
</tr>
<tr>
<td>Passwort</td>
<td><input id="passwort" name="passwort" type="password"></td>
</tr>
<tr>
<td></td>
<td align="left"><input id="anmelden" name="anmelden" value="Anmelden" type="submit"></td>
</tr>
</table>
</form>
<?php
/* INHALTE DER FELDER IN DIE VARIABLEN ÜBERGEBEN */
$benutzer = $_POST['benutzer'];
$passwort = $_POST['passwort'];

/* INFORMATIONEN ZUM SERVER */
$db_server = "localhost";
$db_name = "login";
$db_user = "root";
$db_passwort = "connect";

/* FELDER ÜBERPRÜFEN OB AUSGEFÜLLT */
if ($benutzer !="" && $passwort !="") {

/* VERBINDUNG ZUM SERVER UND DATENBANK */
$db = @MYSQL_CONNECT($db_server,$db_user,$db_passwort)
or die ("Konnte keine Verbindung zur Datenbank herstellen");

/* PRÜFEN OB VERBINDUNG BESTEHT */
if ($db) {

//echo "Verbindung hergestellt!";



/* VARIABLEN EINFÜGEN UND IN DIE DATENBANK EINTRAGEN */
$insert = mysql_db_query($db_name,"SELECT passwort FROM user WHERE benutzer = '$benutzer'");
//echo mysql_error();
while($row = mysql_fetch_row($insert)){
//echo "
Das Passwort ist: " . $row[0];
$passwort_out = $row[0];
}

if ($passwort == $passwort_out) {
header ("location: intern.php"); // hier sollte er springen "FEHLER: Warning: Cannot modify header information - headers already sent by (output started at C:\www\LOGIN\Login.php:15) in C:\www\LOGIN\Login.php on line 71"
}
else {
//echo "Passwort faslch!";
}
} elseif ($send) {
//echo "Ein oder mehrere Felder sind nicht ausgefüllt!";
} else {
//echo "Verbindung nicht hergestellt!";
}

}

?>
</td>
<td width="15%" height="100%" class="MainPage" valign="top">
<? include("includes/Navigation.inc.php"); ?>
</td>
</tr>
<tr>
<td colspan="3"></td>
</tr>
</table>

</body>
</html>
Dort wo:
Zitat:
if ($passwort == $passwort_out) {
header ("location: intern.php"); // hier sollte er springen "FEHLER: Warning: Cannot modify header information - headers already sent by (output started at C:\www\LOGIN\Login.php:15) in C:\www\LOGIN\Login.php on line 71"
}
else {
//echo "Passwort faslch!";
}
sollter er eigendlich zur intern.php - seite springen tut es aber nicht, und zeigt folgenden Fehler in dem Browser an:

Zitat:
Warning: Cannot modify header information - headers already sent by (output started at C:\www\LOGIN\Login.php:15) in C:\www\LOGIN\Login.php on line 71
ich würde mich freun, wenn mir jemand weiterhelfen kann.

PS: Nicht irritieren lassen, die absätze habe ich bei mir richtig gemacht, sodass keine fehler mit den quotations im quellcode passieren dürfen.

MfG
Christian Jost
 
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 13.08.2004, 10:48  
Gast
 
Beiträge: n/a
Standard

Zitat:
Remember that header() must be called before any actual output is sent, either by normal HTML tags, blank lines in a file, or from PHP. It is a very common error to read code with include(), or require(), functions, or another file access function, and have spaces or empty lines that are output before header() is called. The same problem exists when using a single PHP/HTML file.
> www.php.net/header
 
Alt 13.08.2004, 10:50  
Gast
 
Beiträge: n/a
Standard

das weiß ich. aber wo habe ich einen output gemacht? habe alles auskomentiert, das mit echo etc was erzeugen könnte. auf der seite war ich ja schon nur finde nix gescheites, was mir da weiterhelfen kann, was ich falsch gemacht habe.
 
Alt 13.08.2004, 10:51  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Christian J.
aber wo habe ich einen output gemacht?
login.php Zeile 15 .. steht in der Fehlermeldung überdeutlich drin ...
Guradia ist offline  
Alt 13.08.2004, 10:52  
Gast
 
Beiträge: n/a
Standard

ahh danke... ich glaube ich weiß wio der fehler ist... ml schaun wenn das nicht geht dann melde ich mich wieder.

danke
 
Alt 13.08.2004, 10:57  
Gast
 
Beiträge: n/a
Standard

nein das war er nicht ich habe den include mal rausgenommen etc aber nix geht. wieder selber fehler.

ich weiß das da die zeile steht, aber selbst wenn ich die zeile ersetze durch den inhalt des includes zeigt der immer noch die selbe fehlermeldung an

Zitat:
Warning: Cannot modify header information - headers already sent by (output started at C:\www\LOGIN\Login.php:15) in C:\www\LOGIN\Login.php on line 81
 
Alt 13.08.2004, 11:02  
Erfahrener Benutzer
 
Registriert seit: 21.05.2008
Beiträge: 2.150
Guradia befindet sich auf einem aufstrebenden Ast
Standard

... soo . habe jetzt sogar mal den Code angeschaut .. und eigentlich müsse ich wohl deinen Schädel mal gegen die nächste Tischplatte dotzen ...

;P

Der ganze Anfang deines Script besteht aus AUSGABEN ... .. fängt schliesslich mit HTML an .. bevor es mal zu PHP kommt ..

Dies hier oben drüber;
PHP-Code:
<?php ob_start(); ?>
Nach dem header();
PHP-Code:
<?php ob_end_clean(); exit(); ?>
Guradia ist offline  
Alt 13.08.2004, 11:04  
Gast
 
Beiträge: n/a
Standard

danke ;D

dass du mir so vor den kopf stößt

mein php ist nicht so gut habe vorgestern damit angefangen ;D naja und das ist mein erster test ;D sry

naja kann man nix machen trotzdem danke ich test das mal

MfG
Christian
 
Alt 13.08.2004, 11:05  
Erfahrener Benutzer
 
Registriert seit: 05.07.2004
Beiträge: 578
WarrenFaith
WarrenFaith eine Nachricht über ICQ schicken
Standard

ich hab meine Logins immer anders und wesentlich unkomplizierter gelöst

Die Loginseite:
Code:
<?
	if (session_id()=="") {session_start();}
	include "dbconnect.php";
?>
	<html>
	<head>
	<title>Login</title>
	</head>
	<body alink="#FFFFFF" vlink="#FFFFFF" link="#FFFFFF" bgcolor="#000000" text="#FFFFFF">
	
	<form action="main.php?show=overview" method="POST">
	<center><table border="0" width="300" cellpadding="0" cellspacing="0">
		<tr>
			<td><center>Willkommen bei Atoll Island - Login</center></td>
		</tr>
		<tr>
			<table border="0" width="300" cellpadding="0" cellspacing="0">
				<tr align="center">
					<td width="150">Name</td>
					<td><input name="nick" type="text"></td>
				</tr>
				<tr align="center">
					<td width="150">Password</td>
					<td><input name="passwd" type="password"></td>
				</tr>
			</table>
			<table border="0" height="50" width="300" cellpadding="0" cellspacing="0">
				<tr align="center">
					<td><input name="Submit" type="submit" value=" OK "></td>
				</tr>
				<tr align="center">
					<td>Neu? Registrierung!</td>
				</tr>
			</table>
		</tr>
	</table>
	</form>
	
	</body>
	</html>
?>
auf der main.php (wird per Formular-Action geladen) wird die Korrektheit überprüft:

Code:
// Abfrage: Logindaten
	$result_account = mysql_query("SELECT * FROM accounts WHERE name ='$nick' AND password = '$passwd'");
	$accounts = mysql_fetch_array($result_account);
	if (!(($nick==$accounts['name']) && ($passwd==$accounts['password']) && ($accounts['active_id']==1)))
	{
		echo "Logindaten fehlerhaft. Bitte erneut einloggen. <a href=\"index.php\">Login</a>";
		$logstatus = false;
		session_destroy();
		exit();
	} else {
		$logstatus = true;
		session_register(logstatus);
	}
per sessions wird der "logstatus" übertragen und man kann ohne probleme weiterhin auf der page surfen ohne sich neu einloggen zu müssen....
__________________
Developers-Guide.net
Senseless
WarrenFaith ist offline  
Alt 13.08.2004, 11:10  
Gast
 
Beiträge: n/a
Standard

auch gut merke ich mir mal ;D

alles kopien in meine files und dann mal speichern damit man mal später einen blick drauf werfen kann.

aber danke guradia
es funktioniert
das ist toll


^^

MfG
Christian
 
 


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
[Erledigt] Login erstellen coraplanet PHP Tipps 2008 33 21.04.2008 16:49
Forum Login per curl leb0rtran PHP Tipps 2008 1 19.03.2008 12:47
Etwas komplexerer Login --> Keine Angst, Suche benutzt dethlef14 PHP Tipps 2006 7 02.10.2006 00:35
.htaccess Login über HTML Login Felder gestalten php1 PHP-Fortgeschrittene 2 09.08.2006 13:53
Session Logout Login Navigation TailerD PHP Tipps 2006 10 24.06.2006 17:12
Frage zu Login Kein Genie PHP Tipps 2006 5 16.06.2006 12:34
PHP / MySQL | Login Script Problem PHP Tipps 2006 15 17.02.2006 12:26
phpBB Loginscript in eigenes Login Script einbinden 2wuck PHP Tipps 2007 4 19.12.2005 23:10
Problem mit Login Script PHP Tipps 2007 4 15.11.2005 17:29
wie speichere ich eine ip beim login? annaloga PHP Tipps 2005-2 23 14.10.2005 17:10
[Erledigt] Login, LogIn, Anmelden, Einloggen -&amp;amp;amp;amp;gt; ??? Off-Topic Diskussionen 20 14.07.2005 11:01
[Erledigt] Windows XP Login Namen verwenden? PHP-Fortgeschrittene 14 17.03.2005 15:37
login mit session id PHP Tipps 2005 10 26.01.2005 12:32
[Erledigt] Zurück-Button beim Login PHP Tipps 2005 7 25.01.2005 17:22
Probleme bei Login PHP Tipps 2004 5 18.07.2004 22:08


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:45 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.