ich habe folgendes Regi script gemach:
register.php
PHP Code:
<?php
// Check if he wants to register:
if (!empty($_POST[email]))
{
// Check if passwords match.
if ($_POST[password] != $_POST[password2])
exit("Error - Passwärter stimmen nicht überrein. Bitte versuche es noch einmal.");
// Assign some variables.
$ip = $_SERVER[REMOTE_ADDR];
$password = md5($_POST['password']);
require_once("connect.php");
// Register him.
$query = mysql_query("INSERT INTO user
(email, displayName, name, password, bday)
VALUES ('$_POST[email]','$_POST[displayName]','$_POST[name]','$password','$bday')")
or die ("Error - Registrieren fehlgeschlagen.");
$query = mysql_query("SELECT * FROM 'user' WHERE email = '$email'");
if (mysql_fetch_row($query)) {
echo "Bitte andere Username";
} else
echo "Welcome $_POST[username]! You've been successfully reigstered!<br /><br />
Please login <a href='login.php'><b>here</b></a>.";
exit();
}
?>
<html>
<head>
<title>Registrieren</title>
</head>
<body>
<form action="register.php" method="post">
<table width="75%" border="1" align="center" cellpadding="3" cellspacing="1">
<tr>
<td width="100%"><h5>Registration</h5></td>
</tr>
<tr>
<td width="100%"><label>Email: <input type="text" name="email" size="25" value="<? echo $_POST[email]; ?>"></label></td>
</tr>
<tr>
<td width="100%"><label>Anzeige-Name: <input type="text" name="displayName" size="25" value="<? echo $_POST[displayName]; ?>"></label></td>
</tr>
<tr>
<td width="100%"><label>Name: <input type="text" name="name" size="25" value="<? echo $_POST[name]; ?>"></label></td>
</tr>
<tr>
<td width="100%"><label>Passwort: <input type="password" name="password" size="16" value="<? $password = md5($_POST['password']); ?>"></label></td>
</tr>
<tr>
<td width="100%"><label>Passwort wiederholen: <input type="password" name="password2" size="16" value=""></label></td>
</tr>
<tr>
<td width="100%"><input type="submit" value="Registrieren!"></td>
</tr>
</table>
</form>
</body>
</html>
Die Login.tpl sieht so aus:
PHP Code:
<?xml version="1.0" ?>
<!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-Language" content="en" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>{$_title}</title>
<link rel="stylesheet" type="text/css" href="{$_tpl}css/tpl_login.css" />
</head>
<body>
<div id="pg_center">
<div id="pg_pageframe">
<form action="index.php" method="post">
<input type="hidden" name="trytologin" value="true" />
<div id="header">Mein Projekt</div>
<div id="loginTitle">{lng k='login'}</div><br/>
<div id="login_area">
{if $error eq 'true'}
<center><i>{lng k='login_failed'}</i></center>
{/if}
<table cellpadding="2" cellspacing="0" border="0">
<tr>
<td style="width: 100px;"><label for="f1">{lng k='email'}:</label></td>
<td><input type="text" id="f1" name="email" style="width: 251px;" /></td>
</tr>
<tr>
<td><label for="f2">{lng k='password'}:</label></td>
<td><input type="password" id="f2" name="pass" style="width: 251px;" /></td>
</tr>
<tr><td></td><td>
<input type="checkbox" name="saveLogin" id="f3" value="true" /> <label for="f3">{lng k='login_remember'}</label>
</td></tr>
<tr><td></td><td style="text-align: left;">
<input type="submit" style="font-size: 10px;" value="{lng k='submit'}" /> <input type="reset" style="font-size: 10px;" value="{lng k='reset'}" />
</td></tr>
</table>
<div id="rights">{$_copy}</div>
</div>
</form>
</div>
</div>
</body>
</html>
PHP Code:
if($_GET['action'] == 'create') {
if(isset($_GET['save']) && $_GET['save']!="") {
$db = _new("db");
$pw = substr(rand(),-4);
$f = array("displayName","name","password","email","notify");
$v = array($_POST['name'],$_POST['name'],md5($pw.PASSWORDUNIQUESTRING),$_POST['email'],62);
$db->insert("user",$f,$v);
$s = _new("session");
$s->changedUser();
$parser->assign("title",lang("creausertitle","mod"));
$parser->assign("text",lang("creausertext","mod").$pw);
$parser->setContent("ls/success.tpl");
} else $parser->setContent("ls/ucreate.tpl");
}
MfG nicileie
Edit #1:
auf der Index.php wird die Datei init.php included...
In der finde ich zum Login nur folgendes:
PHP Code:
$_prefs['user'] = _new("user"); $login_return = false;
if(isset($_POST['trytologin']) && $_POST['trytologin'] == 'true') {
if($_POST['email'] == "") $_POST['email'] = "wrong";
if($_POST['pass'] == "") $_POST['pass'] = "wrong";
if(isset($_POST['saveLogin']) && $_POST['saveLogin'] == 'true') {
$login_return = $_prefs['user']->login($_POST['email'],$_POST['pass'], true);
} else {
$login_return = $_prefs['user']->login($_POST['email'],$_POST['pass']);
}
define("LOGINSITE", TRUE);
} else {
$_prefs['user']->login();
}
if($_prefs['user']->logged()) { define("UID",$_prefs['user']->logged()); }
else {
define("UID",false);
if(!defined("LOGINSITE")) define("LOGINSITE", TRUE);
}
if(!NOLASTACTREFRESH && UID) {
$db = _new("db");
$db->update("user",array("lastAct"), array(time()), "WHERE `ID` = '".UID."'");
}
PHP Code:
if(!defined("LOGINSITE")) define("LOGINSITE", false);
if(!PICFASTRENDER) {
if(LOGINSITE && ($login_return == LOGIN_SUCCESS || $login_return == LOGIN_CKSUCCESS)) {
$parser = _new("parser");
if($login_return == LOGIN_SUCCESS) {
$parser->assign("cookie","false");
} else {
$parser->assign("cookie","true");
}
$parser->display("sites/login_success.tpl");
exit();
} elseif(LOGINSITE && $login_return == LOGIN_FAILED) {
$parser = _new("parser");
$parser->assign("error", true);
$parser->display("sites/login.tpl");
exit();
} elseif(LOGINSITE && $login_return === FALSE) {
$parser = _new("parser");
$parser->assign("error", false);
$parser->display("sites/login.tpl");
exit();
}
} else {
if(LOGINSITE) {
echo "error no permission";
}
}
Habe iregndwo gelesen, dass das in index.php gepostet wird.
Hier meine Index.php:
PHP Code:
include("./lib/init.php");
$parser = _new("parser");
if(!(isset($_GET['action']) && $_GET['action'] != "")) {
$_GET['action'] = "index";
}
if($_GET['action'] == 'index') {
$parser->assign("delresult","0");
$parser->setNav(lang("changelogArchive"), "index.php?action=archive");
$parser->setNav(lang("chatArchive"), "index.php?action=chatarchive");
$parser->setNav(lang("myProfil"), "profile.php?uid=".UID);
$parser->setNav(lang("myAcc","nav"), "myAccount.php");
$parser->setContent("ls/index.tpl");
$parser->display("index.tpl");
}
if($_GET['action'] == 'rss') {
$rss = _new("rss",lang("title","rss"),HTTP_ROOT,lang("desc","rss"));
$db = _new("db");
$db->saveQry("SELECT * FROM `#_changelog` WHERE `visible` = '0' OR `visible` = ? ORDER BY `time` DESC LIMIT 0,".eppRss, UID);
while($row = $db->fetch_assoc()) {
$txt = lang($row['key'], 'rss');
if($txt != '') {
$txt = lang($row['key'], 'rss');
$search =array("%BY%","%NAME%","%REL%","%VAL%");
$replace = array($row['by'],userInfo($row['by'],"displayName"),$row['related'],$row['value']);
$row['value'] = str_replace($search,$replace,$txt);
}
$title =$row['value'];$link =HTTP_ROOT;
switch($row['key']) {
case CLOG_LINK: $title =lang("link").": ".http(urldecode($row['value'])); $link=http(urldecode($row['value']));break;
case CLOG_PM: $link=HTTP_ROOT."pm.php?action=read&id=".$row['related'];break;
case CLOG_GALLERY: $link=HTTP_ROOT."gallery.php?action=view&gid=".$row['related'];break;
case CLOG_THREAD: $link = HTTP_ROOT."board.php?action=thread&tid=".$row['related']."#last";break;
case CLOG_POST: $link = HTTP_ROOT."board.php?action=thread&tid=".$row['related']."#last";break;
case CLOG_PROFILE: $link = HTTP_ROOT."profile.php?uid=".$row['by']."&show=profs";break;
case CLOG_QUOTE: $link = HTTP_ROOT."quotes.php";break;
}
$rss->addItem(html($title),html($link),$row['time']);
}
$rss->output();
}
if($_GET['action'] == 'archive') {
$page = 1; $epp = eppClogArchiv;
if(isset($_GET['page'])) {
$page = (int)$_GET['page'];
}
$start = ($epp * $page)-$epp;
$cl = _new("changelog");
$res = $cl->read($epp,$start);
$db = _new("db");
$db->saveQry("SELECT COUNT(*) as `datasets` FROM `#_changelog` WHERE `visible` = '0' OR `visible` = ?",UID);
$count = $db->fetch_assoc(); $db->free();
$parser->assign("p_act", $page);
$parser->assign("p_epp", $epp);
$parser->assign("p_url","./index.php?action=archive");
$parser->assign("p_cou", $count['datasets']);
$parser->assign("log", $res);
$parser->setNav(lang("changelogArchive"), "index.php?action=archive");
$parser->setNav(lang("chatArchive"), "index.php?action=chatarchive");
$parser->setNav(lang("myProfil"), "profile.php?uid=".UID);
$parser->setNav(lang("myAcc","nav"), "myAccount.php");
$parser->setContent("ls/index.clog.tpl");
$parser->display("index.tpl");
}
if($_GET['action'] == 'changeTemplate') {
$sess = _new("session");
if($_GET['tpl'] != "")
$sess->changeTemplate($_GET['tpl']);
else
$sess->changeTemplate();
$parser->display("sites/template.tpl");
}
if($_GET['action'] == 'chatarchive') {
$page = 1; $epp = eppSboxArchiv;
if(isset($_GET['page'])) {
$page = (int)$_GET['page'];
}
$start = ($epp * $page)-$epp;
$db = _new("db");
$db->saveQry("SELECT * FROM `#_sbox` ORDER BY `ID` DESC LIMIT ".$start.",".$epp);
while($row = $db->fetch_assoc()) {
$res[] = $row;
}
$db->saveQry("SELECT COUNT(*) as `datasets` FROM `#_sbox`");
$count = $db->fetch_assoc(); $db->free();
$parser->assign("p_act", $page);
$parser->assign("p_epp", $epp);
$parser->assign("p_url","./index.php?action=chatarchive");
$parser->assign("p_cou", $count['datasets']);
$parser->assign("res", $res);
$parser->setNav(lang("changelogArchive"), "index.php?action=archive");
$parser->setNav(lang("chatArchive"), "index.php?action=chatarchive");
$parser->setNav(lang("myProfil"), "profile.php?uid=".UID);
$parser->setNav(lang("myAcc","nav"), "myAccount.php");
$parser->setContent("ls/index.chat.tpl");
$parser->display("index.tpl");
}
if($_GET['action'] == 'changeLang') {
$sess = _new("session");
if($_GET['lang'] != "")
$sess->changeLang($_GET['lang']);
else
$sess->changeLang();
$parser->display("sites/lang.tpl");
}
?>






