Räkna inlägg

Databaser & SQL

17 svar · 241 visningar · startad av Kent

Medlem sedan juli 2000355 inlägg
Trådstart#1

Hur räknar man enklast inlägg ur en databas.?

Medlem sedan mars 20007 896 inlägg
#2

Med en SQL-query... Är inte så insatt i CGi, men om du använder SQL för att kommunicera med databasen (vilket är mycket troligt) borde den satsen se ut så här:
SELECT COUNT(*) AS antal FROM din_tabell

Medlem sedan juli 2000355 inlägg
#3

Och hur hämtar jag detta sen.?

Medlem sedan mars 20007 896 inlägg
#4

Det hämtar du precis som du hämtar all annan information från databasen. Skillnaden nu är att du inte anropar ett fältnamn utan du anropar 'antal' istället.

Medlem sedan apr. 2000642 inlägg
#5

i detta fall så borde du kunna hämta det med

$p = $sth->fetchrow_hashref();
print "Antal: $p->{'antal'}\n";

eller nått i den stilen... :)

Medlem sedan juli 2000355 inlägg
#6

Konstigt, den räknar inte inläggen,
så här ser det ut,
Antal:

Medlem sedan apr. 2000642 inlägg
#7

okey.. lägg till detta så får vi se:

 
foreach $key (keys %{$p}) {
print "$key: $p->{$key}<br>\n";
}
Medlem sedan juli 2000355 inlägg
#8

Ingen skillnad.

Medlem sedan apr. 2000642 inlägg
#9

hmmm.. men vad kommer ut då? bara ":"-tecken?

Medlem sedan juli 2000355 inlägg
#10

Så här ser det ut,
Antal:

Medlem sedan apr. 2000642 inlägg
#11

du har väl kört $sth->execute; och allt det där?

Medlem sedan juli 2000355 inlägg
#12

Visst,

$sth = $dbh->prepare("SELECT Count(*) AS antal from data");
$sth->execute;
$p = $sth->fetchrow_hashref();
print "Antal: $p->{'antal'}\n";

foreach $key (keys %{$p}) {
print "$key: $p->{$key}<br>\n";
}

Medlem sedan apr. 2000642 inlägg
#13

om du sitter i mysql-klienten och skriver in kommandot för hand, vad får du då?

Medlem sedan juli 2000355 inlägg
#14

Hur menar du då.?

Medlem sedan apr. 2000642 inlägg
#15

har du mysql installerat? då kan du starta klienten med "mysql.exe" i samma katalog där det är installerat (i win32) eller helt enkelt "mysql" om du kör i unix.

då kommer du så småningom till en prompt där du kan skriva in dina SQL-kommandon och se resultatet precis som det kommer ur databasen. jättebra när man vill se precis vad som händer.

Medlem sedan juli 2000355 inlägg
#16

Nej jag har inte mySQL installerat på min dator.

Medlem sedan apr. 2000642 inlägg
#17

okey.. kan du telnetta in till den dator där du kör din databas?

Medlem sedan juli 2000355 inlägg
#18

Nej det går inte.

253 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)