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
Hur räknar man enklast inlägg ur en databas.?
17 svar · 241 visningar · startad av Kent
Hur räknar man enklast inlägg ur en databas.?
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
Och hur hämtar jag detta sen.?
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.
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...
Konstigt, den räknar inte inläggen,
så här ser det ut,
Antal:
okey.. lägg till detta så får vi se:
foreach $key (keys %{$p}) {
print "$key: $p->{$key}<br>\n";
}
Ingen skillnad.
hmmm.. men vad kommer ut då? bara ":"-tecken?
Så här ser det ut,
Antal:
du har väl kört $sth->execute; och allt det där?
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";
}
om du sitter i mysql-klienten och skriver in kommandot för hand, vad får du då?
Hur menar du då.?
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.
Nej jag har inte mySQL installerat på min dator.
okey.. kan du telnetta in till den dator där du kör din databas?
Nej det går inte.