/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Sort streg i baggrunden for galleribillede~
Fra : Jakob Munck


Dato : 27-01-07 08:38

Jeg har lavet et lille galleri, som kan ses på forsiden her:

www.kadi.dk

Men der er en fejl, for under hver række af billeder ser man lidt af den
sorte baggrund for tabellen, og det burde man ikke kunne. Årsagen er vist
nok, at html'en er forkert, men problemet er at jeg ikke kan finde ud af at
lave dette loop rigtigt, så html'en bliver korrekt. Jeg har forsøgt med
masser af ændringer, men det lykkes ikke.

Her er min kode:
------------------------------------------------------
<?php
$sql2 = mysql_query("SELECT * FROM kagalleri ORDER BY raekkefoelge DESC
LIMIT 6");
echo "<table border='0' width='80%' cellpadding='0' bgcolor='#000000'
cellspacing='0' bordercolor='#000000' align='center'>";
$i = 0;
while($data2 = mysql_fetch_array($sql2)){
$n = 2; //antallet af kolonner
if ($i % $n == 0) echo "<tr>";
$i++;
echo "<td align='center' class='sort11'>";
?>
<img alt="Log dig ind for at se hele galleriet"
src="galleri_db/images_galleri/<?php echo $data2['gal_id']?>.jpg" border="0"
height="112" width="112">

<?php
echo "</td>";
}
echo "</tr>";
echo "</table>";
?>
---------------------------------------------------------------

Kan nogen give mig et tip til at rette koden, så billederne står helt tæt op
ad hinanden, så man ikke kan se den sorte baggrund under billedrækkerne?

v.h.
Jakob



 
 
Arne Feldborg (27-01-2007)
Kommentar
Fra : Arne Feldborg


Dato : 27-01-07 09:13

"Jakob Munck" <jm2_fjern_dette@webspeed.dk> skrev Sat, 27 Jan 2007
08:38:18 +0100


>$n = 2; //antallet af kolonner
>if ($i % $n == 0) echo "<tr>";
>
Du starter en hel bunke <tr> og afslutter kun een af dem.

Mærkeligt nok ses problemet i IE og ikke i Firefox. Det plejer ellers at
være IE der er mest fejltolerant.

--
mvh, A:\Feldborg

Slægtsforskning og lokalhistorie i midt- vestjylland
http://hammerum-herred.dk/

Jakob Munck (27-01-2007)
Kommentar
Fra : Jakob Munck


Dato : 27-01-07 09:58

>
>>$n = 2; //antallet af kolonner
>>if ($i % $n == 0) echo "<tr>";
>>
> Du starter en hel bunke <tr> og afslutter kun een af dem.
>

ja, det gør jeg. Men jeg kan desværre ikke finde ud af at ændre koden, så
dette bliver rettet, det er mit problem?

v.h.
Jakob



Jesper Brunholm (27-01-2007)
Kommentar
Fra : Jesper Brunholm


Dato : 27-01-07 11:50

Jakob Munck skrev:
> $i = 0;
> while($data2 = mysql_fetch_array($sql2)){
> $n = 2; //antallet af kolonner
> if ($i % $n == 0) echo "<tr>";

Her tilføjer du en <tr> for hver 2 rækker, så du er nødt til at lave en
mekanisme der også tilføjer en afsluttende </tr>.

Jeg har en del gange gjort det at jeg
* satte en indledende <tr> før min while
* derefter satte et sæt </tr> <tr> (bemærk først afsluttende!) ind når
($i % $n == 0 && $i>0)#dvs ikke første gang, der er <tr> sat, og der er
ikke noget der skal afsluttes endnu
* sætter en </tr> på når jeg er færdig med min while

Mvh

Jesper Brunholm

Jakob Munck (27-01-2007)
Kommentar
Fra : Jakob Munck


Dato : 27-01-07 16:33

>
> Jeg har en del gange gjort det at jeg
> * satte en indledende <tr> før min while
> * derefter satte et sæt </tr> <tr> (bemærk først afsluttende!) ind når ($i
> % $n == 0 && $i>0)#dvs ikke første gang, der er <tr> sat, og der er ikke
> noget der skal afsluttes endnu
> * sætter en </tr> på når jeg er færdig med min while
>

Tak for vejledning. Det tolker jeg således:

<?php
$sql2 = mysql_query("SELECT * FROM kagalleri ORDER BY raekkefoelge DESC
LIMIT 6");
echo "<table border='0' width='80%' cellpadding='0' bgcolor='#000000'
cellspacing='0' bordercolor='#000000' align='center'><tr>";
$i = 0;
while($data2 = mysql_fetch_array($sql2)){
$n = 2; //antallet af kolonner
if ($i % $n == 0 && $i>0) echo "</tr><tr>";
$i++;
echo "<td align='center' height='100%' class='sort11'>";
?>
<img alt="Log dig ind for at se hele galleriet"
src="galleri_db/images_galleri/<?php echo $data2['gal_id']?>.jpg" border="0"
height="112" width="112">
<?php
echo "</td>";
}
echo "</tr>";
echo "</table>";
?>

Og det virker fint. Nu kommer der korrekt html ud af det. Men desværre er
den sorte streg under billedrækkerne ikke forsvundet alligevel. Der er altså
stadig noget galt, men hvad...??

v.h.
Jakob



Jesper Brunholm (28-01-2007)
Kommentar
Fra : Jesper Brunholm


Dato : 28-01-07 11:21

Jakob Munck skrev:
[snip: velfungerende løsning på at få lavet tabel med to kolonner]

> Og det virker fint. Nu kommer der korrekt html ud af det. Men desværre er
> den sorte streg under billedrækkerne ikke forsvundet alligevel. Der er altså
> stadig noget galt, men hvad...??

Godt spørgsmål (på det tidspunkt ). Den korrekte HTML gav et godt
udgangspunkt for en løsning med CSS, som jeg kan se i HTML gruppen at du
har fået

Mvh

Jesper Brunholm

Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408522
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste