Gå til innhold

Litt hjelp med mysql


Anbefalte innlegg

Hei.

Da har jeg endelig begynt og skjønne noe av dette mysql greierne, og prøver og kvittte meg med flatfiler.

Men noen kjappe spm.

Jeg har da en tabel som heter 'brukere' og i den er det en masse info, pass, navn, osv osv =) hvordan kan jeg hente ut den informasjonen og skrive den ut ?

foreksempel ?

Du er $kjonn

Og du heter $fnavn

Takk for alle svar =)

Lenke til kommentar
Videoannonse
Annonse

Vel, spørs hvor mye SQL du kan, men kan jo sette opp noe så får du se hvor mye du skjønner av det :)

SELECT * FROM `bruker` WHERE `brukernavn` = 'bruker'

Den vil hente ut alle data (siden det står *. Alternativt kan du spesifisere feltene på formen `felt1`, `felt2` osv.) om brukeren bruker.

 

Kjapt eksempel i praksis:

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
mysql_select_db('database', $link);
$resultat = mysql_query("SELECT * FROM `bruker` WHERE `brukernavn` = 'bruker'");
$rad = mysql_fetch_array($resultat);
echo "Du er $rad['kjonn'] Og du heter $rad['fnavn']"

Forutsetter at du har feltene kjonn og fnavn i tabellen bruker.

Endret av Ernie
Lenke til kommentar

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in D:\Programfiler\xampp\htdocs\home\test2.php on line 6

 

Hmm, sikker på at det skal bare brukernavn osv ?

slik ser alle feltene ut:

 

navn[bRUKERNAVN] pass mail fnavn bsted kjonn id

Lenke til kommentar
Gjest Slettet+6132

Prøv denne:

 

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
mysql_select_db('database', $link);
$resultat = mysql_query("SELECT * FROM `bruker` WHERE `brukernavn` = 'bruker'");
$rad = mysql_fetch_array($resultat);
echo "Du er {$rad['kjonn']} Og du heter {$rad['fnavn']}";

Lenke til kommentar
Gjest Slettet+6132
Ehh... Er det forskjell på ` og ' ? Ser det blir brukt om hverandre oppi der...

 

Edit: Skal det egentlig være ' foran og etter tabellnavn?

Edit2: ... og foran og etter kolonnenavn?

5540135[/snapback]

 

` brukes på tabellnavn og ' brukes på tabellverdier osv ved feks en WHERE-spørring. Tror jeg hvertfall :hmm:

 

EDIT: Det fungerer også fint uten ` på tabellen.

 

SELECT * FROM users WHERE id = '1'

Endret av Slettet+6132
Lenke til kommentar
Ehh... Er det forskjell på ` og ' ? Ser det blir brukt om hverandre oppi der...

 

Edit: Skal det egentlig være ' foran og etter tabellnavn?

Edit2: ... og foran og etter kolonnenavn?

5540135[/snapback]

Jepp, har litt med standarder å gjøre (husker ikke i farten hvilke). ` kan brukes "rundt" feltnavn og tabellnavn, mens ' brukes "rundt" strenger (f.eks `felt` = 'streng'). Merk at tallverdier ikke bør ha ' da dette slik jeg har forstått det medfører merarbeid for databasen siden en streng må konvertere en streng til et tall.

Endret av Ernie
Lenke til kommentar
Tro det om dere vil..

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\Programfiler\xampp\htdocs\home\inc\test2.php on line 5

Du er Og du heter ..

5533995[/snapback]

 

Vet ikke om du har funnet ut av problemet ? Var kanskje ` og ' ?

 

Dersom du kjører en mysql_error() ved feil, så får du opp hva som er feil.

 

Eks:

$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
mysql_select_db('database', $link);
qstring = "SELECT * FROM `bruker` WHERE `brukernavn` = 'bruker'";
$resultat = mysql_query($qstring) or die ("Query error: $qstring<br>".mysql_error());
$rad = mysql_fetch_array($resultat);
echo "Du er {$rad['kjonn']} Og du heter {$rad['fnavn']}";

Lenke til kommentar

Okei...

Regner med at du vil bruke $bruker og ikke bare bruker i SQL setningen din ;)

 

Du kan evt også sjekke at noen rader ble funnet med:

$hits = mysql_num_rows($resultat);
if($hits > 0) {
echo "Du er....";
}
else {
echo "Fant ikke bruker";
}

EDIT: Her ville du nok fått fram "Fant ikke bruker"...

Endret av kakkle
Lenke til kommentar

Driver og koser meg med PHP i fritiden jeg og :p ..

Har bare benyttet såkalte "flatfiler", men er utrolig ivrig etter å lære meg det her med database.

Jeg har lest gjennom innleggene her og prøvd meg litt frem, men får det ikke til å fungere..

 

For og spøre først, hvis jeg har en tabell som heter "bruker" og to felt ("fnavn" og "kjonn"), hvor i disse feltene skal jeg så legge inn fornavnet og kjønnet ?

Er phpMyAdmin her, og har en del valg (Type, Lengde/Sett, Kollasjonering, Attributter, Null, Standard, Ekstra). Har bare lagt inn et vilkårlig fornavn i "standard" i "fnavn" feltet under tabellen "bruker".

 

Har brukt kodeeksempelet som er gjengitt i denne tråden og lurer litt på om den henter ut verdier fra de forskjellige feltene, evt. hvilken "del" i feltet...

 

Feilmeldingen jeg får etter bruk av eksempelet, er

Unknown column 'brukernavn' in 'where clause'

 

Har veldig lite erfaring og kunskap om både databaser og phpMyAdmin, men det er vel selvforklarlig :blush:

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...