02. august 2006 - 20:48Der er
44 kommentarer og 2 løsninger
Vis prik hvis der er film?
Hej
Hvorfor kan jeg ikke få den til at vise prik_film.jpg ud for dem som indeholder en film?
Den viser prik_film.jpg ved alle $row[id]
$query_film = mysql_query("SELECT id FROM film WHERE heste_id = '$row[id]' LIMIT 1") or die (mysql_error()); $number_film = mysql_num_rows($query_film);
$query_film = mysql_query("SELECT `id` FROM `film` WHERE `heste_id` = '$row[id]' LIMIT 0,1") or die (mysql_error()); $number_film = mysql_num_rows($query_film);
Ja jeg udskrive en liste med heste, den skal så tjekke om der er oprettet nogle film ved heste_id = $row[id] hvis der er det skal den vise: prik_film.jpg
$all_films = mysql_query("SELECT `id` FROM `film`") or die (mysql_error()); $all_horses = mysql_query("SELECT `id`, `navn` FROM `heste`") or die (mysql_error());
Det virker ikke, den skriver dette ved alle sammen:
Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her:
Nu har jeg ikke oprettet tabeller i min DB, det er bare teoretisk. Du henter alle data ud. Sætter en variabel true i "films" og så tjekker du om den er sat i "horses"
Jeg har lavet lidt om på koden men syntes ikke den virker:
$all_films = mysql_query("SELECT `heste_id` FROM `film`") or die (mysql_error()); $all_horses = mysql_query("SELECT `id` FROM `heste`") or die (mysql_error());
Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her: Hestenavn: - Vi har, hvis du ser en prik her:
tja, hvis du har 30 udtræk fx. skal du bruge 31 udtræk på noget så enkelt. Og det er jo en del mere end de 2 udtræk. Det virker ja. men din server ville blive mere glad for dig, hvis du minimerer dine udtræk ;)
Hvis du sammensætter en query i stil med dette, skulle det kunne lade sig gøre at nøjes med en enkelt query:
SELECT heste.*, IF(x.antal > 0, 1, 0) AS film FROM heste, (SELECT COUNT(*) AS ANTAL FROM film WHERE heste.id = film.heste_id) AS x $where_order LIMIT $side, $pr_side
Og så skal du bare se om $row['film'] er == 0 eller 1
Så kun lidt - og lov mig at optimer dine udtræk fremover (noget for noget)
Synes godt om
Ny brugerNybegynder
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.