/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Php/sql - beregn gennemsnit
Fra : Peter Nicolaj


Dato : 04-03-09 16:21

Hej,

Jeg prøver at udvikle et afstemningssystem. I min sql database
registres stemmer og stjerner. Når jeg trækker data ud af
databasen, vil jeg gerne have vist "stjerne"gennemsnittet. Altså
ved at dividere det samlede antal stjerner med samlede antal
stemmer. Jeg har prøvet at lave nedenstående beregning, men får
kun resultatet nul.

Nogen der kan hjælpe lidt på vej?
-------------------------------------------------------
<?php

$stemmer = $_POST["stemmer"];

$stjerner = $_POST["stjerner"];



/*Indsætte rækker i tabellen*/

if($_POST['stemmer'] && $_POST['stjerner'] ) {

$sqlquery = "INSERT INTO afstmning_no_line (id, stemmer,

stjerner )

VALUES

('','$stemmer','$stjerner')";



mysql_query($sqlquery) or die(mysql_error());

}else{

if ($update){

print "<h1>Database ikke opdateret</h1>\n";

} }


/* Udfører SQL forespørgsel */

$q = mysql_query("SELECT (stjerner/stemmer) AS gen_stjerner FROM
afstmning_no_line");
$r = mysql_fetch_assoc($q);

echo round($r['afstmning_no_line'], 2);

?>



--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

 
 
Johan Holst Nielsen (04-03-2009)
Kommentar
Fra : Johan Holst Nielsen


Dato : 04-03-09 16:29

Peter Nicolaj wrote:
> /* Udfører SQL forespørgsel */
>
> $q = mysql_query("SELECT (stjerner/stemmer) AS gen_stjerner FROM
> afstmning_no_line");
> $r = mysql_fetch_assoc($q);
>
> echo round($r['afstmning_no_line'], 2);

Skal være

echo round($r['gen_stjerner'],2);

--
Johan Holst Nielsen
Freelance PHP Developer - http://phpgeek.dk

Peter Nicolaj (04-03-2009)
Kommentar
Fra : Peter Nicolaj


Dato : 04-03-09 18:33

Så skete der noget. men den vil kun tage udgangspunkt i den første
post i databasen.

Johan Holst Nielsen wrote in
dk.edb.internet.webdesign.serverside.php:
> Peter Nicolaj wrote:
> > /* Udfører SQL forespørgsel */
> >
> > $q = mysql_query("SELECT (stjerner/stemmer) AS gen_stjerner FROM
> > afstmning_no_line");
> > $r = mysql_fetch_assoc($q);
> >
> > echo round($r['afstmning_no_line'], 2);
>
> Skal være
>
> echo round($r['gen_stjerner'],2);
>
> --
> Johan Holst Nielsen
> Freelance PHP Developer - http://phpgeek.dk


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Johan Holst Nielsen (04-03-2009)
Kommentar
Fra : Johan Holst Nielsen


Dato : 04-03-09 18:42

Peter Nicolaj wrote:
> Johan Holst Nielsen wrote in
> dk.edb.internet.webdesign.serverside.php:
>> Peter Nicolaj wrote:
>>> /* Udfører SQL forespørgsel */
>>>
>>> $q = mysql_query("SELECT (stjerner/stemmer) AS gen_stjerner FROM
>>> afstmning_no_line");
>>> $r = mysql_fetch_assoc($q);
>>>
>>> echo round($r['afstmning_no_line'], 2);
>>
>> Skal være
>>
>> echo round($r['gen_stjerner'],2);
> Så skete der noget. men den vil kun tage udgangspunkt i den første
> post i databasen.

Ja - det er klart... du henter kun én ud...

Ellers skal det være

$q = mysql_query("SELECT (SUM(stjerner)/SUM(stemmer)) AS gen_stjerner
FROM afstmning_no_line");
$r = mysql_fetch_assoc($q);
echo round($r['afstmning_no_line'], 2);


--
Johan Holst Nielsen
Freelance PHP Developer - http://phpgeek.dk

Peter Nicolaj (04-03-2009)
Kommentar
Fra : Peter Nicolaj


Dato : 04-03-09 20:09

:) Super godt. Så er det lige som jeg vil ha' det.

Takker mange gange!

Johan Holst Nielsen wrote in dk.edb.internet.webdesign.serverside.php:
> Peter Nicolaj wrote:
> > Johan Holst Nielsen wrote in
> > dk.edb.internet.webdesign.serverside.php:
> >> Peter Nicolaj wrote:
> >>> /* Udfører SQL forespørgsel */
> >>>
> >>> $q = mysql_query("SELECT (stjerner/stemmer) AS gen_stjerner FROM
> >>> afstmning_no_line");
> >>> $r = mysql_fetch_assoc($q);
> >>>
> >>> echo round($r['afstmning_no_line'], 2);
> >>
> >> Skal være
> >>
> >> echo round($r['gen_stjerner'],2);
> > Så skete der noget. men den vil kun tage udgangspunkt i den første
> > post i databasen.
>
> Ja - det er klart... du henter kun én ud...
>
> Ellers skal det være
>
> $q = mysql_query("SELECT (SUM(stjerner)/SUM(stemmer)) AS gen_stjerner
> FROM afstmning_no_line");
> $r = mysql_fetch_assoc($q);
> echo round($r['afstmning_no_line'], 2);
>
>
> --
> Johan Holst Nielsen
> Freelance PHP Developer - http://phpgeek.dk


--
Vil du lære at kode HTML, XHTML, CSS, SSI, ASP eller ASP.NET?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408917
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste