Avatar billede zac Nybegynder
05. februar 2003 - 09:40 Der er 6 kommentarer og
1 løsning

Begrænset antal celler i hver række...

Med en while-løkke hives billeder ud af en tabel til præsentation i en table, der selv skal udfylde sig efter tabellens omfang.
Hvordan får jeg ny række indsat efter fx 3 billeder, så man ikke skal scrolle langt til siden? Tvunget skift af row for hver gang, der har været 3 celler...
Nødløsningen er at bestemme et max. af celler og præcis hvordan de skal stå i denne table, men ikke så smart.
Avatar billede jakoba Nybegynder
05. februar 2003 - 10:00 #1
$row = mysql_fetch_row( $resultatsaet );
if ( $row ) {
    echo "<table>";
    while( $row ) {
        echo "<tr>";
        for ( $i=0; $i<3: $i++ ) {
            echo "<td>";
            if ( $row ) {
                var_dump( $row );  // du vil nok formattere lidt kønnere
                $row = mysql_fetch_row( $resultatsaet );
            } else {
                echo "&nbsp;";
            }
            echo "</td>\n";
        }
        echo "</tr>\n";
    }
    echo "</table>\n";
}

mvh JakobA
Avatar billede swaxi Nybegynder
05. februar 2003 - 18:26 #2
eller lidt kønnere :
    echo "<table>";
    $i = 0;
    while( $row = mysql_fetch_row( $resultatsaet ) ) {
        if ($i%3==0) echo "<tr>";
        echo "<td>";
        var_dump( $row );
        echo "</td>";
        if ($i%3==0) echo "</tr>\n";
        $i++;
    }
    echo "</table>\n";
Avatar billede jakoba Nybegynder
05. februar 2003 - 19:02 #3
swaxi >> såvidt jeg kan se har du ingen sikkerhed for at den sidste række indeholder 3 celler.

mvh JakobA
Avatar billede swaxi Nybegynder
05. februar 2003 - 19:40 #4
nånej
Avatar billede zac Nybegynder
05. februar 2003 - 23:41 #5
Jeg kan godt se pointen - hos jer begge. Men hvor er det, jeg skal indsætte mine variable:
$result = mysql_query( "SELECT * FROM billedsider WHERE overskrift_id = '$overskrift_id'");

    $row = mysql_fetch_row($result);

$billede_id                              = $row["billede_id"];
$filnavn                                = $row["filnavn"];
$overskrift_id                          = $row["overskrift_id"];
$beskrivelse                            = $row["beskrivelse"];

echo "<td align='left'>\n";

if ( $row ) {
    echo "<table>";
    while( $row ) {
        echo "<tr height='12'>";
        for ( $i=0; $i<3; $i++ ) {
            echo "<td>";
            if ( $row ) {
                var_dump( $row );  // du vil nok formattere lidt kønnere
                $row = mysql_fetch_row( $result );

                [[[  $filnavn som var_dump giver "Call to undefined function" - der er noget her, jeg ikke forstår...  ]]]


            } else {
                echo "&nbsp;";
            }
            echo "</td>\n";
        }
        echo "</tr>\n";
    }
    echo "</table>\n";
}
Avatar billede jakoba Nybegynder
05. februar 2003 - 23:58 #6
$result = mysql_query( "SELECT * FROM billedsider WHERE overskrift_id = '$overskrift_id'");

$row = mysql_fetch_array($result);    // ændret til mysql_fetch_array så du kan indexere med feltnavne

echo "<td align='left'>\n";

if ( $row ) {
    echo "<table>";
    while( $row ) {
        echo "<tr height='12'>";
        for ( $i=0; $i<3; $i++ ) {
            echo "<td>";
            if ( $row ) {    // her udskriver du data for EEN celle i tabellen

                $billede_id    = $row["billede_id"];
                $filnavn      = $row["filnavn"];
                $overskrift_id = $row["overskrift_id"];
                $beskrivelse  = $row["beskrivelse"];
// 'var_dump($row);'  uden at substituere noget udskrive hele arrayet hulter til bulter
                echo "<a href='" .$filnavn ."'><img src='" .$billede_id ."'></a>";  // NOTE nedenfor
                $row = mysql_fetch_array( $result );  // hent næste række

            } else {
                echo "&nbsp;";
            }
            echo "</td>\n";
        }
        echo "</tr>\n";
    }
    echo "</table>\n";
}


NOTE. den linie er utvivlsomt forkert. du ved bedst selv hvordan data fra rækken skal skrives
Avatar billede zac Nybegynder
06. februar 2003 - 00:01 #7
Tak, tak...
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester