Hallo Tutorials Community,
ich ahbe mir hier schon oft hilfe geholt und nun komme ich mit den bestehenden Theman nicht weiter.
es geht um ein eigenens Template system was ich aufbaue(lerne anhan dieses System PhP)
Mein erstes Problem ist der Login,
auf meinen Homeserver(Xampp) geht es sauber mit seesion und cookies,
auf meinem Server (debian5) geht der Login auch aber die Cookies werfen ein error aus,
Header was aleady send,
nunja hier mal der code:
login.php
config.php
Die seiten werden in eine Index mit get geladen,
index.php
mein 2.es Problem besteht darin das die Userprofile nciht gehen,
ich habe eine memberliste die auch funktioniert möchte nun mit einen weiteren get befehl user profile anbieten,
diese userprofile werden mit der id per get an die url dran gehängt,
leider sagt er mir das die seite nciht existieren würde...
memberlist.php
nunja ich hoffe ihr könnt mir helfen,
da ich anfänger bin hoffe ihr verzeiht mir den code,
er ist nun nicht perfekt aber er funktioniert für den anfang recht gut...
mfg kahly
ich ahbe mir hier schon oft hilfe geholt und nun komme ich mit den bestehenden Theman nicht weiter.
es geht um ein eigenens Template system was ich aufbaue(lerne anhan dieses System PhP)
Mein erstes Problem ist der Login,
auf meinen Homeserver(Xampp) geht es sauber mit seesion und cookies,
auf meinem Server (debian5) geht der Login auch aber die Cookies werfen ein error aus,
Header was aleady send,
nunja hier mal der code:
login.php
PHP:
<html>
<head>
<title>Das ist ein test</title>
<?php include 'templates/head.php'; ?>
</head>
<body>
<div id="site">
<?php include 'templates/header.php'; ?>
<?php
if(isset($_SESSION['loggedin']))
{
die("Du bist schon eingeloggt!");
} // That bit of code checks if you are logged in or not, and if you are, you can't log in again!
if(isset($_POST['submit']))
{
$username = mysql_real_escape_string($_POST['username']); // The function mysql_real_escape_string() stops hackers!
$password1 = mysql_real_escape_string($_POST['password']); // We won't use MD5 encryption here because it is the simple tutorial, if you don't know what MD5 is, dont worry!
$password = md5($password1); //Passwort wird md5 verschlüsselt.
$sqlusername = 'SELECT username FROM user WHERE username = "'.$username.'"'; //schauen ob es den Usernamen in tabelle user in spalte usernamen gibt.
$resultusername = mysql_query($sqlusername); //ergebnis speichern
$rowsusername = mysql_num_rows($resultusername); //ergebnis bearbeiten
if($rowsusername == 0) //wenn datensatzgefudnen:
{
echo "Username und Passwort stimmen nicht überein.";
exit;
}
//password bereits vorhanden?
$sqlusername = 'SELECT password FROM user WHERE password LIKE "'.$password.'"';
$resultusername = mysql_query($sqlusername);
$rowsusername = mysql_num_rows($resultusername);
if($rowsusername == 0)
{
echo "Username und Passwort stimmen nicht überein.";
exit;
}
else {
$sql1 = "UPDATE
user
SET
letzterLogin = '".time()."',
IP = '".$_SERVER['REMOTE_ADDR']."'
WHERE
username = '".$username."' AND
password = '".$password."'
";
mysql_query($sql1) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
if(isset($_POST['remember'])){
setcookie("cookname", $username, time()+60*60*24*100, "/");
setcookie("cookpass", $password, time()+60*60*24*100, "/");
$sql = "UPDATE
user
SET
autoLogin = 1,
letzterLogin = '".time()."',
IP = '".$_SERVER['REMOTE_ADDR']."'
WHERE
username = '".$username."' AND
password = '".$password."'
";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
}
// That snippet checked to see if the number of rows the MySQL query was less than 1, so if it couldn't find a row, the password is incorrect or the user doesn't exist!
$_SESSION['loggedin'] = "YES"; // Set it so the user is logged in!
$_SESSION['name'] = $username; // Make it so the username can be called by $_SESSION['name']
$_SESSION['password'] = $password;
$name = $_SESSION['name'];
die("Willkommen $name,<br>danke für deine Anmeldung"); // Kill the script here so it doesn't show the login form after you are logged in!
}// That bit of code logs you in! The "$_POST['submit']" bit is the submission of the form down below VV
}
echo "<form type='login.php' method='POST'>
Username: <br>
<input type='text' name='username'><br>
Password: <br>
<input type='password' name='password'><br>
Eingeloggt bleiben?
<input type='checkbox' name='remember'><br>
<input type='submit' name='submit' value='Login'>
</form>"; // That set up the form to enter your password and username to login.
?>
<?php include 'templates/footer.php'; ?>
config.php
PHP:
<?php
$eingeloggt = !isset($_SESSION['loggedin']);
if($eingeloggt)
{
}
else {
$name = "{$_SESSION['name']}";
}
if(isset($_COOKIE['cookname']) && isset($_COOKIE['cookpass'])){
$_SESSION['loggedin'] = "YES";
$_SESSION['name'] = $_COOKIE['cookname'];
$_SESSION['password'] = $_COOKIE['cookpass'];
}
?>
<?php
/*Unsere Seiten*/
$page = array();
$page['index'] = 'templates/index.php';
$page['register'] = 'templates/register.php';
$page['writeregister'] = 'templates/registerwrite.php';
$page['login'] = 'templates/login.php';
$page['geheim'] = 'templates/geheim.php';
$page['logout'] = 'templates/logout.php';
$page['memberlist'] = 'templates/memberlist.php';
$page['profil'] = 'templates/profil.php';
/* Hier fangen die Variablen an*/
//Verbindung mit Mysql aufbauen.
$verbindung = mysql_connect (
"******", //Ip des Servers.
"********", //Username.
"********" //Passwort.
)
or die ("keine Verbindung möglich. Benutzername oder Passwort sind falsch"); // Verbindung fehlgeschlagen?
mysql_select_db("cms") //Datenbank auswählen.
or die ("Die Datenbank existiert nicht."); //Datenbank existiert nicht?
// Online Status der User aktualisieren
if(isset($_SESSION['loggedin'])){
$sql = "UPDATE
user
SET
letzteAktion = '".time()."'
WHERE
username = '".$name."'
";
mysql_query($sql) OR die("<pre>\n".$sql."</pre>\n".mysql_error());
}
?>
Die seiten werden in eine Index mit get geladen,
index.php
PHP:
<?php
session_start();
?>
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
/*Hier includen wir die config.php in der alle Variablen und Seiten arreys aufgelistet sind.*/
include('config.php');
/*Hier wird die abfrage der seiten eingegrenzt und die einzelnen seiten geladen*/
if (isset($_GET['page'], $page[$_GET['page']])) {
include $page[$_GET['page']];
} else {
include $page['index'];
}
?>
mein 2.es Problem besteht darin das die Userprofile nciht gehen,
ich habe eine memberliste die auch funktioniert möchte nun mit einen weiteren get befehl user profile anbieten,
diese userprofile werden mit der id per get an die url dran gehängt,
leider sagt er mir das die seite nciht existieren würde...
memberlist.php
PHP:
echo "<a href=\"profil.php?id=".$row['ID']."\">".$row['Nickname']."</a>\n";
nunja ich hoffe ihr könnt mir helfen,
da ich anfänger bin hoffe ihr verzeiht mir den code,
er ist nun nicht perfekt aber er funktioniert für den anfang recht gut...
mfg kahly
Zuletzt bearbeitet: