webForumDet fria alternativet

Hjälp med array...typ...

4 svar · 261 visningar · startad av Yossarian

YossarianMedlem sedan aug. 200473 inlägg
#1

Ska lista produkter som passar ihop med en viss maskin.
Hämtar först rätt produktid från tabellen "passar".
Sen när jag ska loopa ut produktinfon, så tar den såklart bara första produkten (vet), men behöver lite hjälp med att med resten =)

Antagligen inte svårt för den som kan...men en sådan är inte jag....

   
   $query = "SELECT * from passar WHERE maskin = '$_GET[maskin]'";
   $result = mysql_query($query) or die(mysql_error());
   $rrr = mysql_fetch_array($result);
   $pass = ($rrr["passar"]);

   $query2 = "SELECT  namn, pris, fabrikat, kopior, specifikation, id, a_id, img, g_id from produkter WHERE id = '$pass' order by namn ASC";
   $query3 = mysql_query($query2) or die(mysql_error());
   while($row = mysql_fetch_array($query3)) {
lunne82Medlem sedan dec. 2003153 inlägg
#2

Du har alltså ett fält "passar" i tabellen "passar"?
$pass = ($rrr["passar"]);

I övrigt ser väl koden du postade OK ut, hur ser resten av koden ut?

YossarianMedlem sedan aug. 200473 inlägg
#3

ja, det fältet finns ("passar") i tabellen. det är produktens unika id som ligger där....

resten av koden, även om d nog inte blir lättare av det...eller kanske iofs? =)

<TABLE border=1 width=100% cellpadding=2>

<TR>
<TD><B>Specifikation</B></TD>
<TD><B>Fabrikat</B></TD>
<TD><B>Typ</B></TD>
<TD><B>Kopior</B></TD>
<TD><B>Pris</B></TD>
<TD><B>Sidpris</B></TD>
<TD> </TD></TR>
<TR>


   <?

   $query = "SELECT * from passar WHERE maskin = '$_GET[maskin]'";
   $result = mysql_query($query) or die(mysql_error());
   $rrr = mysql_fetch_array($result);
   $pass = ($rrr["passar"]);

   $query2 = "SELECT  namn, pris, fabrikat, kopior, specifikation, id, a_id, img, g_id from produkter WHERE id = '$pass' order by namn ASC";
   $query3 = mysql_query($query2) or die(mysql_error());
   while($row = mysql_fetch_array($query3)) {
   ?>
<TR>
   <TD><?=$row[specifikation]?></TD>
   <TD><?=$row[fabrikat]?></TD>
   <TD><b><a class="linkg" href="webshop.php?page=produkt&id=<?=$row[id]?>"><?=$row[namn]?></a></b></TD>
   <TD><?=$row[kopior]?></TD>
   <TD><?=$row[pris]?></TD>
   <TD>
<?
$sidpris = $row["pris"]/$row["kopior"];
?>

   <?=$sidpris?> kr
   </TD>
   <TD> <form action="addprodukt.php" method="post" target="kundvagn"><input size="3" class="shop" type="text" name="antal" value="1"> <input type="image" src="img/buy.gif">
     <input type="hidden" name="pnamn" value="<?=$row["namn"]?>"><input type="hidden" name="id" value="<?=$row["a_id"]?>"><input type="hidden" name="p_id" value="<?=$row["id"]?>"><input type="hidden" name="g_id" value="<?=$row["g_id"]?>">
                  <input type="hidden" name="buyid" value="<?=$_SESSION[buyid]?>"></form></TD>

</td>
</TABLE>

aasahMedlem sedan mars 20033 451 inlägg
#4

Re: Hjälp med array...typ...

Jag tror att följande är en bättre idé:

   
$query = "SELECT P.namn, P.pris, P.fabrikat, P.kopior, 
      P.specifikation, P.id, P.a_id, P.img, P.g_id 
      FROM produkter P, Passar S 
      WHERE P.id = S.passar AND S.maskin = '".$_GET['maskin']."'";
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)) {
     //nu innehåller $row all info från samtliga maskiner som passar

De långa """ harangerna runt $_GET fungerar på följande sätt: (om vi lägger in radbrytningar och förklaringar emellan)
' - sträng för MySQL startar
" - sträng i PHP slutar
. - konkatinera med
$_GET['maskin'] - get-värde som vanligt
. - konkatinera med
" - PHP-sträng startar
' - sträng för MySQL slutar
" - sträng i PHP slutar (query-strängen är klar)

Red: Ändrade ett skrivfel och passade på att ändra enl. justeringen nedan också. Sorry!

YossarianMedlem sedan aug. 200473 inlägg
#5

Tackar! Funkade bra efter en liten justering bara...
(WHERE P.id = S.passar...blev d istället)

Så nu kör jag vidare o vem vet, har ni tur kommer d mer frågor =)

132 ms totalt · 3 externa anrop · cache AV · v20260731051352-full.56cc9887
0 ms — hämta statistik (cache)
0 ms — hämta forumlista (cache)
129 ms — hämta tråd, inlägg och bilagor (db)