---
title: "Visa bild med php?"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/140894-visa-bild-med-php"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "Ken"
published: "2006-01-14T16:29:46.000Z"
updated: "2006-01-24T20:30:22.000Z"
replies: 12
views: 1190
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/140894-visa-bild-med-php"
---

# Visa bild med php?

## #1 — Ken, 2006-01-14T16:29Z

Kan nån hjälpa mig på traven hur man visar en aktuell bild med php?

Permalänk: https://www.webforum.nu/p/140894

## #2 — Pedda, 2006-01-14T17:21Z

Du får nog förklara lite mer vad du menar.

Permalänk: https://www.webforum.nu/p/1746184

## #3 — Ken, 2006-01-15T16:08Z

Vad jag menar egentligen är att hur man visar bilder med php från t.ex en mapp.

Permalänk: https://www.webforum.nu/p/1746582

## #4 — Pedda, 2006-01-15T17:36Z

Här är ett exempel på hur du listar jpg bilder i en viss mapp.
Jag har inte testat skriptet då jag inte har php installerat på den här datorn, så jag kan ha gjort något fel.

```php
<?php
$mapp = "bilder/"; // Du måste ha / efter mappnamnet
$bilder = array();

if ($dir = opendir($mapp))  {
        while($file = readdir($dir)) {
                if (ereg("[^1(.*)\.jpg$]",$file)) {
                       array_push($bilder,$file);
                }
        }
} else {
        echo "Mappen $mapp kunde inte öppnas.";
}
    
foreach ($bilder as $bild) {
        echo "<img src=\"$mapp$bild\" />";
}
?>
```

Permalänk: https://www.webforum.nu/p/1746613

## #5 — Farbror, 2006-01-19T20:43Z

Det där skriptet visar alla jpg-bilderna som finns i mappen (vilket kan vara 100-tals). Om man bara vill visa en slumpmässigt vald bild då? 

Jag har ett sånt slump-bild-php-skript själv förvisso, men det visar tyvärr alla filer i mappen, även htm-filer... enbart bilderna i mappen vore bra. Var får man tag i ett sånt skript?

Permalänk: https://www.webforum.nu/p/1751652

## #6 — Pedda, 2006-01-19T21:00Z

```php
<?php
$mapp = "bilder/"; // Du måste ha / efter mappnamnet
$bilder = array();

if ($dir = opendir($mapp))  {
        while($file = readdir($dir)) {
                if (ereg("[^1(.*)\.jpg$]",$file)) {
                       array_push($bilder,$file);
                }
        }
$random_bild = array_rand($bilder, 1); 

echo "<img src=\"$mapp$random_bild\" />";

} else {
        echo "Mappen $mapp kunde inte öppnas.";
}

?>
```

Permalänk: https://www.webforum.nu/p/1751661

## #7 — Farbror, 2006-01-19T21:51Z

Fungerar inte riktigt. Html-koden som php-skriptet genererar blir:
\<img src="datorer/108" /\>
Ser ut som om .jpg-ändelsen saknas efter filnamnet "108"...

Permalänk: https://www.webforum.nu/p/1751695

## #8 — Peeer, 2006-01-19T21:58Z

Ändra 

```php
$random_bild = array_rand($bilder, 1);
```

till

```php
$random_bild = array_rand($bilder, 1) . '.jpg';
```

Permalänk: https://www.webforum.nu/p/1751701

## #9 — Pedda, 2006-01-19T22:02Z

Sorry, glömde det.

Permalänk: https://www.webforum.nu/p/1751707

## #10 — Farbror, 2006-01-20T10:23Z

Jag ser nu att filnamnet är mer fel än jag tänkte på igår kvällst. Nu funkar det visserligen så att .jpg dyker upp, men själva filnamnet är rent "påhitt": Php-koden skapar:
\<img src="datorer/234.jpg" /\>
Och det finns inga filer med enbart siffror i filnamnet i mappen "datorer"...

Permalänk: https://www.webforum.nu/p/1751868

## #11 — Pedda, 2006-01-21T10:21Z

> **Farbror skrev:**
>
> Jag ser nu att filnamnet är mer fel än jag tänkte på igår kvällst. Nu funkar det visserligen så att .jpg dyker upp, men själva filnamnet är rent "påhitt": Php-koden skapar:
> \<img src="datorer/234.jpg" /\>
> Och det finns inga filer med enbart siffror i filnamnet i mappen "datorer"...

Ok, verkar som array_rand gav fel resultat så vi kan köra shuffle istället för att krångla med den.

```php
<?php
$mapp = "bilder/"; // Du måste ha / efter mappnamnet
$bilder = array();

if ($dir = opendir($mapp))  {
        while($file = readdir($dir)) {
                if (ereg("[^1(.*)\.jpg$]",$file)) {
                       array_push($bilder,$file);
                }
        }
        shuffle($bilder);
        echo "<img src=\"$mapp$bilder[0]\" />";

} else {
        echo "Mappen $mapp kunde inte öppnas.";
}
?>
```

Permalänk: https://www.webforum.nu/p/1752294

## #12 — Ken, 2006-01-24T09:42Z

Hur gör man på följande vis ifall man vill visa alla bilder i en mapp?

Permalänk: https://www.webforum.nu/p/1753323

## #13 — Farbror, 2006-01-24T20:30Z

Pedda, nu funkar skriptet fast nu visas alla filer mappen istället för endast gif och jpg.
T.ex. kan php-skriptets "output" bli: \<img src="datorer/datorerbild130.htm" /\>

Jag har dock hittat skriptet nedan som verkar fungera, även om jag inte riktiga fattar skillnaden mellan $dir och $directory i början. Och om man vill öppna en slumpmässigt vald bild från någon av ett flertal kataloger?

\<?php 
$dir=opendir("datorer/");
//This is the directory route to the folder
$directory="datorer/";
//This is a relative link to the directory if it is not in the same directory as the file you are displaying the images on

$pattern="\\.(gif\|jpg\|jpeg\|png\|bmp\|swf)$";
if(!$dir)
{
die("Failed to read directory");
}
$s=readdir($dir);
$count="0";
$image;
while($s)
{
if(ereg($pattern, $s))
{
$image\[$count\]=$s;
$count++;
}
$s=readdir($dir);
}
closedir($dir);

//Spit it out
$limit=count($image);
$limit--;
$randNum=rand(0,$limit);
$size=getimagesize("$directory$image\[$randNum\]");
echo "\<br\>\<img src=\\"$directory$image\[$randNum\]\\" $size\[3\]\>";
?\>

Permalänk: https://www.webforum.nu/p/1753617

---

Tråden på webben: https://www.webforum.nu/amne/php/140894-visa-bild-med-php
