WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   PHP (Anfänger) Problem! (http://www.wcm.at/forum/showthread.php?t=133571)

creibl 06.05.2004 23:46

PHP (Anfänger) Problem!
 
Hallo zusammen,

Habe eine Loginseite, wo man Benutzernamen aus einem Dropdown Menü auswählt und das dazugehörige Passwort eingibt.

Wenn ich dann aber auf anmelden klicke, bekomme ich nur eine leere Seite. Wo liegt der Fehler begraben???

Hier die Scripts:

login.php

<?
//Verbindung zur DB herstellen
$db = @mysql_connect("localhost","root");
@mysql_select_db(Test);
@mysql_query($db);

//Variablen
$Anmelden = array_item($_POST, 'Anmelden');
$Passwort = array_item($_POST, 'Passwort');
$Username = array_item($_POST, 'Username');

function array_item($ar, $key) {
if (array_key_exists($key, $ar))
return ($ar[$key]);
}

if ($Anmelden) {
$result =
mysql_query("SELECT UserID, Username FROM Users WHERE Username = '$Username' and Passwort = '$Passwort'");

if (mysql_num_rows($result)==1) {
echo '<META HTTP-EQUIV="REFRESH" CONTENT="0;URL=./home.html" target="_to">';
exit;
}
}
@mysql_close($db);
?>



und hier der Teil der login.html


<h2><font face="Futura Md BT" size="6">Bitte melden Sie sich mit ihrem Benutzernamen und ihrem Passwort an:</font></h2>
<h2></h2>
<form method="post" action="login.php">
<table width="19%" border="1" cellspacing="2" cellpadding="0">

<tr align="right" valign="middle">
<td align="right" valign="middle" width="15%">
<font face="Futura Lt BT" size="4">Username:</font>
</td>
<td align="left" valign="middle" width="25%">
<select name="Username" size="1">
<option value="Name1">Name1</option>
<option value="Name2">Name2</option>

</select></td>
</tr>
<tr>
<td align="right" valign="middle" width="15%">
<font face="Futura Lt BT" size="4">Passwort:</font>
</td>
<td align="left" valign="middle" width="25%"><input type="password" name="Passwort" size="25"></td>
</tr>
<tr>
<td align="right" valign="middle" width="15%"></td>
<td align="left" valign="middle" width="25%"><input type="submit" name="Anmelden" value="Anmelden"></td>
</tr></form>
</table>
<h2></h2>
</div>
</body>


Danke schon mal im voraus!

_m3 07.05.2004 00:05

Re: PHP (Anfänger) Problem!
 
Zitat:

Original geschrieben von creibl
PHP-Code:

        echo '<META HTTP-EQUIV="REFRESH" CONTENT="0;URL=./home.html" target="_to">'


Du möchtest
a) einen "ordentlichen" HTTP Redirect machen oder
b) eine komplette HTML-Seite schicken und
c) eine absolute URL verwenden

P.S.: Ein Target wird da ned funktionieren.

ad a)
PHP-Code:

if (!headers_sent()) {
    
ob_end_clean();
    
header("Location: " $url);



creibl 07.05.2004 09:37

Hier nun die ganze HTML Seite.

@_m3 Danke für die Info, nur: Warum muss ich hier die URL absolut übergeben???




<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>
<meta http-equiv="content-type" content="text/html;charset=iso-8859-1">
<meta name="generator" content="Adobe GoLive">
<title>Login Verwaltungsprogramm!</title>
</head>

<body bgcolor="#3366CC" link="#FFFFFF" vlink="#FF0000" alink="#00FF00" text="#FFFF00" background="hintergrund.jpg">
<div align="center">
<h1></h1>
<h1></h1>
<h1><font face="Futura Md BT" size="7">Herzlich Willkommen im</font></h1>
<h1><font face="Futura Md BT" size="7">Verwaltungsprogramm</font></h1>


</p>


</p>
<h1></h1>
<h2><font face="Futura Md BT" size="6">Bitte melden Sie sich mit ihrem Benutzernamen und ihrem Passwort an:</font></h2>


</p>
<h2></h2>
<form method="post" action="login.php">
<table width="19%" border="1" cellspacing="2" cellpadding="0">

<tr align="right" valign="middle">
<td align="right" valign="middle" width="15%">
<font face="Futura Lt BT" size="4">Username:</font>
</td>
<td align="left" valign="middle" width="25%">
<select name="Username" size="1">
<option value="Name1">Name1</option>
<option value="Name2">Name2</option>
</select></td>
</tr>
<tr>
<td align="right" valign="middle" width="15%">
<font face="Futura Lt BT" size="4">Passwort:</font>
</td>
<td align="left" valign="middle" width="25%"><input type="password" name="Passwort" size="25"></td>
</tr>
<tr>
<td align="right" valign="middle" width="15%"></td>
<td align="left" valign="middle" width="25%"><input type="submit" name="Anmelden" value="Anmelden"></td>
</tr></form>
</table>
<h2></h2>
</div>
</body>

</html>



Vielleicht findet ja jemand den Fehler mit der leeren Seite!

Danke!

Potassium 07.05.2004 11:39

also ich würd schreiben:

PHP-Code:

if (mysql_num_rows($result)==1) {
     
header("location: namederseiteaufdiemankommensoll.php");



kikakater 07.05.2004 12:05

oder so:

PHP-Code:

if (mysql_num_rows($result)==1) {
     
header("location: namederseiteaufdiemankommensoll.[color=white]htm(l)[/color]");



creibl 07.05.2004 14:13

Habe es jetzt so gemacht, aber es ändert sich immer noch nichts.

Bekomme immer noch die leer Seite!

Was mache ich da bloß falsch?????

kikakater 07.05.2004 14:22

Alle beteiligten Files gezippt als RedirectKlapptnicht.zip (oder anderer Name *schüchterichmalherum*) posten und die Teilnehmer werden sich zumindest bemühen die Ursache zu klären.

creibl 07.05.2004 15:13

Anbei die Files login.html, login.php und home.html (ohne Grafiken!)

Vielleicht findet ja so jemand den Fehler.

kikakater 07.05.2004 15:42

Screenshot (ohne Taskleiste - muss nicht sein :D :rolleyes: ;) - ) :

kikakater 07.05.2004 15:43

Sprich: Bei mir geht es !


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag