Avatar billede lborkdk Nybegynder
21. oktober 2010 - 15:46 Der er 15 kommentarer og
2 løsninger

Vis ens point.

Hej Eksperten.dk

Jeg har lavet et login script til en hjemmeside og er stødt ind i et lille problem med visningen af hvor mange point jeg har:
Kan simpelthen ikke huske hvordan jeg får vist hvor mange point jeg har det er noget med at man skal trække oplysningerne ud af databasen og det tror jeg at jeg har styr på nu mangler jeg bare lige og gøre så det bliver vist på min side:

Her er siden:

<?php

session_start();

include("connect.php");
// Her trækker jeg data en ud af databasen
$query = mysql_query("SELECT point FROM users WHERE username='$username'") or
die(mysql_error());     


if ($_SESSION['username'])
  echo "Velkommen, ".$_SESSION['username']."!<br>
// Her vil jeg gerne ha til og stå hvor mange point jeg har.
Du har_____ point.
  <br><br><a href='logout.php'>Log ud</a><br><a href='changepassword.php'>Skift kode</a>";
else
    die("Du er ikke logget ind!");

?>
Avatar billede w13 Novice
21. oktober 2010 - 16:01 #1
Eksempelvis med:

$row = mysql_fetch_array($query);

echo $row['point'];


:)
Avatar billede intenz Novice
21. oktober 2010 - 16:01 #2
// Her trækker jeg data en ud af databasen
$query = mysql_query("SELECT point FROM users WHERE username='$username'") or
die(mysql_error());     

$row = mysql_fetch_assoc($query);
print "Bruger: $username har " . $row['point'] . " point";


?
Avatar billede w13 Novice
21. oktober 2010 - 16:02 #3
Og indsat i din kode:

<?php

session_start();

include("connect.php");
// Her trækker jeg data en ud af databasen
$query = mysql_query("SELECT point FROM users WHERE username='$username'") or
die(mysql_error());     
$row = mysql_fetch_array($query);

if ($_SESSION['username'])
  echo "Velkommen, ".$_SESSION['username']."!<br>
Du har <?= $row['point']; ?> point.
  <br><br><a href='logout.php'>Log ud</a><br><a href='changepassword.php'>Skift kode</a>";
else
    die("Du er ikke logget ind!");

?>
Avatar billede intenz Novice
21. oktober 2010 - 16:09 #4
Du mener:


echo "Velkommen, ".$_SESSION['username']."!<br>
Du har " . $row['point'] . " point.
  <br><br><a href='logout.php'>Log ud</a><br><a href='changepassword.php'>Skift kode</a>";
Avatar billede lborkdk Nybegynder
21. oktober 2010 - 16:17 #5
Mange tak for det hurtige svar :)

Men den viser stadig ingenting når jeg har sat det ind :(

Der står bare: Du har point.


Hvis det hjælper noget så skal det hente dataene om point fra en tabbel som hedder 'users'.
Avatar billede w13 Novice
21. oktober 2010 - 16:25 #6
Umiddelbart vil jeg mene, at koden er rigtig nok.

Måske er din linje:
$query = mysql_query("SELECT point FROM users WHERE username='$username'") or
die(mysql_error());

forkert. Det kan være, at $username ikke indeholder det rigtige brugernavn?
Avatar billede w13 Novice
21. oktober 2010 - 16:27 #7
Du kan måske prøve med:

<?php

session_start();

include("connect.php");
// Her trækker jeg data en ud af databasen
$query = mysql_query("SELECT point FROM users WHERE username='$username'") or
die(mysql_error());
echo "<p>Der blev fundet " . mysql_num_rows[$query] . " rækker i databasen!</p>";
$row = mysql_fetch_array($query);

if ($_SESSION['username'])
  echo "Velkommen, ".$_SESSION['username']."!<br>
Du har " . $row['point'] . " point.
  <br><br><a href='logout.php'>Log ud</a><br><a href='changepassword.php'>Skift kode</a>";
else
    die("Du er ikke logget ind!");

?>


Det skulle gerne fortælle os, hvor mange rækker, der blev fundet i databasen.
Avatar billede repox Seniormester
21. oktober 2010 - 16:35 #8
Det er fordi $username i den første sql sætning ikke er defineret...
Avatar billede lborkdk Nybegynder
21. oktober 2010 - 16:40 #9
Der er en fejl på linje 9 i dit script w13.
Avatar billede lborkdk Nybegynder
21. oktober 2010 - 16:43 #10
Hvad mener du med ikke defineret??

Har ikke så meget forstand på mysql :)
Avatar billede intenz Novice
21. oktober 2010 - 16:49 #11
$username er tom.

Længere nede bruger du: $_SESSION['username']

Prøv at ændre din query til:
$query = mysql_query("SELECT point FROM users WHERE username='" . $_SESSION['username'] . "'") or
die(mysql_error());
Avatar billede lborkdk Nybegynder
21. oktober 2010 - 16:55 #12
SUPER!

Mange tak smid lige et svar! :D
Avatar billede w13 Novice
21. oktober 2010 - 16:57 #13
lborkdk>> Ja, linje 9 skulle have været:
echo "<p>Der blev fundet " . mysql_num_rows($query) . " rækker i databasen!</p>";

:)

Men som de andre siger, så prøver du at slå en bruger op vha. $username for at vise hans point.

'$username' er en variabel, som gerne skulle indeholde den givne brugers brugernavn. Det gør den bare ikke, men det gør $_SESSION['username'] derimod.

intenz's løsning ser god ud.
Avatar billede lborkdk Nybegynder
21. oktober 2010 - 17:00 #14
w13 så smid et svar og så kan i dele point
Avatar billede w13 Novice
21. oktober 2010 - 17:09 #15
lborkdk>> Da både jeg og Intenz er synske, var dét det allerførste vi gjorde i denne post! :)
Avatar billede lborkdk Nybegynder
21. oktober 2010 - 17:20 #16
Haah der kan man bare se :D

Tak for hjælpen gutter :)
Avatar billede w13 Novice
21. oktober 2010 - 17:24 #17
Tak for point! ;)
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