feint
Gebruiker
- Lid geworden
- 3 jun 2008
- Berichten
- 273
heyhey,
ik heb een inlogsysteem van een website afgehaald zodat ik die kan toepassen op mijn localhost en zo ervan kan leren, aanpassen, etc. nu doet die het goed. alles werkt.
maar het probleem is. zodra je de website opend. springt die meteen door naar de loginpagina wat helemaal niet zou moeten. en zonder in te loggen kan je niks anders van de pagina weergeven. dit zou ten eerste helemaal niet moeten, ik heb een apart scriptje dat zorgt dat pagina's pas worden weergegeven als je ingelogd word. deze zitten er niet in dus de website zou gewoon moeten weergegeven op de restricted area na.
het is misschien een beetje wazig uitgelegd en ik kan helaas op het moment geen online voorbeeld geven.
ik denk dat het in de index zit gezien deze het vanaf het begin zou moeten weergeven. ik zal de index en de loginpagina even neerzetten:
de codes die erin staan zorgen ervoor dat de url bij index blijft en alleen het laatste deel veranderd, nog nooit problemen mee gehad maar ik denk dat het hieraan ligt
weet iemand hoe ik ervoor kan zorgen dat ik het inloggen niet verplicht maak? gezien je niet naar een ander deel van de pagina kan totdat je bent ingelogd. registreren kan ik wel mits ik hem handmatig open. de link werkt nog niet helemaal naar behoren maar dat is het probleem op het moment ook niet
alvast bedankt voor de hulp
ik heb een inlogsysteem van een website afgehaald zodat ik die kan toepassen op mijn localhost en zo ervan kan leren, aanpassen, etc. nu doet die het goed. alles werkt.
maar het probleem is. zodra je de website opend. springt die meteen door naar de loginpagina wat helemaal niet zou moeten. en zonder in te loggen kan je niks anders van de pagina weergeven. dit zou ten eerste helemaal niet moeten, ik heb een apart scriptje dat zorgt dat pagina's pas worden weergegeven als je ingelogd word. deze zitten er niet in dus de website zou gewoon moeten weergegeven op de restricted area na.
het is misschien een beetje wazig uitgelegd en ik kan helaas op het moment geen online voorbeeld geven.
ik denk dat het in de index zit gezien deze het vanaf het begin zou moeten weergeven. ik zal de index en de loginpagina even neerzetten:
Code:
<?php include("header1.php"); ?>
<?php
if(!isset($_GET['p'])){
include "home.php";}
if($_GET['p'] == "home") {include "home.php";}
if($_GET['p'] == "webd") {include "webdesign.php";}
if($_GET['p'] == "service") {include "service.php";}
if($_GET['p'] == "contact") {include "contact.php";}
if($_GET['p'] == "form") {include "form.php";}
if($_GET['p'] == "register") {include "registrate.php";}
if($_GET['p'] == "user") {include "useroptions.php";}
if($_GET['p'] == "admin") {include "admin.php";}
if($_GET['p'] == "logout") {include "logout.php";}
if($_GET['p'] == "login") {include "login.php";}
?>
<?php include("header2.php"); ?>
<?php include("sidebar.php"); ?>
<?php include("sidebar2.php"); ?>
<?php include("sidebar3.php"); ?>
<?php include("footer.php"); ?>
Code:
<?php include("header1.php") ?>
<div id="content">
<div class="post">
<h1 class="title">Log in </h1>
<p class="byline"><small> Posted by <a href="#">Webmaster</a></small> </p>
<BR />
<BR />
</div>
<div class="post2">
<?php
// Page for log-in
include_once("config.php");
include_once("lang/lang_".$lang.".php");
$pml_title = $site_name;
include_once("connect.php");
if(isset($_SESSION['user_id'])) {
header("Location: ".$afterlogin);
}else{
if(isset($_COOKIE['user_id'])) {
// Read cookie, make session
$sql = "SELECT id,state,password,active FROM `".$db_tbl."` WHERE id='".$_COOKIE['user_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_object($query);
$id = htmlspecialchars($row->id);
$status = htmlspecialchars($row->state);
$dbpass = htmlspecialchars($row->password);
$actief = htmlspecialchars($row->active);
if($dbpass == $_COOKIE['user_password'] AND $actief == 1) {
$_SESSION['user_id'] = $id;
$_SESSION['user_status'] = $status;
?>
<script language="Javascript" type="text/javascript">
location.href='<?= $afterlogin ?>';
</script>
<?
}else{
echo $login_cookiefalse;
setcookie("user_id", "", time() - 3600);
setcookie("user_password", "", time() - 3600);
}
}else{
if(isset($_POST['submit'])) {
// Login
$sql = "SELECT id,name,password,state,active,cookie_pass FROM `".$db_tbl."` WHERE name='".$_POST['user']."'";
$query = mysql_query($sql);
$count = mysql_num_rows($query);
if($count == 1) {
$row = mysql_fetch_object($query);
$dbpass = htmlspecialchars($row->password);
$userpass = md5($_POST['pass']);
$cookiepass = htmlspecialchars($row->cookie_pass);
$userid = htmlspecialchars($row->id);
$userstatus = htmlspecialchars($row->state);
$useractief = htmlspecialchars($row->active);
if($dbpass == $userpass) {
if($useractief == 1) {
$_SESSION['user_id'] = $userid;
$_SESSION['user_status'] = $userstatus;
if($_POST['cookie'] == "do") {
if($cookiepass == "") {
$cookiecode = mt_srand((double)microtime()*100000);
while(strlen($cookiecode) <= 10) {
$i = chr(mt_rand (0,255));
if(eregi("^[a-z0-9]$", $i)) {
$cookiecode = $cookiecode.$i;
}
}
$sql = "UPDATE `".$db_tbl."` SET cookie_pass = '".$cookiecode."' WHERE name = '".$_POST['user']."' LIMIT 1";
mysql_query($sql);
$cookiepass = $cookiecode;
}
setcookie("cookie_id", $userid, time() + 365 * 86400);
setcookie("cookie_pass", $cookiepass, time() + 365 * 86400);
}
echo $loginsucces;
?>
<script language="Javascript" type="text/javascript">
location.href='<?= $afterlogin ?>';
</script>
<?
}else{
echo $login_noactive;
}
}else{
echo $login_nopass;
}
}else{
echo $login_usererr;
}
}else{
// Loginform
?>
<form method="post" action="login.php">
<table>
<tr>
<td><label for="user"><?= $login_username ?>:</label></td><td><input id="user" type="text" name="user" /></td>
</tr>
<tr>
<td><label for="pass"><?= $login_password ?>:</label></td><td><input id="pass" type="password" name="pass" /></td>
</tr>
<tr>
<td align="right"><input id="cookie" type="checkbox" name="cookie" value="do" style="border: 0px;" /></td><td><label for="cookie"><small><?= $login_cookied ?></small></label></td>
</tr>
<tr>
<td></td><td><input type="submit" name="submit" value="<?= $login_login ?>" /><a href="index.php?p=registrate">
<button>
Register
</button></td>
</tr>
</table>
<small><a href="forgotpass.php" title="<?= $login_forgotpass ?>"><?= $login_forgotpass ?></a></small>
</form>
<?
}
}
}
?>
</div>
<!-- end content -->
</div>
<?php include("header2.php"); ?>
<?php include("sidebar.php"); ?>
<?php include("footer.php"); ?>
de codes die erin staan zorgen ervoor dat de url bij index blijft en alleen het laatste deel veranderd, nog nooit problemen mee gehad maar ik denk dat het hieraan ligt

weet iemand hoe ik ervoor kan zorgen dat ik het inloggen niet verplicht maak? gezien je niet naar een ander deel van de pagina kan totdat je bent ingelogd. registreren kan ik wel mits ik hem handmatig open. de link werkt nog niet helemaal naar behoren maar dat is het probleem op het moment ook niet

alvast bedankt voor de hulp
