mediengestalter.info
FAQ :: Mitgliederliste :: MGi Team

Willkommen auf dem Portal für Mediengestalter

Aktuelles Datum und Uhrzeit: Di 19.03.2024 09:14 Benutzername: Passwort: Auto-Login

Thema: PHP Log-In Script mit Session und geschützen Bereich vom 23.11.2009


Neues Thema eröffnen   Neue Antwort erstellen MGi Foren-Übersicht -> Programmierung -> PHP Log-In Script mit Session und geschützen Bereich
Seite: 1, 2  Weiter
Autor Nachricht
jadafoxx
Threadersteller

Dabei seit: 24.01.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Mo 23.11.2009 22:24
Titel

PHP Log-In Script mit Session und geschützen Bereich

Antworten mit Zitat Zum Seitenanfang

Hallo,

ich bräuchte unbedingt ein bisschen Hilfe.
ich habe wirklich so gut wie keine ahnung von php aber muss einen kleinen geschützen login bereich programmieren.
soweit funktioniert auch als bis auf einer fehlermeldung in der geschützen datei. die seite wird angezeigt und funktionier aber es ist immer folgende meldung zu sehen:

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at D:\webhosting\webs\www.fliesenverband.de\deutsch\fliesen\mitglied\login\login.php:10) in D:\webhosting\webs\www.mustermann.de\deutsch\mitglied\login\login.php on line 194

ich kann damit leider nicht anfangen, aber ich denke es ist bestimm irgendwie nur eine kleinigkeit!????

da ich mich schon schwer mit diesem script getan habe und ich schon froh bin dass es halbwegs funktioniert, würde ich es auch gerne weiterverwenden.

danke für eure hilfe im voraus
  View user's profile Private Nachricht senden
Sarky

Dabei seit: 29.06.2002
Ort: Düsseldorf
Alter: 42
Geschlecht: Männlich
Verfasst Di 24.11.2009 02:18
Titel

Antworten mit Zitat Zum Seitenanfang

Eigentlich beschreibt Dir PHP ziemlich genau wo das Problem liegt *zwinker*

Cookies werden über den HTTP-Header gesetzt und wenn Du mit Deinem Script irgendeine Form von Ausgabe an den Browser erzeugst und daraufhin versucht, einen Cookie zu setzen, kann das nicht funktionieren, da die Header bereits gesendet worden sind um den Text anzeigen zu lassen.

Du fängst nun also in Zeile 10 Deiner login.php an, Inhalte an den Browser auszugeben und versuchst dann später in Zeile 194 mit Cookies zu arbeiten. Dieser Teil ab Zeile 194 muss also VOR einer Ausgabe an den Browser passieren und Dein Problem ist gelöst.
  View user's profile Private Nachricht senden
Anzeige
Anzeige
jadafoxx
Threadersteller

Dabei seit: 24.01.2008
Ort: -
Alter: -
Geschlecht: -
Verfasst Di 24.11.2009 18:37
Titel

Antworten mit Zitat Zum Seitenanfang

Hallo,

und vielen vielen Dank für deine schnelle Antwort.
Hat mir wirklich geholfen
  View user's profile Private Nachricht senden
Kric

Dabei seit: 23.11.2006
Ort: Levern
Alter: 37
Geschlecht: Weiblich
Verfasst Mi 25.11.2009 11:39
Titel

Antworten mit Zitat Zum Seitenanfang

Ich hab auch ne kleine frage, zwar zum thema aber doch etwas anderes:

Ich möchte gerne die in meiner datenbank gespeicherten benutzerdaten auf der ersten seite im geschützten bereich anzeigen lassen. Irgendwie ist der platz dafür freigehalten, man sieht allerdings nichts. Hier mein script:

<?php
require("connect.inc.php");
$query = mysql_query("SELECT username, password FROM benutzer WHERE username = '".$_SESSION['username']."'");
$result = mysql_fetch_array($query);
if( $_SESSION['username'] != $result['username'] && $_SESSION['password'] != $result['password'] ) {
header("location:index.php");
die;
}
##############################################################
function display($name, $firma, $email, $noemail){


?>
<body>
<div id="main_content">
<div class="main_inside">
<h3>Kundenbereich</h3>
<p><b>Benutzerdaten:</b><br/>
<? echo $name.'<br>';
echo $firma.'<br>';
echo $email.'<br><br>';

if ($noemail == 'ja') echo 'E-Mail Adresse wird <b>NICHT</b> angezeigt:
<a href="noemail.php?noemail=ja"><img id="email_anzeigen" src="images/login_email_nein.png">';
else echo 'E-Mail Adresse wird angezeigt:<a href="noemail.php?noemail=nein"><img id="email_anzeigen" src="images/login_email_ja.png">';
echo '</a><br><br>';
echo '<a href="./passwordandern.php" class="mehr_link"><div class="passwort"></div>Passwort ändern</a>';
echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
echo '&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;';
echo '<a href="logout.php" class="mehr_link"><div class="abmelden"></div>Abmelden</a>';
echo '<br><br>'
?></p>
<p>
<b>Forum</b><br/>
<a href="Kundenbereich/forum/index.php"><div class="login_img_forum"></div></a>
Im Forum können Sie mit anderen registrierten Kunden und der LIS GmbH Informationen austauschen. Sie können hier Fehler beschreiben, Anregungen machen und Tips geben.
<br/><br/>

<b>Downloadbereich</b><br/>
<a href="login_download.php"><div class="login_img_download"></div></a>
In diesem Bereich stellen wir die neuesten Programme/Updates und andere Dateien für Sie zum Download bereit.<br/><br/>

<b>E-Mail Liste</b><br/>
<a href="Kundenbereich/benutzer_anzeige.php"><div class="login_img_email"></div></a>
</p>
</div>
</div>
</body>

<?
}
###############################################################################

$sql = "SELECT username, anzname, firma, email, noemail FROM benutzer WHERE username LIKE '$user'";
$result = mysql_query ($sql);
$row = mysql_fetch_array ($result);

echo $row[anzname]."\n";
echo $row[username];
if ($row[anzname]){
$name = $row[anzname];
}
else {
$name = $row[username];
}

$firma = $row[firma];
$email = $row[email];
$noemail = $row[noemail];

/*if (!$name) {
?>
<SCRIPT language="JavaScript">
<!--

function check1(){
open("login_index.php","_top");
}

setTimeout('check1()', 0);

//-->
</SCRIPT>
<?
}
else */display($name, $firma, $email, $noemail);

?>


Kann mir wer helfen? Mir sagen wo das problem liegen könnte? Danke im voraus!!
  View user's profile Private Nachricht senden
Eistee
Administrator

Dabei seit: 31.10.2001
Ort: Grimma
Alter: 45
Geschlecht: Männlich
Verfasst Mi 25.11.2009 12:30
Titel

Antworten mit Zitat Zum Seitenanfang

Zitat:
else */display($name, $firma, $email, $noemail);


Also wenn das wirklich so drin steht ist die display funktion auskommentiert?

Desweiteren ist der Code absolut grausam und ich würde (ohne genaueres hinsehen) ein auf diesem Level programmiertes System nicht in sicherheitskritischen Bereich einsetzen - Was ein geschützer Bereich ja meist ist...
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Kric

Dabei seit: 23.11.2006
Ort: Levern
Alter: 37
Geschlecht: Weiblich
Verfasst Mi 25.11.2009 13:32
Titel

Antworten mit Zitat Zum Seitenanfang

nene, tschuldigung, ist nicht auskommentiert...

Ja also ich möchte gerne bei dem code bleiben, so sicher oder unsicher der login bereich dann auch ist.

Ich habe aber immer noch keine antwort auf die frage, warum die "benutzerdaten" - username, firma, email - nicht angezeigt werden, wo sie sichtbar sein sollten. Steigt jemand durch den code durch und kann mir eine mögliche antwort geben?
  View user's profile Private Nachricht senden
Eistee
Administrator

Dabei seit: 31.10.2001
Ort: Grimma
Alter: 45
Geschlecht: Männlich
Verfasst Mi 25.11.2009 13:47
Titel

Antworten mit Zitat Zum Seitenanfang

Wenn du bei dem Code bleiben möchtest, bitte Lächel Aber es ist dermassen wirr und anscheinend auch mit test echo's drinne, dass ich sehr stark bezweifel ob das überhaupt jemals funktioniert hat. Und ohne die Datenstruktur, Aufruf Url etc zu kennen kann man eh nichts sagen. Und eine genaue BEschreibung was überhaupt genau nicht funktioniert gabs ja auch noch nicht...

Und zum unsicheren Login Bereich - ist schon immer sehr cool und macht nen super Eindruck wenn Kunde A durch ein bischen rumprobieren die Daten von Kunde B,C,D sehen kann Grins
  View user's profile Private Nachricht senden Website dieses Benutzers besuchen
Kric

Dabei seit: 23.11.2006
Ort: Levern
Alter: 37
Geschlecht: Weiblich
Verfasst Mi 25.11.2009 13:56
Titel

Antworten mit Zitat Zum Seitenanfang

Es ist der code von der alten webseite. Also gefunzt hats schon. Nur bei mir jetzt irgendwie nicht *Schnief*

Und zu den kunden: nicht bös gemeint, aber so schlau sind se nett ^^ Die paar die wir haben, die interessiert sowas nicht.

Ursprünglich war ich nach der suche danach, wie man es hinkriegt, dass die in der datenbank abgelegten daten dem eingeloggten user nochmal präsentiert werden. In diesen fall seinen namen, seine firma und seine email adresse. Quasi ein "willkommen herr x".

Ich hab bischen watt danach gegooglet, auch was gefunden, funktioniert aber nicht in meinem bestehenden code. Und leider sind meine kenntnisse nicht so weitreichend, dass ich wüsste, worans liegt *zwinker*

*würg*

Na jutt, muss ich zusehen wie ichs hinkrieg... Aber danke trotzdem für die aufmerksamkeit ^^
  View user's profile Private Nachricht senden
 
Ähnliche Themen User- und Session-ID per Cookie, Session oder in URL durchre
session id?
DVD- Session brennen auf MAC?
PHP-SESSION aktualisieren ?
session id aus url entfernen
problem mit session PHP
Neues Thema eröffnen   Neue Antwort erstellen Seite: 1, 2  Weiter
MGi Foren-Übersicht -> Programmierung


Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst an Umfragen in diesem Forum nicht mitmachen.