/ 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
søgning i spil system...
Fra : morten


Dato : 15-09-06 14:22

Hej NG…

Først bliver jeg nødt til at sige at det var lidt svært at finde
på en passende overskrift, så i må bære over med mig hvis i
syntes at den ikke passer…

Men mit problem er:

Jeg har en spil side, jeg vil gerne have at man kan soter i hvad
kategori spillet skal være i, hvad spillet er lavet i om så
vider…

Man ser min spil “menu” på en side der hedder oversigt.php. Så
har jeg links ude i min hoved menu, hvor kategorierne er og hvor
man kan vælge hvad spillet skal være lavet med. Som det her:

- Kategori
Bilspil - (har link, oversigt.php?kategori=1)
Skydespil - (har link, oversigt.php?kategori=2)

- Type
Java - (har link, oversigt.php?type=java)
Flash - (har link, oversigt.php?type=flash)

---------------

Og problemer er så jeg ikke aner hvordan at jeg skal gøre at den
både kan finde spillet i den rigtige kategori og i den rigtige
type ved mysql koden, jeg startede med den her:

$query = mysql_query("SELECT * FROM spil WHERE kategori =
'$_GET[kategori]' AND type = '$_GET[type]'") or
die(mysql_error());
$vis = mysql_fetch_array($query))

Og det gik helt galt da hver gang man billede på et link, var
siderne blanke, da når jeg havde koden oversigt.php?type=flash
var der jo ikke noget der kunne sige at jeg skulle bruge alle
kategorierne, men KUN spil som var lavet i flash… Så begynde jeg
at gøre noget andet som gik endnu mere galt…

Har i nogen ide om hvad jeg skal gøre for det virker?

--
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

 
 
Martin (15-09-2006)
Kommentar
Fra : Martin


Dato : 15-09-06 14:41

morten wrote:
> $query = mysql_query("SELECT * FROM spil WHERE kategori =
> '$_GET[kategori]' AND type = '$_GET[type]'") or
> die(mysql_error());
> $vis = mysql_fetch_array($query))

$where = array();
if($_GET["type"]) {
$where[] = "type = '".$_GET["type"]."'";
}

if($_GET["kategori"]) {
$where[] = "kategori = '".$_GET["kategori."'";
}

$q = "
SELECT ... FROM ...
WHERE ".implode(" AND ",$where);
$query = mysql_query($q) OR DIE (mysql_error());
$vis = mysql_fetch_array($q));


Så vis der skrives
oversigt.php?type=flash
så hedder $query

SELECT ... FROM ... WHERE type = 'flash'

vis oversigt.php?kategori=12&type=flash
så hedder $query
SELECT ... FROM ... WHERE type = 'flash' AND kategori = '12'

morten (15-09-2006)
Kommentar
Fra : morten


Dato : 15-09-06 15:21

> $where = array();
> if($_GET["type"]) {
> $where[] = "type = '".$_GET["type"]."'";
> }
>
> if($_GET["kategori"]) {
> $where[] = "kategori = '".$_GET["kategori."'";

Har jeg lavet til:
$where[] = "kategori = '".$_GET["kategori"]."'";

> }
>
> $q = "
> SELECT ... FROM ...

Har jeg lavet til:
SELECT * FROM spil

> WHERE ".implode(" AND ",$where);
> $query = mysql_query($q) OR DIE (mysql_error());
> $vis = mysql_fetch_array($q));

Har jeg lavet til:
$vis = mysql_fetch_array($q);

>
>
> Så vis der skrives
> oversigt.php?type=flash
> så hedder $query
>
> SELECT ... FROM ... WHERE type = 'flash'
>
> vis oversigt.php?kategori=12&type=flash
> så hedder $query
> SELECT ... FROM ... WHERE type = 'flash' AND kategori = '12'


Smart :D


Men selvom at jeg gør det, kommer den her fejl:

Warning: mysql_fetch_array(): supplied argument is not a valid
MySQL result resource in
/customers/*hemmeligside*.dk/*hemmeligside*.dk/httpd.www/nyt/spil
/oversigt.php on line 128

Resten af min side vises, men den skriver den fejl der hvor
spillende gerne skulle komme frem :/

--
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 : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408849
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste