Jag kom på att nu visas enbart låtar som har fått en eller flera röster, vilket dödar systemet för alla låtar. Hur ska jag lösa det? Känns som det borde gå att göra i queryn, men hur? En annan lösningen är ju att man skriver in ett betyg i databasen i samma veva som låten läggs till.
Query:
$query = "SELECT `songs`.*, `votes`.*, `votes`.`id` AS `voteid`, AVG(`votes`.`points`) AS `meanvalue` FROM `songs` INNER JOIN `votes` ON `songs`.`id` = `votes`.`songid` WHERE `songs`.`active` = 1 AND `votes`.`unix` >= '$chosedtimeX' GROUP BY `songs`.`id` ORDER BY `meanvalue` DESC ";
Det som gör att låtar utan röster inte visas är
WHERE: `votes`.`unix` >= '$chosedtimeX'
Dock gillar jag den funktionen. Jag tror det är bäst att göra så att ett betyg skrivs in när låten skickas in.
För att göra det tänkte jag mig en mycket simpel query, lik den i votes. Det enda jag inte riktigt vet hur jag ska göra är att skriva in songid. Kan jag göra så att låten först skrivs in, sen så kollar jag vilket id den fick och skriver in det id som songid i votes? Hajjar ni?
Som det ser ut nu gör jag 3 st query, en som skriver in låten, en som hämtar låten id genom att kolla länken och en sista som skriver in en röst med värdet 3 genom att den tar idt från songen och gör det till songid. Dock fungerar det inte ritkigt.
Querys:
$query = "INSERT INTO songs(link, name, active,date) VALUES('$link','$name','$active','$date')";
mysql_query($query);
$query1 = mysql_query ("SELECT id, link FROM users WHERE link='$link'");
$row['id'] = $songid
$query2 = "INSERT INTO votes(songid, ip, points, date) VALUES('$songid','$ip','3','$date')";
mysql_query($query2);
Jag får då error på rad 50: "syntax error, unexpected T_VARIABLE"