Avatar billede lasse-p3 Nybegynder
23. april 2009 - 16:53 Der er 8 kommentarer

Php MySQL udtrækning - nemt problem, bare ikke for mig

Jeg har foelgende script. Jeg vil gerne tage det nyeste ID ud og placere i den første jpg-kode, tage næstnyeste ID ud og placere i den næste jpg-kode og så videre. Men da jeg ikke ønsker at vær <TD> skal være fyldt med et billede, hvordan får jeg så gjort det?

Kort fortalt skal jeg bare printe ID'er efter hvor nye de er, og alt sammen i SAMME løkke.

Jeg håber det giver mening!


<?php
mysql_connect("localhost", "m", "m") or die(mysql_error());
mysql_select_db("madebylasse_dk") or die(mysql_error());
$data = mysql_query("SELECT * FROM pixelbilleder ORDER BY 'DESC'")
or die(mysql_error());
while($info = mysql_fetch_array( $data ))
{
?>


<table border="0" cellspacing="5" cellpadding="0" class="center">

<tr>
    <td width="35" height="35"><img src="<? echo $info['id']; ?>.jpg" width="45" height="45" align="bottom" alt=""></td>

    <td width="35" height="35"></td>

    <td width="35" height="35"></td>

    <td width="35" height="35"><img src="<? echo $info['id']; ?>.jpg" width="45" height="45" align="bottom" alt=""></td>

</tr>

</table>
<? } ?>
Avatar billede lasse-p3 Nybegynder
23. april 2009 - 16:54 #1
Som den er nu, printer den to af det samme ID
Avatar billede lasse-p3 Nybegynder
23. april 2009 - 17:04 #2
Plus at den skriver tabellen ud i det nærmest uendelige.
Avatar billede CCodam Nybegynder
23. april 2009 - 17:08 #3
Burde følgende ikke virke? eller har jeg misforstået hvad du vil?

<table border="0" cellspacing="5" cellpadding="0" class="center">
<tr>

<?php
mysql_connect("localhost", "m", "m") or die(mysql_error());
mysql_select_db("madebylasse_dk") or die(mysql_error());
$data = mysql_query("SELECT * FROM pixelbilleder ORDER BY 'DESC'")
or die(mysql_error());
while($info = mysql_fetch_array( $data ))
{
?>
    <td width="35" height="35"><img src="<? echo $info['id']; ?>.jpg" width="45" height="45" align="bottom" alt=""></td>
    <td width="35" height="35"></td>
    <td width="35" height="35"></td>
<? } ?>

</tr>
</table>
Avatar billede lasse-p3 Nybegynder
23. april 2009 - 17:16 #4
Jo men problem er blot at det ikker konsekvent at jeg skal have en fyldt og to tamme <TD> men at det variere meget,  så jeg kan derfor ikke lave en løkke. Kan du forstå hvad jeg mener?
Avatar billede lasse-p3 Nybegynder
23. april 2009 - 17:17 #5
tamme = tomme. Sorry
Avatar billede lasse-p3 Nybegynder
23. april 2009 - 17:18 #6
Den dumme løsning ville væere at køre mysql request ved hver <td> og lave en limit på f.eks. 2,2 og næste gang lave en limit hvor det kun er nr. 3 der kommer frem osv. osv.
Avatar billede lasse-p3 Nybegynder
23. april 2009 - 17:25 #7
Men nu skal jeg så bare finde på en korrekt løsning hvilket jeg ikke kan. Kan I hjælpe?
Avatar billede CCodam Nybegynder
23. april 2009 - 17:56 #8
Hvad med at læse det ind i et array så?

<?php
mysql_connect("localhost", "m", "m") or die(mysql_error());
mysql_select_db("madebylasse_dk") or die(mysql_error());
$data = mysql_query("SELECT id FROM pixelbilleder ORDER BY 'DESC'")
or die(mysql_error());
while($info = mysql_fetch_array( $data ))
{
arrPicId[] = $info
}
?>


Så kan du altid kalde det første id ved at skrive arrPicId[0] (arrayet starter på 0), eller det 20 resultat ved at skrive arrPicId[19]...

Hjælper det dig?
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
Kurser inden for grundlæggende programmering

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