Avatar billede linux_newbie Nybegynder
09. maj 2001 - 16:07 Der er 12 kommentarer og
1 løsning

sessions v. 2 :) igen

hejsa

jeg har nu arbejdet på et lille login system som skal virke via sessions og mysql.. men jeg har keine forstand på sessions men heruder
viser jeg lige koden for de filer der er med i systemet.

index.php
<form method=post action=verify.php>
Brugernavn:
<input type=\"text\" name=\"user\"><br>
PassWord:
<input type=text name=password><br>
<br>
<input type=submit value=login>
</form>
<a href=\"opret.php\">opret bruger</a>

---------index.php-----------------

verify.php

<?php
$db = mysql_connect(\"localhost\",\"root\",\"16932513\");
mysql_select_db(\"login\",$db);
$query = (\"SELECT * FROM bruger WHERE user = \'$user\' AND password = \'$password\'\");
$queryuser = mysql_query($query) or die(mysql_error());
$match = mysql_num_rows($queryuser);
if(!$match) {
    session_start();
    session_register(\"user\");
  header(\"location: system.php\");
} else {
  header(\"location: index.php\");
}
?>
----------verify.php-------------------

system.php

<?php
session_start();
if(!isset($user)) {
header (\"Location: index.php\");
}
?>

hejsa er  vi loggeet ind ?


---------system.php----------------


opret.php

<?
mysql_connect(\"localhost\",\"root\",\"16932513\");
mysql_select_db(\"login\");
mysql_query(\"INSERT INTO bruger (user,
password) VALUES (\'$user\',
\'$password\')\");
?>
<form method=post action=opret.php>
Skriv dit brugernavn:
<input type=text name=user><br>
skriv dit password:
<input type=password name=password><br>
<br>
<input type=submit value=opret>

------------------------------------------

tabel structure:


#
# Table structure for table \'bruger\'
#

CREATE TABLE bruger (
  id int(11) NOT NULL auto_increment,
  user varchar(30) NOT NULL,
  password varchar(30) NOT NULL,
  PRIMARY KEY (id)
);
------------------------------------------------

det virker sq ikke .. men min apache server og php virker ... såå nogen der kan sige hvad der kan være galt
jeg kan ikke se hvad fejlen er .. men jeg er hellere ikke særlig god til sessions...
Avatar billede lauer Nybegynder
09. maj 2001 - 16:10 #1
hvad kommer der af fejl ?
er det PHP4 du har installeret ?
Avatar billede defrost Nybegynder
09. maj 2001 - 16:11 #2
Prøv at ændre følgende i verify.php

if (!$match) { ...

ændres til

if ($match) { ...
Avatar billede linux_newbie Nybegynder
09. maj 2001 - 16:14 #3
når jeg har brugt oprettet en bruger som virker fint nok via opret.php vil jeg så prøve og logge ind via index.php .. men når jeg trykker på
\"login\" sker der ikke noget....
Avatar billede linux_newbie Nybegynder
09. maj 2001 - 16:15 #4
og ja der er installeret php4
Avatar billede linux_newbie Nybegynder
09. maj 2001 - 16:18 #5
wee defrost...laver lige nogle test... og hvis det så virker får du points da det virker efter jeg har fjernet den der \"!\"
Avatar billede linux_newbie Nybegynder
09. maj 2001 - 16:31 #6
Men så har jeg lige et problem med hvordan Logud skal foregå .. da jeg ikke kan bruge :

logud.php

<?
session_destroy();
?>

HVordan Fixes det så ?
Avatar billede defrost Nybegynder
09. maj 2001 - 16:35 #7
Prøv dette:

session_destroy();
unset($user);
$p = session_get_cookie_params();
setcookie(session_name(), \"\", 0, $p[\"path\"], $p[\"domain\"]);

Det burde virke. :)
Avatar billede linux_newbie Nybegynder
09. maj 2001 - 16:39 #8
hvad skal der så være ved domain og path ?
Avatar billede linux_newbie Nybegynder
09. maj 2001 - 16:41 #9
hvis man fyrer det der ind du skrev istedet for bare session_destroy()

kommer dette;


Warning: Trying to destroy uninitialized session in c:\\apache\\htdocs\\login\\logout.php on line 2

Warning: Cannot add header information - headers already sent by (output started at c:\\apache\\htdocs\\login\\logout.php:2) in c:\\apache\\htdocs\\login\\logout.php on line 5
Avatar billede defrost Nybegynder
09. maj 2001 - 16:48 #10
session_start();
session_unregister(\"user\");
session_destroy();
unset($user);
$p = session_get_cookie_params();
setcookie(session_name(), \"\", 0, $p[\"path\"], $p[\"domain\"]);

*puf*
Avatar billede linux_newbie Nybegynder
09. maj 2001 - 16:50 #11
det skal bare være i logout.php ?
Avatar billede linux_newbie Nybegynder
09. maj 2001 - 16:52 #12
weeeeeeeeeee det virker .. points til dig... iorden det bliver 60 ? .. da det vist var lidt for meget og give 80 ?
Avatar billede defrost Nybegynder
10. maj 2001 - 08:58 #13
60 point er ok med mig.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester