Erik Ginnerskov skrev:
> I en mappe på min hjemmeside kører jeg et script, der scanner mappen for
> forekomster af .jpg-filer og udskriver som en billedoversigt:
>
> <?php
> foreach (glob("*.jpg") as $filename) {
> ?>
> <div><img src="<?= $filename;?>" alt="" /><br /><p
> style='text-align:center'><?=$filename?></p></div>
> <?php
> echo "\r\n";
> }
> ?>
>
> Scriptet fungerer for så vidt upåklageligt, men jeg har fået den ide at
> indsætte en række små tekstfiler med samme filnavn som billederne. formålet
> var at kunne vise en tekst under billedet i stedet for blot filnavnet på
> billedet. Jeg forsøgte dette:
>
> <?php
> foreach (glob("*.jpg") as $filename.jpg) {
> ?>
> <div><img src="<?= $filename.jpg;?>" alt="" /><br /><p
> style='text-align:center'><?=$filename.txt?></p></div>
> <?php
> echo "\r\n";
> }
> ?>
>
>
> ... men scriptet brokker sig over forekomsten af et punktum i variablen i
> første linje. Det nytter heller ikke at escape punktummet - så er der bare
> brok over det i stedet.
>
> Hvordan får jeg parret .jpg-filnavnene med de tilsvarende .txt-filnavne, så
> jeg bare kan smide et nyt billede med tilhørende tekstfil i mappen og
> automatisk få vist det på siden?
Du skal vel også enten læse txt-filen ind, eller include den, i stedet
for blot at give den et navn?
Hvis billedet hedder billede.jpg, kan du så bare kalde txt-filen
billede.jpg.txt
Endelig bør du vel teste for eksistensen af txt-filen, inden du
udskriver den?
<?php
foreach (glob("*.jpg") as $filename.jpg) {
?>
<div><img src="<?= $filename.jpg;?>" alt="" /><br />
<?php
if ( isfile( $filename.".txt")) {
echo "<p style='text-align:center'>";
include $filename.".txt";
echo "</p></div>\r\n";
}
}
?>
--
http://varmeretter.dk - billig, sund og hurtig mad
http://bbsorensen.dk