Avatar billede trajkovski Nybegynder
01. juli 2004 - 00:24 Der er 6 kommentarer og
1 løsning

Få information fra en database

Hej

Jeg har op til flere gange prøvet at få noget information ud af min database.

Jeg kører denne query: $oprettet_af = mysql_query("SELECT userid FROM brugere WHERE brugernavn='{$_SESSION['brugernavn']}'");

Hvilket resulterer i: Resource id #5

Resultatet er ikke lige hvad jeg synes, det skal være! Det skulle, i det her tilfælde, være en talværdi som er 1.

Hvis jeg kører en anden query som f.eks.: "$fornavn = mysql_query("SELECT fornavn FROM brugere WHERE email='$email'");" giver den også variablen værdien "Resource id #5".

Jeg har åbenbart ikke styr på, hvordan man hiver noget ud af en databse, så hvis der er en, der kan give en hånd, ville jeg blive meget glad! :)

Med venlig hilsen

Nicolai
Avatar billede jakobclausen Nybegynder
01. juli 2004 - 00:43 #1
Dit svar vil blive lagret i et array, hvorfor du ikke bare kan skrive den ud som en almindelig variabel. Prøv med nedenstående kode og se om det ikke hjælper på tingene:

$oprettet_af = mysql_result(mysql_query("SELECT userid FROM brugere WHERE brugernavn='{$_SESSION['brugernavn']}'"),0);
- - -
$fornavn = mysql_result(mysql_query("SELECT fornavn FROM brugere WHERE email='$email'"),0);
Avatar billede trajkovski Nybegynder
01. juli 2004 - 01:03 #2
Det virker! Mange tak!

Men kan du ikke også forklare mig hvad den gør - så ville jeg blive endnu mere glad! :)

Jeg har et gæt: mysql_result tager den værdi, der svarer til det nummer, man angiver (her 0) i arrayet.
Avatar billede trajkovski Nybegynder
01. juli 2004 - 01:05 #3
Men hvorfor bliver det egentlig lagret i et array?

Jeg beder jo kun om et fornavn...
Avatar billede jakobclausen Nybegynder
01. juli 2004 - 01:09 #4
Lige i dette tilfælde vil resultatet kun indeholde én værdi, og der er derfor ingen grund til at ligge det i et array. Men det er sådan funktionen mysql_query er bygget op - at den ALTID laver et array med svaret/svarene.

Mysql_result er en funktion i php, der ligger et ønsket resulatet over i en variabel. 0 er værdien for det resulatet du vil bruge - altså det første. Håber det giver mening.
Avatar billede trajkovski Nybegynder
01. juli 2004 - 01:11 #5
Det gør det! Mange tak for hjælpen! :)
Avatar billede jakobclausen Nybegynder
01. juli 2004 - 01:15 #6
Lidt "dokumentation": http://dk.php.net/manual/en/function.mysql-result.php
Takker for point
Avatar billede danino Nybegynder
01. juli 2004 - 11:05 #7
Hvis man skal være lidt krakilsk, så bliver svaret, som du siger, IKKE lagret i et array, men i en mysql-resource...
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