Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  8 741
Hei,

har et galleri på en nettside som bruker lightbox til layout. Da alt dette er i html, og jeg har måttet legge opp bilder selv og slikt på FTP, fant jeg ut at jeg skulle begynne og bruke lightbox med mitt nye galleri, som bruker MySQL og php (laster opp og lagrer filnavn i database). Får alt til å funke i teorien, men bildene vil ikke vises.

her er koden jeg bruker:

Kode

<div id="galleri">
<script type="text/javascript">
var i = 1;
for(i=1; i<=18; i++) {
document.write("<a href='gallery_images/" + <?php echo $bilde; ?>"' rel='lightbox[galleri]' title='Bilder'><img src='gallery_images/" + <?php echo $bilde; ?>"'></a>");
}

</script>
</div>
Lenger opp i dokumentet har jeg selvsagt tilkobling og definering av $bilde osv. Når jeg viser kildekoden på siden, får jeg opp dette:

HTML-kode

<h1>Galleri (Alpha)</h1>
<div id="galleri">
<script type="text/javascript">
var i = 1;
for(i=1; i<=18; i++) {
document.write("<a href='gallery_images/" + <img src=gallery_images/fjunolhr.jpg>"' rel='lightbox[galleri]' title='Bilder'><img src='gallery_images/" + <img src=gallery_images/fjunolhr.jpg>"'></a>");
}

</script>
</div>
og her vises det jo på <img src at den har funnet bildet og hentet det, men siden blir fortsatt blank! Noen som vet hva det kan være?
Nå skal ikke jeg spekulere i hvorfor du skal skrive ut denne 18 ganger, men du blander php og javascript her.

Riktig streng å document.write'e blir

Kode

"<a href='gallery_images/<?php echo $bilde; ?>' rel='lightbox[galleri]' title='Bilder'><img src='gallery_images/<?php echo $bilde; ?>"
så får du slenge på escaping der det passer.

I tillegg så virker det som om $bilde inneholder strengen "<img src=gallery_/(...)jpg" når jeg tipper du vil ha det relative filnavnet så du kan linke til det. Vet ikke hvordan denne er definert, så for det må du komme med mer informasjon.
Sist endret av Dyret; 19. mars 2009 kl. 23:49.
Trådstarter
den definerer $bilde som et bildenavn for hvert bildenavn i databasen Det med 18 ganger har jeg ikke fjerna ennå, det kommer av at det lå 18 bilder i det gamle galleriet. Har prøvd din versjon av document.write, men får fortsatt blank side
document.write("<a href='gallery_images/" + <img src=gallery_images/fjunolhr.jpg>"' rel='lightbox[galleri]' title='Bilder'><img src='gallery_images/" + <img src=gallery_images/fjunolhr.jpg>"'></a>");
Vis hele sitatet...
Ser du ikke at denne linja er helt på trynet?

For det første må du ha apostrofer eller anførselstegn rundt stringene du legger sammen, slik den er nå gir den ingen mening som javascript.

For det andre ser det ut til at $bilde inneholder en helg img-tag, og ikke banen til bildet som du ser ut til å tro.

Erstatt document.write med alert så ser du hva den prøver å generere...
Trådstarter
$bilde inneholder f.eks. bilde.jpg og alle andre navn som måtte ligge i databasen. selve banen til bildet ligger jo i <a href='gallery_images/.
Hvorfor står det da <img src=gallery_images/fjunolhr.jpg> der $bilde skrives ut?
Trådstarter
fordi <img src= ser slik ut i PHP-koden : ><img src='gallery_images/<?php echo $bilde; ?>"
Sitat av cromoglic Vis innlegg
fordi <img src= ser slik ut i PHP-koden : ><img src='gallery_images/<?php echo $bilde; ?>"
Vis hele sitatet...
Nei, ikke i følge informasjonen du har presentert oss med.

Kode

<img src='gallery_images/" + <?php echo $bilde; ?>"'></a>
blir helt tydelig til

Kode

<img src='gallery_images/" + <img src=gallery_images/fjunolhr.jpg>"'></a>
Sist endret av Dyret; 20. mars 2009 kl. 21:36.
Som Dyret viser deg, så stemmer ikke det du sier om PHP-koden.

Dessuten mangler du anførselstegn rundt $bilde-delen i javascriptet. Endre linja i PHP-fila til:

Kode

document.write("<a href='gallery_images/" + "<?php echo $bilde; ?>" + "' rel='lightbox[galleri]' title='Bilder'><img src='gallery_images/" + "<?php echo $bilde; ?>" + '></a>");