(mysql) count if else constuctie

Pagina: 1
Acties:

  • Compusmurf
  • Registratie: Oktober 2003
  • Laatst online: 16-08-2024
nou, ik ben al een dag aan het zoeken hoe het op te lossen is maar ben er nog steeds niet uit en de zoekresultaten worde ook steeds slechter dus ga ik jullie ff op hulp vragen.

Nou wat ik wil ik heb een tabel met gegevens en plaatjes, ik wil dat er 2x een tabel word weergegevens langs elkaar en dan weer 2x tabel eronder. Klinkt niet zo moeilijk maar is het dus wel.

code:
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
if ($aantal_rijen > 0) 
    {
    for ($i = 0; $i < $aantal_rijen; $i++)
    {
    $id = mysql_result($result, $i, 'id');
    $datum = mysql_result($result, $i, 'datum');
    $titel= mysql_result($result, $i, 'titel');
    $nummer = mysql_result($result, $i, 'nummer');
    
    $i2=($i + 1);
    
    if($i2 != $aantal_rijen)   
    {
    $id_rechts     = mysql_result($result, $i2, 'id');
    $titel_rechts  = mysql_result($result, $i2 , 'titel');
    $datum_rechts  = mysql_result($result, $i2 , 'datum');
    }
    else 
    {
    $id_rechts    = " ";
    $titel_rechts = " ";
    $datum_rechts = " ";
    }
    
        //echo "<td colspan=\"2\" align=\"left\">[img]\"images/portfolio/$id.jpg\"[/img]";
    echo "<tr>";    
            echo "<td colspan=\"10\" width=\"525\" height=\"10\"></td>";        
    echo "</tr>";

    echo "<tr>";
    if ($nummer % 2)
    {
    $titel_links  = $titel; 
    $datum_links  = $datum;
    

    echo "<tr>";    
        echo "<td width=\"110\" bgcolor=\"#F3F3F3\"width=\"260\" colspan=\"2\" align=\"left\">[img]\"../images/portfolio/$id.jpg\"[/img]</td>";
        echo "<td width=\"150\"bgcolor=\"#F3F3F3\"><b>Titel: </b>$titel_links<br><b>Geplaatst op: </b>$datum_links<br></td>";
                echo "<td width=\"15\" bgcolor=\"#F3F3F3\"><a href=\"portfolioverwijder.php?portfolio=idlinks&id=$id\">[img]\"../images/delete.gif\"[/img]$id</td>";
        echo "<td width=\"15\">";

        if($id_rechts != " ")
        {
        echo "<td width=\"110\" bgcolor=\"#F3F3F3\" width=\"260\" colspan=\"2\" align=\"left\">";
        echo "[img]\"../images/portfolio/$id_rechts.jpg\"[/img]";
        echo "<td width=\"150\" bgcolor=\"#F3F3F3\"><b>Titel: </b>$titel_rechts<br><b>Geplaatst op: </b>$datum_rechts <br></td>";
        echo "<td width=\"15\" bgcolor=\"#F3F3F3\"><a href=\"portfolioverwijder.php?portfolio=idrechts&id=$id_rechts\">[img]\"../images/delete.gif\"[/img]$id_rechts</td>";
        }
        echo"</td>";
    echo "</tr>";
    }  
    echo "</tr>";   
    
    echo "<tr>";    
            echo "<td colspan=\"10\" width=\"525\" height=\"10\"></td>";        
    echo "</tr>";


Dit werkte maar niet als we wat verwijderen. Want dan klopt de tabel niet en worden er 2 niet meer getoond in plaats van 1, deze blijven wel in de database staan.

Oplossing: records tellen en bij 2 record uitgelezen een <tr></tr> laten doen. Dan zou het opgelost moeten zijn. Maar hoe krijgen we dit voor elkaar. Met het commando count kan ik wel laten tellen maar krijg ik er geen if/else contructie meer in.

Heeft iemand misschien een oplossing om dit te laten werken of een andere oplossing zodat het wel werkt?

[ Voor 88% gewijzigd door Compusmurf op 08-10-2004 14:07 ]

http://Compusmurf.xs4all.nl


  • pjvandesande
  • Registratie: Maart 2004
  • Laatst online: 21-05 14:59

pjvandesande

GC.Collect(head);

Wil jij even zo vriendelijk zijn de FAQ nog is door te lezen en even je code tussen code-tags te zetten.

Step je code is met een debugger.

Verwijderd

Je wilt dus eigenlijk gewoon een tabel van 2 kolommen met je plaatjes erin?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$jouwquery = mysql_query("Select *");
$teller = 0;

echo "<table><tr>";

while($jouwrows = mysql_fetch_array($jouwquery)){
    
    if($teller==2){
        echo "</tr><tr>";
        $teller = 0;
    }

    echo "<td>".$jouwrows['jouwitem']."</td>";

    $teller++;
}

echo "</tr></table>";


Of bedoel je dat niet?

  • Compusmurf
  • Registratie: Oktober 2003
  • Laatst online: 16-08-2024
Verwijderd schreef op 08 oktober 2004 @ 10:20:
Je wilt dus eigenlijk gewoon een tabel van 2 kolommen met je plaatjes erin?

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$jouwquery = mysql_query("Select *");
$teller = 0;

echo "<table><tr>";

while($jouwrows = mysql_fetch_array($jouwquery)){
    
    if($teller==2){
        echo "</tr><tr>";
        $teller = 0;
    }

    echo "<td>".$jouwrows['jouwitem']."</td>";

    $teller++;
}

echo "</tr></table>";


Of bedoel je dat niet?
Dat bedoel ik idd. Hartelijk bedankt hiervoor, ik kreeg het gisteren niet voor elkaar maar nu wel. En nog een klein vraagje.

Hoe zet ik hier @ got die code in een overzichtelijk vak. Kan ik dat de volgende keer netjes doen en houd ik me aan de regels

http://Compusmurf.xs4all.nl


Verwijderd

Met [ code ] tags ipv < code > tags.

Staat in de FAQ, maar ik help graag, succes ermee ;)