[PHP/MySQL] Probleem met For Loop

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • RMX
  • Registratie: Augustus 2000
  • Laatst online: 18-09 21:56
Goedemiddag,

Ik ben bezig met een website, en daar moeten een aantal huizen opkomen etc..

Nu ben ik tegen het volgende probleem aangelopen:

Ik haal een aantal huizen van een plaats op via een query..
Deze word vervolgens met een while loop afgelopen.

In de while loop wil ik echter nog een if statement en query uitvoeren.

Hieronder even de code ter verduidelijking:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
    if(isset($s)) {
    $huisquery = mysql_query("SELECT * FROM oorschot_aankoop as a, oorschot_foto as f WHERE a.plaats = '$plaats' AND a.straat LIKE '$s%' AND a.fotoid = f.id order by a.id");   
    } else {
    $huisquery = mysql_query("SELECT * FROM oorschot_aankoop as a, oorschot_foto as f WHERE a.plaats = '$plaats' AND a.fotoid = f.id order by a.id");   
    }
    while($row = mysql_fetch_array($huisquery)) {
// declaratie

    print " 
<table width=\"90%\" border=\"0\" align=\"center\" cellpadding=\"1\" cellspacing=\"3\" bgcolor=\"#336699\">
  <tr>
    <td bgcolor=\"#FFFFFF\"><table width=\"100%\" cellpadding=\"5\" cellspacing=\"1\">
      <tr bgcolor=\"#DFDFDF\">
  <td width=101 valign=top><div align=center><a href='huizen.php?ID=$id&plaats=$plaat'>[img]'foto/thumb_$foto1'[/img]</a></div></td>
  <td width=196 valign=top>$straat2<br />
    $postcode $plaats </td>
    <td width=219 valign=top>$text...</td>
  </tr>
  <tr bgcolor=#E8E8E8>
    <td valign=top><a href='huizen.php?HID=$id&action=show&plaats=$plaat'>Uitvouwen</a></td>
    <td valign=top>$soortobject: $soortwoning</td>
    <td width=219 valign=top><div align=\"right\"><b>&euro; $koopprijs $soortprijs </b><font size=1><a href='http://www.voordeligehypotheken.nl/' target='_blank'>(&plusmn; &euro; 100,= per maand)</a></div></td>
  </tr>";


  if($action == 'show' || $id == $HID) {
$query2 = mysql_query("SELECT * FROM oorschot_aankoop WHERE id = '$HID' LIMIT 1");
$row = mysql_fetch_array($query2);
// Hier de details query

    }

}   
?>

De bedoeling is dat als er op een link geklikt word, die in dit geval Uitvouwen heet, er details onder de tabel verschijnen.
Dit werkt opzich wel, alleen omdat hij in een while loop zit pakt hij de gegevens wel van de query, alleen wordt dit ook 3 x herhaalt door de while loop...

Hoe kan ik dit het beste aanpakken ?

Nu vouwt hij alle 3 de tabellen uit, terwijl ik alleen het betreffende ($HID) huis moet hebben.

Ik hoop dat jullie mij opweg kunnen helpen _/-\o_
Alvast bedankt ! :Y)

[ Voor 15% gewijzigd door RMX op 16-11-2005 16:12 ]


Acties:
  • 0 Henk 'm!

Verwijderd

Moet je niet gewoon je voorwaarde aanpassen?

Als de actie show is en de HID is de id van de rij die je nu afdrukt in je loop, dan druk je de extra info af.

PHP:
25
26
27
28
if($_GET['action'] == 'show' && id == $_GET['HID']) { 
$query2 = mysql_query("SELECT * FROM oorschot_aankoop WHERE id = '$HID' LIMIT 1"); 
$row = mysql_fetch_array($query2); 
// Hier de details query 

Acties:
  • 0 Henk 'm!

  • RMX
  • Registratie: Augustus 2000
  • Laatst online: 18-09 21:56
Thnx...

Dat was de oplossing..

Slotje :P