webForumDet fria alternativet

Logga in

PHPur PHP

11 svar · 618 visningar · startad av jwradhe

Medlem sedan juni 2002711 inlägg
Frågan#1

Hej!
Har suttit nu ett tag utan resultat och provat saker osv, men ja får inte mitt skript att fungera. Va så länge sen ja höll på med detta att ja helt enkelt inte kan komma på va ja skrivit som är galet :S

<?php 
session_start();

include("data.php");

mysql_connect($server,$user, $pwd);
mysql_select_db($dbname);

$query = mysql_query("SELECT * from brolan_users where user = '".$_POST['user']."' and pass = '".$_POST['pass']."'"); 
$result = mysql_fetch_array($query);

$count=mysql_num_rows($result);
if($count == 1){

    $_SESSION['status'] = "online";
    session_register("status");

    $_SESSION['user'] = $result['user'];
    session_register("user");

    $_SESSION['uid'] = $result['id'];
    session_register("uid");
	
	$_SESSION['typ'] = $result['typ'];
    session_register("typ");
	
?>
	

    
	<script>self.location='medlem_upd1.php';</script>
	

<?

} else {

?>

    
	<script>self.location='index.php?p=gastbok';</script>

<?

}

?>
Medlem sedan juni 200032 967 inlägg
#2

Förutom att du saknar en massa instanser av bokstaven g i ditt inlägg har du också missat det viktigaste: vad är det som inte fungerar? Felmeddelande?

Medlem sedan juni 2002711 inlägg
#3

Ja förlåt..

Inga felmeddelande,
Samt ja blir inte inloggad, får ingen session och skickas till index.php?p=gastbok.

Medlem sedan juni 20006 031 inlägg
#4

När du lägger in en användare i databasen, hashar du lösenordet då (md5)
Isf så måste du göra det när du jämför också.

Medlem sedan juni 2002711 inlägg
#5

nee inte md5

Medlem sedan juni 20014 421 inlägg
#6

Spotta ut lite felkontroll, kolla vad sql-satsen returnerar att alla fält är korrekt etc.

Medlem sedan juli 20023 617 inlägg
#7

Funkar det att köra "mysql_num_rows" på $result? Ska det inte vara på $query i ditt fall?

Medlem sedan juni 2002711 inlägg
#8

ändrade till query. Då gick ja vidare till medlem_upd1.php som ja ska, men där så verkar det inte som session funkar så bra, för den ska hämta ett värde från session

<?php
session_start();

include("data.php");
$db = mysql_connect($server, $user, $pwd); 

$datum = date("Y-m-d H:i");
$user = $_SESSION['uid'];

mysql_select_db($dbname, $db); 
mysql_query("UPDATE brolan_users set senast = '$datum' where id = $user "); 
mysql_close($db);

?>
    
	<script>self.location='index.php';</script>
Medlem sedan juni 2002711 inlägg
#9

Ah fixade det!
register_globals var dock inte på. så där var kruxet! Nu funkar det fint.

Medlem sedan juni 2002711 inlägg
#10

Fortfarande dock inte bra med sessions :/

När ja loggar in, så ska det stå i grönt test (när jag loggar in med test/test) men det står mit uid (userid) först, och uppdaterar du sidan så byter den till brolan_se.

Varför??

Medlem sedan juni 20006 031 inlägg
#11

Du ska aldrig använda varibelnamn som kan förväxlas.

t.ex så kan $user, $_POST['user'] och $_SESSION['user'] skriva över varandra beroende på vilka inställningar man har i php.ini

Därför rekommenderar jag alltid att man för sessions använder unika namn, typ $_SESSION['sess_user']

Misstänker att det är nåt sånt du råkar ut för.

Medlem sedan juni 2002711 inlägg
#12

Tack! :)

132 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)