Avatar billede cmau Nybegynder
18. januar 2005 - 14:10 Der er 1 kommentar og
1 løsning

Hent ud fra en tabel, where der er flest stemmer fra en anden tab

Hejsa jeg har en tabel der hedder zurekk_spil og en der hedder zurekk_stemmer hvordan kan jeg lave en topliste fra zurekk_spil, hvor den henter ud fra zurekk_stemmer efter stemme og hvor nr er li id'et på spillet?

Her er min sql:

CREATE TABLE zurekk_stemmer (
  id int(11) NOT NULL auto_increment,
  stemme int(60) NOT NULL default '',
  type varchar(60) NOT NULL default '',
  nr int(60) NOT NULL default '',
  PRIMARY KEY  (id)
) TYPE=MyISAM;

CREATE TABLE zurekk_spil (
  id int(11) NOT NULL auto_increment,
  navn varchar(60) NOT NULL default '',
  hits int(60) NOT NULL default '0',
  url varchar(255) NOT NULL default '',
  beskrivelse text NOT NULL,
  kategori varchar(60) NOT NULL default '',
  PRIMARY KEY  (id)
) TYPE=MyISAM;

Så skal jeg hente alt i zurekk_spil ud, men de skal hentes ud så den henter fra zurekk_stemmer hvor nr = id på spillet og type = spil.

Så jeg kan udskrive hviket spil der er stemt bedst på!

Det vil altså sige at den også skal udskrive noget med SELECT AVG(stemme) AS gennemsnit

Så jeg kan finde bedømmelsen på spillet

_________________________________________________________________

Får denne fejl:

Mixing of GROUP columns (MIN(),MAX(),COUNT()...) with no GROUP columns is illegal if there is no GROUP BY clause

har denne kode:

<?

echo '<p><a href="index.php">Tilbage til spil hovedesiden</a></p><p>Mest spillede spil:</p>';

include('../sql.php');

$visfra = (isset($_GET["visfra"])) ? $_GET["visfra"] : 0;
$prside = 10;

$query = mysql_query("SELECT AVG(stemmer.stemme) AS gennemsnit, spil.*, stemmer.* FROM zurekk_spil spil, zurekk_stemmer stemmer WHERE stemmer.nr=spil.id AND spil.kategori=stemmer.type ORDER BY gennemsnit DESC LIMIT $visfra, $prside") or die(mysql_error());

while ($row = mysql_fetch_array($query)) {

$type = "spil";
$id = $row[id];
$beskrivelse = $row[beskrivelse];
$beskrivelse = nl2br(htmlspecialchars($beskrivelse));

echo '<p><div align="center"><table border="1" width="505"><tr><td width="125" valign="top"><a href="ud.php?id='.$row[id" target="_blank"><img src="../images/spil/'.$row[id].'.jpg" width="125"></a><br>';

if(isset($_COOKIE["$type_$id"])) {
$bed = mysql_query("SELECT AVG(stemme) AS gennemsnit FROM zurekk_stemmer WHERE type = '$type' AND  nr = '$row[id]'") or die(mysql_error());

$bed = mysql_fetch_array($bed);

echo 'Bedømmelse: '.round($bed["gennemsnit"], 3).'';

}

if(!isset($_COOKIE["$type_$id"])) {
echo '<IFRAME name="'.$row[id].'" src="spil_form.php?type='.$type.'&nr='.$id.'" frameBorder="0" width="125" height="26"></IFRAME>';
}

echo '</td><td width="380" valign="top"><p><b>'.$row[navn].':</b> - <a href="#" onclick="window.open(\'spil_virker_ikke.php?id='.$id.'&navn='.$row[navn].'\',\'_blank\',\'width=300,height =350,toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no\')">Virker ikke?</a></p><p>Spillet <b>'.$row[hits].'</b> gange.</p><p><b>Beskrivelse:</b> '.$beskrivelse.'</p></td></tr></table></div></p>';

}

echo '<p align="center">';

$antal = mysql_result(mysql_query("SELECT COUNT(*) FROM zurekk_spil"),0);

if ($visfra > 0) {
    $bagud = $visfra-$prside;
    echo "<a href=\"spil_mest.php?visfra=".$bagud."\">Forrige</a> ";
}
$page = 1;
for ($start = 0; $antal > $start; $start = $start + $prside) {
    if($visfra != $page * $prside - $prside) {
        echo "<a href=\"spil_mest.php?visfra=".$start."\">".$page."</a> ";
    } else {
        echo "[$page] ";
    }
    $page++;
}
if ($visfra < $antal - $prside) {
    $naeste = $visfra + $prside;
    echo " <a href=\"spil_mest.php?visfra=".$naeste."\">Næste</a>";
}



echo '</p><p>Der er <b>'.mysql_result(mysql_query("SELECT COUNT(*) FROM zurekk_spil"),0).'</b> spil i alt.</p>';

?>


Nogle der kan fixe den?
Avatar billede cmau Nybegynder
18. januar 2005 - 20:40 #1
Slet ingen?
Avatar billede cmau Nybegynder
19. januar 2005 - 15:21 #2
lukker for 10 gang!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester