Avatar billede Senunits Nybegynder
19. november 2009 - 21:52 Der er 5 kommentarer og
1 løsning

Datalist komponent i php

Jeg forsøger at trække en liste over printer modeller ud fra en MYSQL database. Problemet er at jeg ikke kan finde en guide til hvordan man får den bygget i PHP. Jeg er vant til at kode C# hvor jeg har en DataList kontrol, hvilket self ikke er i php. min kode herunder. Det virker ikke helt efter min hensigte, da den kun fylder en col med data. den skal gerne fylde den ud i 3 col og x rows. nogen ider? 

<html>
<body>
    <?php $username="******"; $password="****"; $database="trilink_b2b";
    mysql_connect(localhost,$username,$password); @mysql_select_db($database) or die(
    "Unable to select database"); $query="SELECT * FROM catalog_category_flat_store_8
    where parent_id=213"; $result=mysql_query($query); $num=mysql_numrows($result);
    mysql_close(); ?>
    <table border="0" cellspacing="2" cellpadding="2">
        <tr>
            <th>
                <font face="Arial, Helvetica, sans-serif">Value1</font></th>
        </tr>
        <?php $i=0; while ($i < $num) { $f1=mysql_result($result,$i,"url_key"); $f2=mysql_result($result,$i,"name");
        ?>

   
    <tr>
        <td><font face="Arial, Helvetica, sans-serif"><a href=/hp/inkjet/<?php echo $f1; ?>.html><?php echo $f2; ?></a></font></td>
    </tr>

    <?php $i++; } ?>
</body>
</html>
Avatar billede Senunits Nybegynder
19. november 2009 - 22:07 #1
Jeg giver max point til den der kan hjælpe.
Avatar billede repox Seniormester
19. november 2009 - 22:11 #2
Det første du bør gøre er at fjerne alt hvad der undertrykker dine fejlmeddelser.
Og hvis du er kendt i at kode i C# forstår jeg ikke hvorfor din kode ser ud som den gør?

Nå, men ellers; Nu skriver du godt nok du vil have tre kolonner, men så vidt jeg kan se, vil udskriver du kun to af værdierne? $f1 og $f2?

Kunne du estimistisk eksempel på det output du forventer og eventuelt hvilke felter fra din database du gerne vil have hentet ud?
Avatar billede Senunits Nybegynder
19. november 2009 - 22:17 #3
Det jeg har postet er blot et eksempel af hvad mit resultat skal være. Jeg er vant til at kode C# og gjort det en del år nu, men har aldrig rodet med php før nu og nu er jeg tvunget ud i det.

min plan er at jeg vil vise eks. 3 col med data fra min DB dvs url_key og name. Disse skal listes ud i min dataliste fra a-z, men som den er nu, så er den alt for lang da den kun viser 1. col. jeg ved ikke helt hvordan jeg ellers kan forklare det. Kan vise dig et eksempel i C# hvis det kan hjælpe?
Avatar billede acore Ekspert
19. november 2009 - 22:22 #4
Ikke den mest elegante kode, jeg har set, men lad det nu ligge ;)

Hvis du bytter <tr> ud med

<?php if ($i%3 == 0) echo("<tr>"); ?>

og bytter </tr> ud med

<?php if ($i%3 == 2 || $i+1 == $num) echo("<tr>"); ?>

så skulle du - med færrest muligt ændringer - få 3 kolonner.

Du mangler også en </table> - før </body>
Avatar billede Senunits Nybegynder
19. november 2009 - 22:33 #5
Hvordan giver man flere point ?
Avatar billede acore Ekspert
19. november 2009 - 23:16 #6
Tror kun du kan gøre det med et nyt spm
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