Avatar billede stengaard Praktikant
12. november 2005 - 11:10 Der er 14 kommentarer og
1 løsning

en del til et loginsystem med status 1 og 0 til en memberliste

hej jeg har et problem ved at få dette til at virke... har et script der skulle sætte brugeren i status 1 når personen logger ind og i status 0 når brugeren logger af igen, men den kommer ikke længere til loggerin.php scriptet så går den i sort.

min table.

CREATE TABLE `login` (
  `ID` int(11) NOT NULL auto_increment,
  `user` varchar(50) NOT NULL default '',
  `pass` varchar(25) NOT NULL default '',
  `ip` varchar(15) NOT NULL default '',
  `navn` varchar(51) NOT NULL default 'Ikke oplyst',
  `email` varchar(50) NOT NULL default '',
  `status` char(1) NOT NULL default '',
  `timestamp` timestamp(14) NOT NULL,
  PRIMARY KEY  (`ID`),
  UNIQUE KEY `idx_brugere` (`user`)
) TYPE=MyISAM PACK_KEYS=0 AUTO_INCREMENT=10 ;

min loggerin.php

<?php

session_start();
if ($_POST['bruger'] == "" AND $_POST['pass'] == "") {
$_SESSION['status'] = "nobrugerpass";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
elseif ($_POST['bruger'] == "") {
$_SESSION['status'] = "nobruger";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
elseif ($_POST['pass'] == "") {
$_SESSION['status'] = "nopass";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
else
{
include("access.php");
$query = "SELECT user, pass FROM login  WHERE user = '".$_POST['bruger']."' AND pass= '".$_POST['pass']."'";
$result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
$log = mysql_fetch_array($result);
if ($_POST['bruger'] == $log['user'] && $_POST['pass'] == $log['pass']) {
$_SESSION['status'] = "login";
$_SESSION['navn'] = $_POST['bruger'];
//sætter status til at være 1, = at brugeren er online.
$status = mysql_query("UPDATE login SET status = '1' WHERE user = $_SESSION['navn']") or die("MySQL fejl: " . mysql_error());
print("<script language='javascript'>
location.href='index.php';
</script>");
}
else
{
$_SESSION['status'] = "fejl";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
}

?>
Avatar billede inctor Nybegynder
12. november 2005 - 11:18 #1
$status = mysql_query("UPDATE login SET status=$status+1 WHERE user = $_SESSION['navn']") or die("MySQL fejl: " . mysql_error());


prøv den , det virker hos mig hvis jeg skriver

UPDATE tabel SET kolonne=$kolonne+1 WHERE kolonne=$_SESSION['navn']") or die("MySQL fejl: " . mysql_error());

Det plejer at virke hos mijh .. prøv det ..
Avatar billede stengaard Praktikant
12. november 2005 - 12:06 #2
mmm den kommer ikke vidre hvis man skrifter denne linie ud

$status = mysql_query("UPDATE login SET status = '1' WHERE user = $_SESSION['navn']") or die("MySQL fejl: " .

ud med denne

$status = mysql_query("UPDATE tabel SET kolonne=$kolonne+1 WHERE kolonne=$_SESSION['navn']") or die("MySQL fejl: " . mysql_error());
Avatar billede inctor Nybegynder
12. november 2005 - 12:08 #3
$status = mysql_query("UPDATE login SET status=$status+1 WHERE user=$_SESSION['navn']") or die("MySQL fejl: " . mysql_error());


der skal ikk stå tabel og kolonne men dine oplysninger .. :D
Avatar billede inctor Nybegynder
12. november 2005 - 12:14 #4
ups , hvis det ikk virker , så prøv denne :

$status = mysql_query("UPDATE login SET status=status+1 WHERE user=$_SESSION['navn']") or die("MySQL fejl: " . mysql_error());

Der var en lille fejl , ved ikk om den tager den med , men der var en $ for meget .. :D
Avatar billede stengaard Praktikant
12. november 2005 - 12:36 #5
det ser sådan her ud men det virker stadig ikke

<?php

session_start();
if ($_POST['bruger'] == "" AND $_POST['pass'] == "") {
$_SESSION['status'] = "nobrugerpass";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
elseif ($_POST['bruger'] == "") {
$_SESSION['status'] = "nobruger";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
elseif ($_POST['pass'] == "") {
$_SESSION['status'] = "nopass";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
else
{
include("access.php");
$query = "SELECT user, pass FROM login  WHERE user = '".$_POST['bruger']."' AND pass= '".$_POST['pass']."'";
$result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
$log = mysql_fetch_array($result);
if ($_POST['bruger'] == $log['user'] && $_POST['pass'] == $log['pass']) {
$_SESSION['status'] = "login";
$_SESSION['navn'] = $_POST['bruger'];
//sætter status til at være 1, = at brugeren er online.
$status = mysql_query("UPDATE login SET status=status+1 WHERE user=$_SESSION['navn']") or die("MySQL fejl: " . mysql_error());
print("<script language='javascript'>
location.href='index.php';
</script>");
}
else
{
$_SESSION['status'] = "fejl";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
}

?>
Avatar billede inctor Nybegynder
12. november 2005 - 12:38 #6
updater den inde i tabellen ? altså sætter staus til 1 ?

<?php

session_start();
if ($_POST['bruger'] == "" AND $_POST['pass'] == "") {
$_SESSION['status'] = "nobrugerpass";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
elseif ($_POST['bruger'] == "") {
$_SESSION['status'] = "nobruger";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
elseif ($_POST['pass'] == "") {
$_SESSION['status'] = "nopass";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
else
{
include("access.php");
$query = "SELECT user, pass FROM login WHERE user = '".$_POST['bruger']."' AND pass= '".$_POST['pass']."'";
$result = mysql_query($query)or die("MySQL fejl: " . mysql_error());
$log = mysql_fetch_array($result);
if ($_POST['bruger'] == $log['user'] && $_POST['pass'] == $log['pass']) {
$_SESSION['status'] = "login";
$_SESSION['navn'] = $_POST['bruger'];
//sætter status til at være 1, = at brugeren er online.
$status = mysql_query("UPDATE login SET status=status+1 WHERE user=$_SESSION['navn']") or die("MySQL fejl: " . mysql_error());
print("<script language='javascript'>
location.href='index.php';
</script>");
}
else
{
$_SESSION['status'] = "fejl";
print("<script language='javascript'>
location.href='login.php';
</script>");
}
}

?>

prøv nu , det er selve php'en hvad eR din Input ? kan du ikk sende filerne til Maii ? så retter jeg dem ..
Avatar billede inctor Nybegynder
12. november 2005 - 12:40 #7
lig filerne op på din hjemmeside så henter jeg dem og retter dem , altså login.php, acces.php .. hvis det er de filer som du bruger til at logge ind med , og den fil som den skal videre til ..
Avatar billede stengaard Praktikant
12. november 2005 - 13:40 #8
Avatar billede inctor Nybegynder
14. november 2005 - 15:42 #9
her er der en rettet en:
http://www.2cool4you.dk/login_rettet.rar ...
Men husk at slette Tabellen login og sæt den nye jeg har lavet op , har ændret i den nemli for at gøre det nemmere , når man logger ind , blir status til 1 og når man logger ud blir den til 0 .. og har du problemer med scriptet, Såå sig til .. Såå .. Jeg hjælper gerne ...
Avatar billede stengaard Praktikant
15. november 2005 - 20:43 #10
den laver ikke tablen om til status  1
Avatar billede inctor Nybegynder
15. november 2005 - 21:57 #11
På min gør den altså .. Så der en fejl når du oploader det , husker du at slette tabellen Login og sætte den tabel jeg har lavet op ?
Avatar billede stengaard Praktikant
16. november 2005 - 17:42 #12
jep det har jeg gjort
Avatar billede inctor Nybegynder
16. november 2005 - 18:06 #13
min den blir opdateret til 1 , men har stødt på nogen login problemer .. Såå , jeg prøver lige at fikse dem ..
Avatar billede stengaard Praktikant
16. november 2005 - 18:11 #14
ok det ville være dejligt
Avatar billede stengaard Praktikant
01. december 2005 - 10:45 #15
lukket fundet ud af det
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