Avatar billede tcp Nybegynder
29. september 2010 - 22:38 Der er 7 kommentarer og
1 løsning

echo table med while loop

Hej eksperten


Jeg sidder lige og skal have udskrevet noget database indhold
men kan ikke rigtigt få det til at virke som jeg vil have det

Vil meget gerne have skrevet et table ud  Som er 8 rows og 4 columns


Har dette script som udskriver 4 columns, 4 rows  altså 16 felter

Sådan ser det ud nu:

video01 video02 video03 video04
video05 video06 video07 video08
video09 video10 video11 video12
video13 video14 video15 video16

Men vil gerne have det sådan:

video01 video02 video03 video04
Title01 Title02 Title03 Title04
video05 video06 video07 video08
Title05 Title06 Title07 Title08
video09 video10 video11 video12
Title09 Title10 Title11 Title12
video13 video14 video15 video16
Title13 Title14 Title15 Title16

Så jeg har 16 felter med video og 16 med title



$query = mysql_query("SELECT * FROM videos WHERE status='1' ORDER BY id DESC LIMIT ".$side.", ".$eachSide);
                $counter = 0;
                echo "<table width=\"500\" border=\"0\">\n";
                while($row = mysql_fetch_array($query)){
                   
                if(($counter % 4) == 0){
                   
                echo "<tr>\n";
                }
               
                  echo "<td><a href=\"v.php?v=".$row['file']."\"><img src=\"files/billeder/".$row['file'].".jpg\" border=\"0\" width=\"120\" height=\"100\" ></a></td>\n";

                $counter++;

               
               
               
               
                }
                echo "</tr>\n</table>";

Håber der er en der vil hjælpe
Avatar billede Slettet bruger
29. september 2010 - 22:45 #1
Min PHP er extremt rusten, men det ser ikke ud til at du overhovedet skriver din title ud?

Kunne en løsning være 2 counters, en for video og en for title, og først når du har talt til 2 for title starter loopet forfra?
Avatar billede Slettet bruger
29. september 2010 - 22:54 #2
Hvis ellers titlen hedder "title" burde du ku' nøjes med denne ændring:

echo "<td><a href='v.php?v=".$row['file']."'>".
"<img src='files/billeder/".$row['file'].".jpg' ".
"border='0' width='120' height='100' ></a>".
"</td></tr><tr><td>".$row['title']."</td>";

PS: har ændret dine \" til ' - meget lettere at læse :)
Avatar billede j4k0b Nybegynder
30. september 2010 - 08:50 #3
Avatar billede tcp Nybegynder
30. september 2010 - 09:13 #4
aalandriel du er inde på det rigtige, 


Men er ikke helt med på om jeg så skal køre en if(($counter2 % 4) == 0) Inde min første if if(($counter % 4) == 0)


Som der så kan udskrive de 4 titler ?





T4NK3R Skal også have noget der kan tælle det hele sammen

j4k0b hvordan vil du udskrive mysql udtræk med css ?
Avatar billede j4k0b Nybegynder
30. september 2010 - 09:47 #5
"j4k0b hvordan vil du udskrive mysql udtræk med css ? "

Hvad snakker du om? Kik mit eksempel igennem en gang til; jeg bruger CSS til at formatere HTML, øh, det kan ikke bruges til andet :)
Avatar billede tcp Nybegynder
30. september 2010 - 09:55 #6
j4k0b

ser fint ud men hvordan styre jeg antal columns
Avatar billede tcp Nybegynder
30. september 2010 - 10:38 #7
j4k0b Har fået det til at virke


Det er en super løsning,


Og endte sådan

css.

div.container {
width: 520px;
background-color: red;
}
div.item {
width: 125px;
height: 200px;
font-size:10px;
float: left;
border: 1px solid #E5E5E5;
background-color: #ffffff;
}

php.


    //Antal pr. side (Kan også laves til noget brugeren kan bestemme
                    $eachSide = 16;
                    $side = (isset($_GET['side']) && is_numeric($_GET['side']) && $_GET['side'] > 0) ? intval($_GET['side']) : 0;

           
                    $query = mysql_query("SELECT * FROM videos WHERE status='1' ORDER BY id DESC LIMIT ".$side.", ".$eachSide);
                    $counter = 1;
                    echo"<div class='container'>\n";
                   
                    while($row = mysql_fetch_array($query))
                    {
                    $title = $row['title'];
                    $title = substr($title, 0, 30);
                    echo"<div class='item'><a href='v.php?v=".$row['file']."'><img src='files/billeder/".$row['file'].".jpg' border='0' width='125' height='90' ></a><br><p align='center'>$title</p></div>";   
                    }
                    echo"</div>\n";


Tak for hjælpen og du sender bare et svar !
Avatar billede j4k0b Nybegynder
30. september 2010 - 11:00 #8
svar :)
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