Avatar billede da9el Nybegynder
05. juli 2004 - 18:26 Der er 31 kommentarer og
1 løsning

Hjælp til check fil

Hej er der nogle der kan hjælpe mig med at lave login-check.php.
Det skal være mysql.

<form action="login-check.php" method="post">
Brugernavn: <input type="text" name="brugernavn">
Kode: <input type="password" name="kode">
<input type="submit" value="Login">
</form>

Daniel
Avatar billede jaw Nybegynder
05. juli 2004 - 18:31 #1
login-check.php:

<?

$q = mysql_query("SELECT * FROM tabel WHERE brugernavn = '".$_POST['brugernavn']."' AND password = '".$_POST['kode']."'");

if(mysql_num_rows($q) != 0) {
  $bruger = mysql_fetch_array($q);
  $_SESSION['bruger'] = $bruger['brugernavn'];
  $_SESSION['password'] = $bruger['password'];
} else {
  echo"Du er ikke logget ind!";
}

?>

Den er simpel, men håber den giver lidt forståelse?!
Avatar billede da9el Nybegynder
05. juli 2004 - 19:45 #2
Nu har jeg lavet det sådan her og siden bliver hvid.

<?php

require("connect");

aabn_forbindelse_og_vaelgdb()

$q = mysql_query("SELECT * FROM community WHERE brugernavn = '".$_POST['brugernavn']."' AND password = '".$_POST['kode']."'");

if(mysql_num_rows($q) != 0) {
  $bruger = mysql_fetch_array($q);
  $_SESSION['bruger'] = $bruger['brugernavn'];
  $_SESSION['password'] = $bruger['password'];
} else {
  echo"Du er ikke logget ind!";
}

luk_forbindelse()

?>

Kan du se fejlen?
Avatar billede jaw Nybegynder
05. juli 2004 - 19:47 #3
Der er nok ikke nogen fejl. Bliver siden hvid, så er det nok fordi at brugeren bliver logget ind. Kommer der fejl, hvis du bruger forkert brugernavn/kode?

Men der skal lige indsættes en ting i toppen:

<?php

session_start();
require("connect");
Avatar billede da9el Nybegynder
05. juli 2004 - 19:50 #4
Den bliver også hvid hvis jeg skriver noget noget forkert.
Avatar billede da9el Nybegynder
05. juli 2004 - 19:50 #5
hov -noget
Avatar billede jaw Nybegynder
05. juli 2004 - 19:53 #6
Ok, så prøv bare lige:

<?php

require("connect");

aabn_forbindelse_og_vaelgdb()

$q = mysql_query("SELECT * FROM community WHERE brugernavn = '".$_POST['brugernavn']."' AND password = '".$_POST['kode']."'");

echo mysql_num_rows($q);

?>

Og se hvad outputtet bliver, og prøv med både rigtige og forkerte brugernavn/koder
Avatar billede da9el Nybegynder
05. juli 2004 - 20:05 #7
Begge dele bliver hvide :(
Avatar billede jaw Nybegynder
05. juli 2004 - 20:06 #8
Hmmmm, det lyder mystisk...
Prøv med linien:

echo "Antal: " . mysql_num_rows($q);
Avatar billede da9el Nybegynder
05. juli 2004 - 21:35 #9
Du kan da selv prøve det www.ntimesartikel.1go.dk/Community/

prøv med brugernavn: brugernavn og kode: kode
Avatar billede jaw Nybegynder
06. juli 2004 - 02:04 #10
Og hvad står der i login-check? Kan du ikke lige paste?
Avatar billede da9el Nybegynder
06. juli 2004 - 08:36 #11
<?php

require("connect");

aabn_forbindelse_og_vaelgdb()

$q = mysql_query("SELECT * FROM community WHERE brugernavn = '".$_POST['brugernavn']."' AND password = '".$_POST['kode']."'");

echo "Antal: " . mysql_num_rows($q);
?>
Avatar billede jaw Nybegynder
06. juli 2004 - 10:05 #12
Det er det, der er problemet med 1go.dk. De kører deres servere, så man ingen fejlmeddelelser får overhovedet. Og du er sikker på, at community, brugernavn og password skal staves med små bogstaver hele vejen igennem? For jeg har lige smidt det der på min egen server, og der får jeg fint frem antallet 0 eller 1.
Avatar billede da9el Nybegynder
06. juli 2004 - 10:53 #13
Min mysql ser sådan ud.

CREATE TABLE `community` (
  `id` int(11) NOT NULL auto_increment,
  `brugernavn` varchar(15) NOT NULL default '',
  `kode` varchar(25) NOT NULL default '',
  PRIMARY KEY  (`id`)
) TYPE=MyISAM AUTO_INCREMENT=3 ;
Avatar billede jaw Nybegynder
06. juli 2004 - 11:25 #14
Prøv:

$q = mysql_query("SELECT * FROM community WHERE brugernavn = '".$_POST['brugernavn']."' AND kode = '".$_POST['kode']."'");

i stedet for den anden $q
Avatar billede da9el Nybegynder
06. juli 2004 - 11:37 #15
Jeg har prøvet med begge filer og de bliver stadig bare hvide. Kunne det tænkes at have noget at gøre med der hvor den skriver fejl?

<?php

session_start();
require("connect");

aabn_forbindelse_og_vaelgdb()

$q = mysql_query("SELECT * FROM community WHERE brugernavn = '".$_POST['brugernavn']."' AND kode = '".$_POST['kode']."'");
#############################
Alstå nedenunder her
############################
if(mysql_num_rows($q) != 0) {
  $bruger = mysql_fetch_array($q);
  $_SESSION['bruger'] = $bruger['brugernavn'];
  $_SESSION['password'] = $bruger['password'];
} else {
  echo"Du er ikke logget ind!";
}

luk_forbindelse()

?>
Avatar billede jaw Nybegynder
06. juli 2004 - 11:42 #16
Skriver den fejl? Og den her skal du altså helst have til at funke, inden vi kan gå meget videre. Du skal jo også gemme den her som login-check.php, men det gør du vel også?

<?php

require("connect");

aabn_forbindelse_og_vaelgdb()

$q = mysql_query("SELECT * FROM community WHERE brugernavn = '".$_POST['brugernavn']."' AND kode = '".$_POST['kode']."'");

echo "Antal: " . mysql_num_rows($q);
?>
Avatar billede da9el Nybegynder
06. juli 2004 - 11:46 #17
Avatar billede da9el Nybegynder
06. juli 2004 - 11:47 #18
der kan du se det
Avatar billede da9el Nybegynder
06. juli 2004 - 11:48 #19
Skal der ikke være i fejl medelse i den her?

<?php

require("connect");

aabn_forbindelse_og_vaelgdb()

$q = mysql_query("SELECT * FROM community WHERE brugernavn = '".$_POST['brugernavn']."' AND kode = '".$_POST['kode']."'");

echo "Antal: " . mysql_num_rows($q);
?>
Avatar billede jaw Nybegynder
06. juli 2004 - 11:54 #20
Det burde der ikke...

Men du må prøve noget simpelt, såsom:

$q = mysql_query("SELECT * FROM community");
while ($row = mysql_fetch_array($q)) {
echo $row['brugernavn'];
}
Avatar billede da9el Nybegynder
06. juli 2004 - 12:12 #21
gør stadig det samme :(
Avatar billede jaw Nybegynder
06. juli 2004 - 12:14 #22
Ok, så må vi vente til jeg kommer hjem fra arbejde...
Avatar billede da9el Nybegynder
06. juli 2004 - 12:18 #23
Det er i orden, heh du skal da ikke sidde og lave det på dit arbejde heh..
Avatar billede da9el Nybegynder
06. juli 2004 - 13:04 #24
:) Jeg har fået det til at virker, det var et par streger der ikke var lukket. Jeg smider lige lidt ekstra point, fordi du har brugt så meget tid på det. Smider du et svar?

Her er det færdige hvis der er nogle der vil se det:

<?php

require("connect.php");
session_start();

aabn_forbindelse_og_vaelgdb();

$q = mysql_query("SELECT * FROM community WHERE brugernavn = '".$_POST['brugernavn']."' AND kode = '".$_POST['kode']."'");

if(mysql_num_rows($q) != 0) {
  $bruger = mysql_fetch_array($q);
  $_SESSION['brugernavn'] = $brugernavn['brugernavn'];
  $_SESSION['kode'] = $bruger['kode'];
  echo "Du er logget ind!!";
} else {
  echo"Du er ikke logget ind!";
}

luk_forbindelse();

?>
Avatar billede jaw Nybegynder
06. juli 2004 - 13:05 #25
Jamn, det er jo så perfekt :) Var det mig der havde glemt nogen lukkede streg-ting? Også lige meget...

Og du ved så, hvordan du bruger det med sessions på de andre sider, ik? :)
Avatar billede da9el Nybegynder
06. juli 2004 - 13:08 #26
Det var nok mig.. Ikke rigtigt det med session, men jeg vil tro der står meget om det rundt omkring på nettet, og ellers laver jeg da et nyt spørgsmål om det.

Takker for hjælpen

Daniel
Avatar billede jaw Nybegynder
06. juli 2004 - 13:13 #27
Kan da i hvert fald i første omgang give dig et lille hint :) Måske det er nok?!
Det login script du har dér, sætter en session der eksisterer indtil brugeren lukker sin browser (eller man sletter sessions med session_destroy(); )

På alle sider, hvor du vil bruge sessions, skal du huske session_start(); i toppen. Derefter er princippet følgende:

<?
session_start();

if(isset($_SESSION['brugernavn']) && $_SESSION['brugernavn'] != "") {
  //her er brugeren logget ind, så det indhold der står her vil han kunne se
} else {
  //her er brugeren IKKE logget ind !
}
?>

...håber det kan bruges, og tak for point :)
Avatar billede da9el Nybegynder
06. juli 2004 - 13:16 #28
Takker har lige givet dig lidt karma.

Du skal ikke svare på det her før du har fri, men hvad så hvis man vil have den til at skrive brugerens navn?
Avatar billede jaw Nybegynder
06. juli 2004 - 15:46 #29
Det bør du kunne med:

echo $_SESSION['brugernavn'];

:)
Avatar billede da9el Nybegynder
06. juli 2004 - 17:24 #30
Den kommer ikke frem er der noget i vejen med det?

<?php

session_start();
echo $_SESSION['brugernavn'];

?>
Avatar billede jaw Nybegynder
06. juli 2004 - 17:26 #31
Der hvor du udskriver: "Du er logget ind" altså i check-login.php, så prøv at tilføje den der:


  echo "Du er logget ind!!";
  echo $_SESSION['brugernavn'];
Avatar billede da9el Nybegynder
06. juli 2004 - 17:31 #32
virker ikke :(
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