Avatar billede nbj1 Praktikant
14. juni 2007 - 15:30 Der er 36 kommentarer og
1 løsning

login script test

for at se om der er bruger i en tabel kan man ik skrive dette

$user_query = mysql_query("SELECT * FROM user WHERE username='$username'")or die(mysql_error());

$num_users = mysql_num_rows( $user_query )or die(mysql_error());

echo ('$username');

jeg har naturligvis connect til database
Avatar billede nbj1 Praktikant
14. juni 2007 - 15:34 #1
echo ('$username');
med dette vel jeg gerne have vist bruger, men der blver ikke vist nogen ????
Avatar billede w13 Novice
14. juni 2007 - 15:35 #2
Bliver der intet skrevet?
Avatar billede nbj1 Praktikant
14. juni 2007 - 15:38 #3
nej der vises intet
Avatar billede nbj1 Praktikant
14. juni 2007 - 16:10 #4
hmm ok i linux vises det ikke hvis det er i ''
echo ('$username'); skal være echo ($username);
så den læser brugeren men for stadig Verification failed! hmmm underligt
Avatar billede nbj1 Praktikant
14. juni 2007 - 16:20 #5
$loggedIn = $_SESSION['loggedIn'];

$username = (!isset($_SESSION['username']));

echo ($username); her vises at username er = 1 det skal den ikke, da username skal være = med et navn
Avatar billede w13 Novice
14. juni 2007 - 16:21 #6
Når du bruger isset gemmes enten true/false som svarer til 1/0. Derfor gemmes et 1-tal. Fjern derfor !isset
Avatar billede nbj1 Praktikant
14. juni 2007 - 16:32 #7
ja men det ændre heller ik noget
$loggedIn = $_SESSION['loggedIn'];

if ( $loggedIn != true ) tror det er her da den sætter det til falsk
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 16:37 #8
har du prøvet bare at skrive
print $username;
?
Avatar billede nbj1 Praktikant
14. juni 2007 - 16:39 #9
nej det er fint nok for hvis jeg sætter det til false i stedet for true kommer jeg vidre, så det er
username men da id svare til 1 for den user skulle det vel gå ?
Avatar billede nbj1 Praktikant
14. juni 2007 - 16:40 #10
ja vodka username printes som 1
Avatar billede nbj1 Praktikant
14. juni 2007 - 16:44 #11
nu ved jeg ik hvad der er sket nu virker det hmmm underligt
Avatar billede nbj1 Praktikant
14. juni 2007 - 16:49 #12
tror det et eller andet der roder nu virker det ik igen :( kan det være session der driller ?
Avatar billede nbj1 Praktikant
14. juni 2007 - 16:57 #13
ok hvis jeg sætter en echo($_session) ind siger den dette:
ArrayVerification failed! You must be logged in to view this page.
Avatar billede nbj1 Praktikant
14. juni 2007 - 17:00 #14
dette er min array:'
while ( $user = mysql_fetch_array( $user_query ) )

{
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 17:07 #15
Nu har du session_start(); i toppen ?
Avatar billede nbj1 Praktikant
14. juni 2007 - 17:08 #16
ja det har jeg
Avatar billede nbj1 Praktikant
14. juni 2007 - 17:16 #17
hvis jeg laver en echo lige efter array, skulle den så ik skrive brugerne ud ?

while ( $user = mysql_fetch_array( $user_query ) )

{
echo ($user);
her skriver den bare Array
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 17:33 #18
det er fordi $user er et arrray, du skal bruge prinyt_r($user) og så får du indholdet..
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 17:33 #19
print_r ***
Avatar billede nbj1 Praktikant
14. juni 2007 - 17:56 #20
hvis jeg nu skriver sådan
echo ($username); = 1
//echo ($_SESSION['username']);
print (session_start()); = 1
de er begge = 1
det virker underligt
Avatar billede nbj1 Praktikant
14. juni 2007 - 17:59 #21
det kommer herfra
session_register("loggedIn");

session_register("username");



$_SESSION['loggedIn'] = true;

$_SESSION['username'] = $username;
Avatar billede nbj1 Praktikant
14. juni 2007 - 18:04 #22
echo ($loggedIn); så skulle denne echo også vise 1 men det gør den ikke
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 18:06 #23
Nej,

<?
session_start();
echo $_SESSION['loggedIn']
?>
Avatar billede nbj1 Praktikant
14. juni 2007 - 18:06 #24
så som test skriver $loggedIn = '1'; så kommer jeg in
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 18:16 #25
... Jeg er ikke helt sikker på jeg er med?

Du har en form, hvor du indtaster brugernavn og passowrd
den sender dig videre til
test_login.php:
<?
session_start();
//connect to sql

//Du skal sørge for kun en bruger kan have samme navn
$sql = mysql_query("SELECT password FROM users WHERE username = '" . $_POST['username'] . "'");
$row = mysql_fetch_assoc($sql);
if ($row['password'] == $_POST['password']) {

$_SESSION['loggedIn'] = 1;
$_SESSION['username'] = $_POST['username'];
echo "Logget ind";

} else {
echo "dit brugernavn og/eller password er forkert";
}
?>

Side hvor du tester
protected/index.php
<?
session_start();
if ($_SESSION['loggedIn'] == 1) {
echo "Du er ok";
} else {
echo "du har ikke lov til at se denne side";
}
?>
Avatar billede nbj1 Praktikant
14. juni 2007 - 18:16 #26
jo men hvis jeg echo ($loggedIn) skulle jeg vel også få den gemte værdi ?
men den skriver ik noget ud
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 18:29 #27
$loggedIn er en variabel som du skal sætte først...
$_SESSION['loggedIn'] burde indeholde det som du har sat den til på en tidligere side.
Avatar billede nbj1 Praktikant
14. juni 2007 - 18:30 #28
hmm hvordan forklare jeg så ligge dette
den forgående side laver jeg en echo ($_SESSION['loggedIn']);
og den variablen / printer den 1 ud
men på denne side hvor den gi adgang præver jeg det samme
echo ($_SESSION['loggedIn']);
men her skriver den ik noget ud
Avatar billede nbj1 Praktikant
14. juni 2007 - 18:30 #29
damm stave fejl
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 18:41 #30
Det lyder underligt... er du sikker på at din browser tillader cookies ?
Avatar billede nbj1 Praktikant
14. juni 2007 - 18:50 #31
det mener jeg jeg har sat op i php.ini
Avatar billede nbj1 Praktikant
14. juni 2007 - 18:51 #32
kan jeg lave en print cookie ?
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 19:33 #33
Nej altså DIN browser skal tillade cookies :) altså din computer... og ikke noget med serveren / php, det er KUN BRugerens
Avatar billede nbj1 Praktikant
14. juni 2007 - 19:43 #34
jo ok fant et script for cookies og bliver sletet under 10 sec
så det er vel fint nok
side1.php

setcookie('MinCookie', true, time() + 10);
setcookie('MinAndenCookie', true, time() + 100);

sleep(15);


side2.php

if ( !$_COOKIE['MinCookie'] )
{
  print 'Din cookie blev slettet på de 10 sekunder som den skulle!';
} else {
  print 'skidt :/';
}


if ( $_COOKIE['MinAndenCookie'] )
{
  print 'Din ANDEN cookie eksisterer stadig som den skulle!';
} else {
  print 'øv bøv :/';
}
Avatar billede nbj1 Praktikant
14. juni 2007 - 19:48 #35
og hvis jeg smider user.php in i den første fil så virker det fint nok så problemet er at den session ikke kommer med over i user.php
Avatar billede vodkaboii Nybegynder
14. juni 2007 - 20:17 #36
Hvad med det så ??
Avatar billede nbj1 Praktikant
14. juni 2007 - 20:41 #37
tja bliver nok løsningen pt indtil jeg finde udaf hvor fejlen ligger
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