Hej.
Jeg fandt en artikel på nettet med login med ajax med php.
--
Her viser jeg det jeg har lavet, som virker. Men den gør ikke det jeg vil have.
- <script type="text/javascript">
- $(document).ready(function(){
- $("#login_a").click(function(){
- $("#shadow").fadeIn("normal");
- $("#login_form").fadeIn("normal");
- $("#username").focus();
- });
- $("#cancel_hide").click(function(){
- $("#login_form").fadeOut("normal");
- $("#shadow").fadeOut();
- });
- $("#login").click(function(){
-
- username=$("#username").val();
- password=$("#password").val();
- $.ajax({
- type: "POST",
- url: "login.php",
- data: "username="+username+"&password="+password,
- success: function(html){
- if(html=='true')
- {
- $("#login_form").fadeOut("normal");
- $("#shadow").fadeOut();
- $("#profile").html("<a href='logout.php' id='logout'>Logout</a>");
-
- }
- else
- {
- $("#add_err").html("Login mislykkes...");
- }
- },
- beforeSend:function()
- {
- $("#add_err").html("Vent venligst ... ...")
- }
- });
- return false;
- });
- });
- </script>[code lang="PHP"] <div id="login_form">
- <div class="err" id="add_err"></div>
- <form action="login.php">
- <label>Brugernavn:</label>
- <input type="text" id="username" name="username" />
- <label>Adgangskode:</label>
- <input type="password" id="password" name="password" />
- <label></label><br/>
- <input type="submit" id="login" name="logget" value="Login" />
- <input type="button" id="cancel_hide" value="Fortryd" />
- </form>
- </div>
- <div id="shadow" class="popup"></div>
[/code]
login.php
- <?php
- session_start();
- $username = $_POST['username'];
- $password = $_POST['password'];
- $mysqli=mysqli_connect('localhost','_com','','_com');
-
- $query = "SELECT * FROM `luntner_login` WHERE `username`='$username' AND `password`='$password'";
- $result = mysqli_query($mysqli,$query)or die(mysqli_error());
- $num_row = mysqli_num_rows($result);
- $row=mysqli_fetch_array($result);
- if( $num_row >=1 ) {
- echo 'true';
- $_SESSION['username']=$row['username'];
- }
-
- else{
- echo 'false';
- }
- ?>
logout.php
- <?php
- session_start();
- unset($_SESSION['username']);
- header('Location: http://minside.dk/luntner/');
- ?>
Leger i toppen af index.php
Ser ryddet ud, men skal blot finde en løsning, før det kan rettes.
- <?php
- session_start();
- $username = $_POST['username'];
- $password = $_POST['password'];
- $connect = mysql_connect('localhost', "_com", "");
- mysql_select_db("_com",$connect);
-
- if(isset($_SESSION['username'])){
-
- $trin = mysql_query("SELECT * FROM `luntner_login` WHERE `username` = '".$_SESSION[username]."'");
- $row = mysql_fetch_array($trin);
-
- if($row['loggetind'] == "0") :
- mysql_query("UPDATE `luntner_login` SET `loggetind` = '1' WHERE `username`='".$_SESSION[username]."'");
- header('Location: http://minside.dk/luntner/');
- endif;
- }else{
- }
- ?>
Det jeg ønsker, er at få den til at benytte header('Location:
Det gør den i logout.php
Men ønsker også det ved at logge ind - så den går retur til hovedsiden, efter login i popup.
Hvis den så laver ged med det - så skal den kun gør det hvis "loggetind=0" i databasen. Hvis = 1 (skal ikke gør noget, så er menuen fremme for admin).
Men som det er nu, så logger man ind - men man skal selv bevæge sig på siden, for at få Login til at ændre sig til Menu.
<?php if(isset($_SESSION['username'])): ?>
<li style='float: right;'><a href="logout.php" id="logout">Logud</a></li>
<?php else: ?>
<li style='float: right;'><a id="login_a" href="#">Login</a></li>
<?php endif; ?>