/ 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
php script spørgsmål
Fra : Nismo


Dato : 16-06-06 00:28

Jeg har fundet et php script, der skal vise random billeder fra en mappe, nu
er spørgsmålet om man ikke kan få den til at hente i flere mapper ?


Her er scriptet :


<?php
Header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
pre-check=0");
Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
Header("Pragma: no-cache");
Header("Content-Type: image/gif");

$dir = "Images"; // This is the folder where the images are

srand((double)microtime()*1000000);
$i = 0;
$dirHandle = opendir($dir); // Open the images folder
while(($im = readdir($dirHandle)))
{
if($im != ".." && $im != ".") // Don't read in the 2 folders ".." and "."
{
$image[$i] = $im; // Select an image
$i++;
}
}
closedir($dirHandle); // Close the folder
$n = rand(0,(count($image)-1));

if(!readfile($dir."/".$image[$n])) // Read the image
readfile($dir."error/error.gif"); // If the script can't find the directory,
display this image
?>


Dette indsættes på der på den side, hvor man vil ha' billedet vist:


<img src="http://www.yourdomain.com/images.php" border="0">


Håber der er en / nogen der kan hjælpe mig.

På forhånd mange tak.

Nismo




 
 
Martin (16-06-2006)
Kommentar
Fra : Martin


Dato : 16-06-06 01:18

Nismo wrote:
> $dirHandle = opendir($dir); // Open the images folder
> while(($im = readdir($dirHandle)))
> {
> if($im != ".." && $im != ".") // Don't read in the 2 folders ".." and "."
> {
> $image[$i] = $im; // Select an image
> $i++;
> }
> }
> closedir($dirHandle); // Close the folder

Her åbner den biblioteket, og henter filerne ind i $image, har du prøvet
at lege lidt med det?

Nismo (16-06-2006)
Kommentar
Fra : Nismo


Dato : 16-06-06 17:19


"Martin" <news@natten-i.dk> skrev i en meddelelse
news:4491f897$0$15793$14726298@news.sunsite.dk...
> Nismo wrote:
>> $dirHandle = opendir($dir); // Open the images folder
>> while(($im = readdir($dirHandle)))
>> {
>> if($im != ".." && $im != ".") // Don't read in the 2 folders ".." and "."
>> {
>> $image[$i] = $im; // Select an image
>> $i++;
>> }
>> }
>> closedir($dirHandle); // Close the folder
>
> Her åbner den biblioteket, og henter filerne ind i $image, har du prøvet
> at lege lidt med det?


Nej det har jeg godt nok ikke, da jeg er sikker på at det er øverst i
scriptet den får anvisningen om hvilken mappe den skal hente i.

Nederste linie i det stykke af scriptet her :



<?php
Header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
pre-check=0");
Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
Header("Pragma: no-cache");
Header("Content-Type: image/gif");

$dir = "Images"; // This is the folder where the images are


Nismo



Martin (17-06-2006)
Kommentar
Fra : Martin


Dato : 17-06-06 01:26

Nismo wrote:
> Jeg har fundet et php script, der skal vise random billeder fra en mappe, nu
> er spørgsmålet om man ikke kan få den til at hente i flere mapper ?
>
>
> Her er scriptet :
>
>
> <?php
> Header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
> pre-check=0");
> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
> Header("Pragma: no-cache");
> Header("Content-Type: image/gif");
>
> $dir = "Images"; // This is the folder where the images are

Dette kan laves til et array således
$dirs[]="dir1";
$dirs[]="dir2";
osv.

>
> srand((double)microtime()*1000000);
> $i = 0;


så indsætter du denne linje

foreach($dirs AS $dir) {

> $dirHandle = opendir($dir); // Open the images folder
> while(($im = readdir($dirHandle)))
> {
> if($im != ".." && $im != ".") // Don't read in the 2 folders ".." and "."
> {
> $image[$i] = $im; // Select an image
> $i++;
> }
> }
> closedir($dirHandle); // Close the folder

} // end foreach
og lukker foreach'en igen.

> $n = rand(0,(count($image)-1));
>
> if(!readfile($dir."/".$image[$n])) // Read the image
> readfile($dir."error/error.gif"); // If the script can't find the directory,
> display this image
> ?>

Så skulle det gerne tage 1 billede fra en af mapperne.

Nismo (17-06-2006)
Kommentar
Fra : Nismo


Dato : 17-06-06 19:59

Jeg takker rigtig mange gange, og håber mine grå hår forsvinder igen, det
var lige det der skulle til.

Nismo.



"Martin" <news@natten-i.dk> skrev i en meddelelse
news:44934bde$0$15794$14726298@news.sunsite.dk...
> Nismo wrote:
>> Jeg har fundet et php script, der skal vise random billeder fra en mappe,
>> nu
>> er spørgsmålet om man ikke kan få den til at hente i flere mapper ?
>>
>>
>> Her er scriptet :
>>
>>
>> <?php
>> Header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
>> pre-check=0");
>> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
>> Header("Pragma: no-cache");
>> Header("Content-Type: image/gif");
>>
>> $dir = "Images"; // This is the folder where the images are
>
> Dette kan laves til et array således
> $dirs[]="dir1";
> $dirs[]="dir2";
> osv.
>
>>
>> srand((double)microtime()*1000000);
>> $i = 0;
>
>
> så indsætter du denne linje
>
> foreach($dirs AS $dir) {
>
>> $dirHandle = opendir($dir); // Open the images folder
>> while(($im = readdir($dirHandle)))
>> {
>> if($im != ".." && $im != ".") // Don't read in the 2 folders ".." and "."
>> {
>> $image[$i] = $im; // Select an image
>> $i++;
>> }
>> }
>> closedir($dirHandle); // Close the folder
>
> } // end foreach
> og lukker foreach'en igen.
>
>> $n = rand(0,(count($image)-1));
>>
>> if(!readfile($dir."/".$image[$n])) // Read the image
>> readfile($dir."error/error.gif"); // If the script can't find the
>> directory,
>> display this image
>> ?>
>
> Så skulle det gerne tage 1 billede fra en af mapperne.



Nismo (17-06-2006)
Kommentar
Fra : Nismo


Dato : 17-06-06 20:11

HOV, det fik jeg vist lige sagt lidt for hurtigt, dette kan ikke håndtere
over 2 mapper.
Så kommer rammen bare, hvor billedet skulle været, men der er ingen billede,
kun det lille røde kryds.

Nismo.


"Nismo" <ubrugligt@@hotmail.com> skrev i en meddelelse
news:8hYkg.95$dX6.67@news.get2net.dk...
> Jeg takker rigtig mange gange, og håber mine grå hår forsvinder igen, det
> var lige det der skulle til.
>
> Nismo.
>
>
>
> "Martin" <news@natten-i.dk> skrev i en meddelelse
> news:44934bde$0$15794$14726298@news.sunsite.dk...
>> Nismo wrote:
>>> Jeg har fundet et php script, der skal vise random billeder fra en
>>> mappe, nu
>>> er spørgsmålet om man ikke kan få den til at hente i flere mapper ?
>>>
>>>
>>> Her er scriptet :
>>>
>>>
>>> <?php
>>> Header("Cache-Control: no-store, no-cache, must-revalidate,
>>> post-check=0,
>>> pre-check=0");
>>> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
>>> Header("Pragma: no-cache");
>>> Header("Content-Type: image/gif");
>>>
>>> $dir = "Images"; // This is the folder where the images are
>>
>> Dette kan laves til et array således
>> $dirs[]="dir1";
>> $dirs[]="dir2";
>> osv.
>>
>>>
>>> srand((double)microtime()*1000000);
>>> $i = 0;
>>
>>
>> så indsætter du denne linje
>>
>> foreach($dirs AS $dir) {
>>
>>> $dirHandle = opendir($dir); // Open the images folder
>>> while(($im = readdir($dirHandle)))
>>> {
>>> if($im != ".." && $im != ".") // Don't read in the 2 folders ".." and
>>> "."
>>> {
>>> $image[$i] = $im; // Select an image
>>> $i++;
>>> }
>>> }
>>> closedir($dirHandle); // Close the folder
>>
>> } // end foreach
>> og lukker foreach'en igen.
>>
>>> $n = rand(0,(count($image)-1));
>>>
>>> if(!readfile($dir."/".$image[$n])) // Read the image
>>> readfile($dir."error/error.gif"); // If the script can't find the
>>> directory,
>>> display this image
>>> ?>
>>
>> Så skulle det gerne tage 1 billede fra en af mapperne.
>
>



Rune Christensen (19-06-2006)
Kommentar
Fra : Rune Christensen


Dato : 19-06-06 09:48

"Nismo" <ubrugligt@@hotmail.com> skrev i en meddelelse
news:osYkg.96$Fh7.27@news.get2net.dk...
> HOV, det fik jeg vist lige sagt lidt for hurtigt, dette kan ikke håndtere
> over 2 mapper.
> Så kommer rammen bare, hvor billedet skulle været, men der er ingen
> billede, kun det lille røde kryds.
>
> Nismo.
>

Du skal også huske at gemme hvilken mappe du fandt billedet i, således du
har alle de nødvendige oplysninger til at hente billedet.

Mvh.
Rune Christensen



Nismo (19-06-2006)
Kommentar
Fra : Nismo


Dato : 19-06-06 12:30


"Rune Christensen" <rune.christensen@adslhome.dk> skrev i en meddelelse
news:449664ab$0$74089$edfadb0f@dread14.news.tele.dk...
> "Nismo" <ubrugligt@@hotmail.com> skrev i en meddelelse
> news:osYkg.96$Fh7.27@news.get2net.dk...
>> HOV, det fik jeg vist lige sagt lidt for hurtigt, dette kan ikke håndtere
>> over 2 mapper.
>> Så kommer rammen bare, hvor billedet skulle været, men der er ingen
>> billede, kun det lille røde kryds.
>>
>> Nismo.
>>
>
> Du skal også huske at gemme hvilken mappe du fandt billedet i, således du
> har alle de nødvendige oplysninger til at hente billedet.
>
> Mvh.
> Rune Christensen
>
>

Det har jeg også, men hvis jeg sætter mere end de to linier ind virker det
ikke.

Hele scriptet er her :



<?php
Header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
pre-check=0");
Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
Header("Pragma: no-cache");
Header("Content-Type: image/jpg");

$dirs[]="images/worthersee/worthersee_06/arles_gallery/images";
$dirs[]="images/worthersee/worthersee_05/arles_gallery/images";

srand((double)microtime()*1000000);
$i = 0;
foreach($dirs AS $dir) {
$dirHandle = opendir($dir); // Open the images folder
while(($im = readdir($dirHandle)))
{
if($im != ".." && $im != ".") // Don't read in the 2 folders ".." and "."
{
$image[$i] = $im; // Select an image
$i++;
}
}
closedir($dirHandle); // Close the folder
} // end foreach
$n = rand(0,(count($image)-1));

if(!readfile($dir."/".$image[$n])) // Read the image
readfile($dir."error/error.gif"); // If the script can't find the directory,
display this image
?>


Håber der er en / nogen der lige kan hjælpe.

På forhånd tak.
Nismo



Rune Christensen (20-06-2006)
Kommentar
Fra : Rune Christensen


Dato : 20-06-06 08:33

"Nismo" <ubrugligt@@hotmail.com> skrev i en meddelelse
news:CUvlg.778$rG4.58@news.get2net.dk...
>
>>
>> Du skal også huske at gemme hvilken mappe du fandt billedet i, således du
>> har alle de nødvendige oplysninger til at hente billedet.
>>
>> Mvh.
>> Rune Christensen
>>
>>
>
> Det har jeg også, men hvis jeg sætter mere end de to linier ind virker det
> ikke.

Hvilke to linier hentyder du til og hvad er mere end de to linier?

>
> Hele scriptet er her :
>
>
>
> <?php
> Header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
> pre-check=0");
> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
> Header("Pragma: no-cache");
> Header("Content-Type: image/jpg");
>
> $dirs[]="images/worthersee/worthersee_06/arles_gallery/images";
> $dirs[]="images/worthersee/worthersee_05/arles_gallery/images";
>
> srand((double)microtime()*1000000);
> $i = 0;
> foreach($dirs AS $dir) {
> $dirHandle = opendir($dir); // Open the images folder
> while(($im = readdir($dirHandle)))
> {
> if($im != ".." && $im != ".") // Don't read in the 2 folders ".." and "."
> {
> $image[$i] = $im; // Select an image

Du er nødt til at gemme $dir så det bliver
$image[$i] = $dir ."/". $im; // Save dir and file name of image

> $i++;
> }
> }
> closedir($dirHandle); // Close the folder
> } // end foreach
> $n = rand(0,(count($image)-1));
>
> if(!readfile($dir."/".$image[$n])) // Read the image

$dir er en ukendt variable på dette sted.
Se kommentar længere oppe
if (!readfile($image[$n])) // Read the image

> readfile($dir."error/error.gif"); // If the script can't find the
> directory,

Endnu et problem her. Du bør ikke bruge $dir her, da det er en ubekendt
variable og hvis der er fejl i $dir, så vil fejlbilledet heller ikke komme
frem.

> display this image
> ?>
>
>
> Håber der er en / nogen der lige kan hjælpe.
>
> På forhånd tak.
> Nismo
>

Mvh.
Rune



Nismo (20-06-2006)
Kommentar
Fra : Nismo


Dato : 20-06-06 12:17

Det er de 2 nederste linier i dette første stykke af scriptet.
Hvis jeg sætter en linie mere ind, altså en mappe mere, virker det ikke.


<?php
> Header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
> pre-check=0");
> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
> Header("Pragma: no-cache");
> Header("Content-Type: image/jpg");
>
> $dirs[]="images/worthersee/worthersee_06/arles_gallery/images";
> $dirs[]="images/worthersee/worthersee_05/arles_gallery/images";


Mvh
Nismo



"Rune Christensen" <rune.christensen@adslhome.dk> skrev i en meddelelse
news:4497a494$0$12599$edfadb0f@dread14.news.tele.dk...
> "Nismo" <ubrugligt@@hotmail.com> skrev i en meddelelse
> news:CUvlg.778$rG4.58@news.get2net.dk...
>>
>>>
>>> Du skal også huske at gemme hvilken mappe du fandt billedet i, således
>>> du har alle de nødvendige oplysninger til at hente billedet.
>>>
>>> Mvh.
>>> Rune Christensen
>>>
>>>
>>
>> Det har jeg også, men hvis jeg sætter mere end de to linier ind virker
>> det ikke.
>
> Hvilke to linier hentyder du til og hvad er mere end de to linier?
>
>>
>> Hele scriptet er her :
>>
>>
>>
>> <?php
>> Header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
>> pre-check=0");
>> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
>> Header("Pragma: no-cache");
>> Header("Content-Type: image/jpg");
>>
>> $dirs[]="images/worthersee/worthersee_06/arles_gallery/images";
>> $dirs[]="images/worthersee/worthersee_05/arles_gallery/images";
>>
>> srand((double)microtime()*1000000);
>> $i = 0;
>> foreach($dirs AS $dir) {
>> $dirHandle = opendir($dir); // Open the images folder
>> while(($im = readdir($dirHandle)))
>> {
>> if($im != ".." && $im != ".") // Don't read in the 2 folders ".." and "."
>> {
>> $image[$i] = $im; // Select an image
>
> Du er nødt til at gemme $dir så det bliver
> $image[$i] = $dir ."/". $im; // Save dir and file name of image
>
>> $i++;
>> }
>> }
>> closedir($dirHandle); // Close the folder
>> } // end foreach
>> $n = rand(0,(count($image)-1));
>>
>> if(!readfile($dir."/".$image[$n])) // Read the image
>
> $dir er en ukendt variable på dette sted.
> Se kommentar længere oppe
> if (!readfile($image[$n])) // Read the image
>
>> readfile($dir."error/error.gif"); // If the script can't find the
>> directory,
>
> Endnu et problem her. Du bør ikke bruge $dir her, da det er en ubekendt
> variable og hvis der er fejl i $dir, så vil fejlbilledet heller ikke komme
> frem.
>
>> display this image
>> ?>
>>
>>
>> Håber der er en / nogen der lige kan hjælpe.
>>
>> På forhånd tak.
>> Nismo
>>
>
> Mvh.
> Rune
>
>



Rune Christensen (20-06-2006)
Kommentar
Fra : Rune Christensen


Dato : 20-06-06 13:40

"Nismo" <ubrugligt@@hotmail.com> skrev i en meddelelse
news:2PQlg.1375$hp6.424@news.get2net.dk...
> Det er de 2 nederste linier i dette første stykke af scriptet.
> Hvis jeg sætter en linie mere ind, altså en mappe mere, virker det ikke.
>
>
> <?php
>> Header("Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
>> pre-check=0");
>> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
>> Header("Pragma: no-cache");
>> Header("Content-Type: image/jpg");
>>
>> $dirs[]="images/worthersee/worthersee_06/arles_gallery/images";
>> $dirs[]="images/worthersee/worthersee_05/arles_gallery/images";

Hvor mange billeder har du liggende, måske løber du tør for hukommelse eller
tid, men det vil kræve rigtig mange billeder.

>
>
> Mvh
> Nismo

Mvh.
Rune



Nismo (20-06-2006)
Kommentar
Fra : Nismo


Dato : 20-06-06 19:40

Der er over 1900 billeder ialt i de to mapper, og ca. 390 billeder i den
tredie mappe jeg gerne vil have tilføjet, og der kommer flere billeder til i
yderligere 2 mapper.

Så ja der er temmelig mange billeder.

Kan man gøre noget så det kan lade sig gøre ?

Nismo



"Rune Christensen" <rune.christensen@adslhome.dk> skrev i en meddelelse
news:4497ec92$0$12689$edfadb0f@dread14.news.tele.dk...
> "Nismo" <ubrugligt@@hotmail.com> skrev i en meddelelse
> news:2PQlg.1375$hp6.424@news.get2net.dk...
>> Det er de 2 nederste linier i dette første stykke af scriptet.
>> Hvis jeg sætter en linie mere ind, altså en mappe mere, virker det ikke.
>>
>>
>> <?php
>>> Header("Cache-Control: no-store, no-cache, must-revalidate,
>>> post-check=0, pre-check=0");
>>> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
>>> Header("Pragma: no-cache");
>>> Header("Content-Type: image/jpg");
>>>
>>> $dirs[]="images/worthersee/worthersee_06/arles_gallery/images";
>>> $dirs[]="images/worthersee/worthersee_05/arles_gallery/images";
>
> Hvor mange billeder har du liggende, måske løber du tør for hukommelse
> eller tid, men det vil kræve rigtig mange billeder.
>
>>
>>
>> Mvh
>> Nismo
>
> Mvh.
> Rune
>
>



Erlend Klakegg Bergh~ (20-06-2006)
Kommentar
Fra : Erlend Klakegg Bergh~


Dato : 20-06-06 19:54

Nismo skrev:
> Der er over 1900 billeder ialt i de to mapper, og ca. 390 billeder i den
> tredie mappe jeg gerne vil have tilføjet, og der kommer flere billeder til i
> yderligere 2 mapper.
>
> Så ja der er temmelig mange billeder.
>
> Kan man gøre noget så det kan lade sig gøre ?
>
> Nismo
>
>
>
> "Rune Christensen" <rune.christensen@adslhome.dk> skrev i en meddelelse
> news:4497ec92$0$12689$edfadb0f@dread14.news.tele.dk...
>> "Nismo" <ubrugligt@@hotmail.com> skrev i en meddelelse
>> news:2PQlg.1375$hp6.424@news.get2net.dk...
>>> Det er de 2 nederste linier i dette første stykke af scriptet.
>>> Hvis jeg sætter en linie mere ind, altså en mappe mere, virker det ikke.
>>>
>>>
>>> <?php
>>>> Header("Cache-Control: no-store, no-cache, must-revalidate,
>>>> post-check=0, pre-check=0");
>>>> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
>>>> Header("Pragma: no-cache");
>>>> Header("Content-Type: image/jpg");
>>>>
>>>> $dirs[]="images/worthersee/worthersee_06/arles_gallery/images";
>>>> $dirs[]="images/worthersee/worthersee_05/arles_gallery/images";
>> Hvor mange billeder har du liggende, måske løber du tør for hukommelse
>> eller tid, men det vil kræve rigtig mange billeder.

Man kunne lagt pekere til bildene inn i en database og gjort et
random-oppslag. Mener bestemt at det vil kunne bli mindre load på
serveren ved en slik løsning.


--

Vennlig hilsen

Erlend Klakegg Bergheim

Nismo (20-06-2006)
Kommentar
Fra : Nismo


Dato : 20-06-06 21:47

Lyder fint, men er det noget du eller en anden kan hjælpe med ? Da jeg ikke
er så stærk på dette område.


MVH
Nismo


"Erlend Klakegg Bergheim" <bergheim-remove@stud.ntnu.no> skrev i en
meddelelse news:e79g7a$v4c$1@orkan.itea.ntnu.no...
> Nismo skrev:
>> Der er over 1900 billeder ialt i de to mapper, og ca. 390 billeder i den
>> tredie mappe jeg gerne vil have tilføjet, og der kommer flere billeder
>> til i yderligere 2 mapper.
>>
>> Så ja der er temmelig mange billeder.
>>
>> Kan man gøre noget så det kan lade sig gøre ?
>>
>> Nismo
>>
>>
>>
>> "Rune Christensen" <rune.christensen@adslhome.dk> skrev i en meddelelse
>> news:4497ec92$0$12689$edfadb0f@dread14.news.tele.dk...
>>> "Nismo" <ubrugligt@@hotmail.com> skrev i en meddelelse
>>> news:2PQlg.1375$hp6.424@news.get2net.dk...
>>>> Det er de 2 nederste linier i dette første stykke af scriptet.
>>>> Hvis jeg sætter en linie mere ind, altså en mappe mere, virker det
>>>> ikke.
>>>>
>>>>
>>>> <?php
>>>>> Header("Cache-Control: no-store, no-cache, must-revalidate,
>>>>> post-check=0, pre-check=0");
>>>>> Header("Expires: Thu, 19 Nov 1981 08:52:00 GMT");
>>>>> Header("Pragma: no-cache");
>>>>> Header("Content-Type: image/jpg");
>>>>>
>>>>> $dirs[]="images/worthersee/worthersee_06/arles_gallery/images";
>>>>> $dirs[]="images/worthersee/worthersee_05/arles_gallery/images";
>>> Hvor mange billeder har du liggende, måske løber du tør for hukommelse
>>> eller tid, men det vil kræve rigtig mange billeder.
>
> Man kunne lagt pekere til bildene inn i en database og gjort et
> random-oppslag. Mener bestemt at det vil kunne bli mindre load på serveren
> ved en slik løsning.
>
>
> --
>
> Vennlig hilsen
>
> Erlend Klakegg Bergheim



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