ERLEDIGT
NEIN
NEIN
ANTWORTEN
14
14
ZUGRIFFE
468
468
EMPFEHLEN
-
Hallo zusammen,
ich hab ein sehr schwieriges Problem. Ich hoffe jemand hier kennt eine Lösung. Ich sitze seid 4 monaten an dem Problem doch keiner hat eine genaue ahnung woran es happert. Und zwar geht es darum, das wenn man sich bei mir auf der Seite einloggt nach dem Login eine Weiße Seite kommt. Dies ist aber nicht immer der Fall. Mal kommt die Seite mal kommt die Seite nicht.
Also Ich habe eine Vermutung, dass es an den Session liegt? Bin mir aber nicht sicher. Weil wenn sich immer der selbe einloggt mit der selbene e.mail und Passwort funktionierts eigentlich immer. Sobald man sich dann mit einen anderen Account anmeldet funktionierts plötzlich nicht mehr....
Also die weiterleitungsseite enthält eine weiße leere Seite. Das heisst wenn man Quelltext anzeigen klickt, sieht man nichts außer die Standard Html tags wenn man ein leeres HTML Dokument hat.
Ich hoffe ihr seid Wissender..
LG dankeGeändert von thehasso (21.12.09 um 01:31 Uhr)
-
Du hast 2 if(). Du solltest diese mal mit else() ergänzen umd herauszufinden wo er scheitert. ggf. die wichtigen Variablen mit var_dump() ausgeben.
Ev. auch mal die mysql_query-Fehler abfangen und ausgeben.---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
-
daran liegts nicht. Hab schon mehrere Skripte versucht. Ich vermute es liegt an den Sessions. Kann das seiN?
-
Dann wäre es nicht schlecht, wenn du auch diese Seite zeigst.
Übrigens:bei deaktivierten Cookies wird dort keine Session aufrechterhalten, weil du die Session-ID nicht über die URL übermittelst.
Weiterhin:Code :1
if (isset($_POST['strEmail'])) {
dort solltest du als erstes die Session leeren.
Andernfalls blieben bei einem fehlerhaften 2.Login die Session-Daten vom vorherigen erfolgreichen Login erhalten.
Schlussendlich:
Wenn man einen Bug hat, dann findet man ihn durch debuggen...wie man das angeht, hat yaslaw angedeutet:
1.Prüfen, was für POST-Daten ankommen
2. Query auf Fehler prüfen
Was ist z.B. hiermit?
..heissen die Felder nun Email+Password odet strPassword+strEmail ?Code :1 2 3 4
$SQL_1 = sprintf("SELECT * FROM benutzer WHERE [B]Email[/B] = '%s' AND [B]Password[/B] = '%s' ",$loginIntId,$password); $strPassword = $RECset["[B]strPassword[/B]"]; $strEmail = $RECset["[B]strEmail[/B]"];
3.num_rows() prüfen
4.Inhalt der Session nach Setzen der Variablen prüfen
5.Inhalt der SEssion nach erfolgter Weiterleitung prüfen
6. Anweisung für den Fall, dass $_POST['strEmail'] nicht gesetzt ist....der wird aktuell nicht berücksichtigt->weisse Seite
-
Hallo,
Ich hab alle Sache die du mir aufgelistet hast einmal getestet. Verrückterweise funktioniert es LOKAL also mit XAMPP reibungslos. Man kann sich mit 5 unterschiedlichen Accounts anmelden. Bei der Weiterleitung kommt nie eine Weiße Seite.
Ich hab das Skript mal so gemacht, das Session mit UNSET beendet werden wie ihr mir vorgeschlagen habt. Bei jeden neuen Account anmeldung hat die Session dann neue Daten.
Außerdem habe ich alle Variablen mit var dum ausgeben lassen dann erschiend:
Den Hoster hab ich auch kontaktiert, vielleicht liegts daran das ind er db viel mehr Datensätze vorliegen als LOAKL er meinte jedoch er schließe zu 100% aus dass es am Server liege.
Wenn ihr selbst mal testen wollt dann müsst ihr auf www.seelebanon.de gehen und dann ein Account machen.
Übrigens ich muss auch sagen, dass wenn ich das Login im Internet versuche es mit meinen Standard Account fast immer geht. Log Ich mich mit einer anderen Email ein kommt diese Weiße Seite. Das ist auch bis gerade so auch nachdem ich das mit dem Unset gemacht habe.
weil nur in der Datei das Skript vom Login so ist wie hier gepostet!
Kann das irgendwie mit dem fehler zusammenhängen, das für unterschiedliche User unterschiedliche Cookies gesetzt werden? Jedoch hat jeder Cookie eine andere ID.Geändert von thehasso (21.12.09 um 01:32 Uhr)
-
-
Die Datei ist riesig, deswegen hab ich bei der Weiterleitung es bei der index.dwt.php auf treffdaten weitergeleitet weil diese Deitei sogut wie sehr klein ist. Die Start.dwt.php ist jedoch riesig deswegen poste ich hier mal nur die zeilen über und ein bissien unter dem HTML TAG
Geändert von thehasso (21.12.09 um 01:31 Uhr)
-
Dieser Code macht mir das, was er tun sollte, er gibt jenes aus:
....eine weisse Seite, da kein darzustellender Inhalt vorhanden ist.Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Unbenanntes Dokument</title> </head> <body> </body> </html><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="shadowbox.css"> <script type="text/javascript" src="shadowbox.js"></script> <script type="text/javascript"> Shadowbox.init({ language: "it", players: ["qt","img"], }); </script>
-
Ne leider auch nicht. Hab den Inhalt weg gemacht.
Sehr wichtiger Hinweis wär eigentlich dass das Login mit meinen Standard Account geht und das fast immer und mit anderen Accounts kaum. Bei manschen Kollegen kommt immer nur eine Weiße Seite bei anderen geht's ab und zu.
Sehr seltsam langsam.
-
Ich weiss beim besten willen nicht, wie man dir Helfen soll.
Du postest genau den Code nicht, der für die Ausgabe sichtbarer Inhalte sorgt, und der den Grund dafür in sich birgt, dass nichts zu Sehen ist
-
Hallo,
ich hab jetzt mal ein Test gemacht und zwar die weiterlitungsseite enthält nur folgendes:
weiter.php
Beachte: Login unter: http://www.seelebanon.de/index.dwt.phpPHP-Code:<?
if (!isset($_SESSION)) {
session_start();
$strVorname = $_SESSION['MM_Vorname']; //explizit von mir eingefügt!
$strNachname = $_SESSION['MM_Nachname'];
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>
</head>
<body>
<?
echo $strVorname;
echo $strNachname;
?>
</body>
</html>
So klappt es bei jeden! Also bei jeden Kollegen kommt danach der Name. Das heisst doch es liegt am Inhalt der weiterleitungsseite oder?Geändert von thehasso (20.12.09 um 15:10 Uhr)
-
Das heisst zumindest, dass du keine Seite bekommst, wenn du etwas ausgibst.
-
Hallo zusammen!!
ich hab den Fehler gefunden!... Folgendes ist die Ursache:
Die Einbindung dieser Datei versucht den Fehler:
include("check_user_online.php");
Wenn ich diese Datei Einbinde kommt der Fehler. Was ist daran so schlimm?
LG
-
21.12.09 22:07 #14Maik Tutorials.de Gastzugang
-
oki hier:
kanns daran liegen dass ich anstatt include ein require machen muss? hier ist auf jeden fall der Code...
Ja es liegt dranPHP-Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Unbenanntes Dokument</title>
</head>
<body>
<?php
if (!isset($_SESSION)) {
session_start();
}
?>
<?php
require_once('checkuseronline_verbindung.php');
$lastseen = date("d.m.Y");
// aufbau zur datenbank
$dbconn = mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($db,$dbconn);
// vorbereiten der benötigten SQL-Abfragen
$query_delete = "DELETE FROM online WHERE lastseen < NOW() - INTERVAL 10 MINUTE";
$query_insert = "INSERT INTO online (session,intID, id, nummer, lastseen) VALUES
('".mysql_real_escape_string($_SESSION['MM_UserId'])."',
'".mysql_real_escape_string($_SESSION['MM_UserId'])."',
'".mysql_real_escape_string($_SESSION['MM_UserId'])."',
'".mysql_real_escape_string($_SESSION['MM_UserId'])."',
NOW() ) ON DUPLICATE KEY UPDATE lastseen = NOW()";
$query_numrows = "SELECT * FROM online";
// hier noch ein INSERT einfügen für lastlogin STOP! kein insert sondern ein update!
//**********************************************
//Überprüfen ob Mitglied in der tabelle ist
//**********************************************
$sql = "SELECT * FROM `tblbenutzer` WHERE (`intID`='".mysql_real_escape_string($_SESSION['MM_UserId'])."') ";
$result = mysql_query($sql);
if($result && (mysql_num_rows($result) > 0) ){ // wenn Antwort und was gefunden
//**********************************************
// Mitglied Updaten
//**********************************************
$SQL = "UPDATE lastlogin SET " ;
$SQL = $SQL . " session = '" . mysql_real_escape_string($_SESSION['MM_UserId']) . "', ";
$SQL = $SQL . " intID = '" . mysql_real_escape_string($_SESSION['MM_UserId']) . "', ";
$SQL = $SQL . " lastseen = '" . mysql_real_escape_string($lastseen) . "' ";
$SQL = $SQL . " WHERE intID = " . mysql_real_escape_string($_SESSION['MM_UserId']) ;
mysql_query($SQL);
} else {
//**********************************************
//Mitglied ist nicht drin, deswegen einfügen
//**********************************************
$query_seen = "INSERT INTO lastlogin (session,intID, lastseen)VALUES
('".mysql_real_escape_string($_SESSION['MM_UserId'])."',
'".mysql_real_escape_string($_SESSION['MM_UserId'])."',
NOW()) ON DUPLICATE KEY UPDATE lastseen=NOW()";
mysql_query($query_seen);
}
// SQL-Abfrage $query_delete ausführen. Somit werden alle session id's,
// die älter als 10 minuten sind bzw. benutzer die seit 10 minuten keinen weiteren
// seitenaufruf gemacht haben gelöscht und nicht mehr mitgezählt.
mysql_query($query_delete);
// in der datenbank zeit des letzten eigenen seitenaufrufes updaten
mysql_query($query_insert);
?>
</body>
</html>
Macht man anstatt ein INCLUDE ein REQUIRE dann gehts.....
Weshalb ist das so das ist aber sehr seltsam...
Ähnliche Themen
-
Bekomme bei einer .PHP nur ne weiße Seite
Von MC-René im Forum PHPAntworten: 23Letzter Beitrag: 13.10.10, 09:13 -
Weiße Seite wegen IP-Ermittlung
Von thehasso im Forum PHPAntworten: 2Letzter Beitrag: 23.01.10, 09:24 -
weiße Seite im Internetexplorer
Von netzjunkie im Forum HTML & XHTMLAntworten: 44Letzter Beitrag: 22.11.09, 20:11 -
Drucker gibt nur weiße Seite aus
Von Saimen im Forum HardwareAntworten: 1Letzter Beitrag: 05.12.08, 23:12 -
WebFotogalerie zeigt nur weiße Seite an
Von Neffets001 im Forum PhotoshopAntworten: 10Letzter Beitrag: 13.01.08, 16:48





Zitieren


Login






[PHP][Snippet] Array zu XML konvertieren