Gå til innhold

Hente ut antall rader fra SQLdatabase


Anbefalte innlegg

Skrevet

Jeg har en database hvor jeg vil ha telt antall rader + 1

 

databasen heter brukere

 

Har kommet hit:

 

$query = "SELECT * FROM `brukere` ORDER BY brukerid DESC";

Videoannonse
Annonse
Skrevet

ikke helt vanskelig å skjønne hva du er ute etter. skal du ha ut antall rader i tabellen? antall rader i spørringen? trenger du det for å kunne sette neste id i raden? isåfall er du på feil spor

Skrevet (endret)

du kan gjøre følgende:

 

$resultat = mysql_query("Select * from brukere");

$antall = mysql_num_rows($resultat);

 

Den letteste måten er likevel å gjøre slik for å automatisk øke antallet med en for hvert innlegg:

 

du setter feltet antall eller id eller hva du nå kaller det til PRIMARY KEY auto_increment.

 

(create table brukere(id INT(11) PRIMARY KEY auto_increment, .................);)

 

Så når du skriver til databasen gjør du bare følgende:

 

INSERT INTO brukere ('id', .......);

 

Da vil 'id' automatisk øke med en for hver bruker som legges til.

Endret av atsjoo
Skrevet

For å finne antall rader kan man jo bruke COUNT.

 

mysql

SELECT COUNT(*) FROM tabell;

 

php

$sql = 'SELECT COUNT(*) FROM tabell';
$row = mysql_fetch_row(mysql_query($sql));
$antall = $row[0];

Skrevet
INSERT INTO brukere ('id', .......);

kolonnenavn (slik som id), skal ikke stå med fnutter slik du sier her.

 

auto_increment kolonner skal heller ikke angis i insert query'et hvis du ønsker at det skal settes automatisk.

Skrevet
$sql = 'SELECT COUNT(*) FROM tabell';
$row = mysql_fetch_row(mysql_query($sql));
$antall = $row[0];

Jepp, jeg vil tilføye at jeg liker å bruke mysql_result eller list for å unngå den ekstra kodelinjen. (små-irriterende :p)

 

eks:

list($antall) = mysql_fetch_row(...

Skrevet
Jepp, jeg vil tilføye at jeg liker å bruke mysql_result eller list for å unngå den ekstra kodelinjen. (små-irriterende :p)

 

eks:

list($antall) = mysql_fetch_row(...

Hehe, ikke dumt :thumbup:

 

Kort summert

function mysql_count($tabell){
   list($antall) = mysql_fetch_row(mysql_query('SELECT COUNT(*) FROM '.$tabell.''));
   return $antall;	
}

 

Hvem trenger vel feilhåndtering ;)

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...