Avatar billede buxxy Praktikant
11. februar 2009 - 22:14 Der er 14 kommentarer og
1 løsning

Dagens billede - igen..

Hej Eksperter!

Jeg oprettede en debat her:

http://www.eksperten.dk/spm/863461

Og fik svar på mit spørgsmål/løst mit problem - troede jeg da.

Hvis man læser nederst i den debat jeg henviser til, ja så kan man læse om "problemet" jeg har/oplever.

Håber her er et klogt hovede der kan fortælle hvad der går galt.

Mvh.
Buxxy.
Avatar billede psychopixi Nybegynder
11. februar 2009 - 22:17 #1
Må jeg se filen "24hpic.php"? Eller som minimum linie 27?
Avatar billede psychopixi Nybegynder
11. februar 2009 - 22:26 #2
Jeg er overbevist om at fejlen er at der hvor funktionen ikke virker er i en subfolder, og referencen til mappen dermed er forkert.
Jeg kan dog ikke verificere dette før jeg har set koden.

Du kan dog prøve at sætte referencen til mappen som følger:
/home/www/dvdside.dk/images/bannere/

istedet for:
images/bannere
Avatar billede buxxy Praktikant
11. februar 2009 - 23:22 #3
Hej igen.

Det sidste forslag hjalp ikke - det tilføjede blot:
/home/www/dvdside.dk/images/bannere/ - foran stien.

Her følger koden fra /24hpic.php:

<?php
mt_srand(date("dmY"));
$images = glob("images/bannere/{*.jpg,*.gif,*.png}",GLOB_BRACE);
$number_of_images = count($images);
$chosen_image = mt_rand(0,$number_of_images-1);

echo "<center><a href='$images[$chosen_image]' title='Dagens billede' target='_blank' />
<img src='$images[$chosen_image]' alt='Dagens billede' border='0' /></a>
</center>";
?>
Avatar billede psychopixi Nybegynder
11. februar 2009 - 23:36 #4
Prøv at give mig outputtet af denne fra forum-siden:
<?php
echo getcwd();
?>
Avatar billede buxxy Praktikant
12. februar 2009 - 00:26 #5
Outputtet ser ud som flg.:

/home/www/dvdside.dk/forum
Avatar billede psychopixi Nybegynder
12. februar 2009 - 10:16 #6
Ok, i det tilfælde burde min forrige løsning nu virke.
Og husk at der skal både skråstreg før og efter, så koden bliver således:

<?php
mt_srand(date("dmY"));
$images = glob("/home/www/dvdside.dk/images/bannere/{*.jpg,*.gif,*.png}",GLOB_BRACE);
$number_of_images = count($images);
$chosen_image = mt_rand(0,$number_of_images-1);

echo "<center><a href='$images[$chosen_image]' title='Dagens billede' target='_blank' />
<img src='$images[$chosen_image]' alt='Dagens billede' border='0' /></a>
</center>";
?>

Hvis det stadig ikke virker kan du lave en lidt halvdårlig løsning, men som dog burde virke:

<?php
$workdir = getcwd();
if($workdir == "/home/www/dvdside.dk/forum")
    chdir("..");
mt_srand(date("dmY"));
$images = glob("images/{*.jpg,*.gif}",GLOB_BRACE);
$number_of_images = count($images);
$chosen_image = mt_rand(0,$number_of_images-1);
echo "<img src=\"$images[$chosen_image]\" alt=\"Dagens billede\"/>";
if($workdir == "/home/www/dvdside.dk/forum")
    chdir("forum");
?>
Avatar billede buxxy Praktikant
12. februar 2009 - 16:58 #7
Hej igen.

Det første forslag giver samme resultat som jeg skrev i indlæg #3.

Det sidste forslag giver flg. sti - med /forum/ indsat hvor det ikke skal være:

http://www.dvdside.dk/forum/images/87_test.gif

Desuden er det ikke kun /forum/ den ikke viser billedet korrekt.

Det er også alle andre undermapper på serveren - hvis jeg befinder mig i dem, via browseren, ja så vises billedet ikke.

Jeg ved dælme ikke om det er for kompliceret det her - om jeg måske bare skulle droppe det igen ?

Jeg synes umiddelbart det driller meget.

Mvh.
Buxxy.
Avatar billede psychopixi Nybegynder
12. februar 2009 - 23:52 #8
Hvis du har mod på det kan du give mig adgang til FTP-serveren, og jeg skal prøve at rette problemet.

Du kan enten skrive til mig på mail (dette er også min MSN, hvis du foretrækker dette): psychopixi AT gmail DOT com ...

Hvis du ikke ønsker at give mig adgang til FTP-serveren, kan jeg desværre ikke hjælpe mere herfra, beklager...
Avatar billede buxxy Praktikant
13. februar 2009 - 00:21 #9
Hej igen.

Mange tak for din hjælp - login oplysninger er hermed afsendt via email.
Avatar billede buxxy Praktikant
13. februar 2009 - 00:22 #10
NB: Der er flere sider på FTP - men det er den der hedder dvdside.dk :)  Hvis du skal bruge login til selve hjemmesiden må du lige sige til.
Avatar billede psychopixi Nybegynder
13. februar 2009 - 01:05 #11
Som jeg også har skrevet på din mail så har jeg nu løst dit problem. Løsningen blev som følger:

<?php
$dir = "images/bannere/";
$workdir = getcwd();
$subdomains = array("/home/www/dvdside.dk/forum");
foreach($subdomains as $subdomain){
    if($workdir == $subdomain)
        $dir = "../".$dir;
}
mt_srand(date("dmY"));
$images = glob("".$dir."{*.jpg,*.gif,*.png}",GLOB_BRACE);
$number_of_images = count($images);
$chosen_image = mt_rand(0,$number_of_images-1);

echo "<a href=\"$images[$chosen_image]\" title=\"Dagens billede\"/>";
echo "<img src=\"$images[$chosen_image]\" alt=\"Dagens billede\" border=\"0\"/>";
echo "</a>";
?>
Avatar billede buxxy Praktikant
13. februar 2009 - 01:50 #12
Det er bare pefekt!

Mange mange tak!

Længe leve Eksperten.dk (og alle dens eksperter)

:)
Avatar billede psychopixi Nybegynder
13. februar 2009 - 01:54 #13
Velbekomme:)
Glad for at du kunne bruge mn hjælp:D
Avatar billede buxxy Praktikant
14. februar 2009 - 00:51 #14
Hej igen, igen :)

Jeg er dælme ked af at sige det, men ligeså snart klokken blev midnat her, ja så skifter den igen imellem tilfældige billeder ved hver opdatering/genindlæsning af siden.

Er det noget du/I har et bud på, hvorfor den gør det ?

Jeg har tjekket om mt_srand muligvis var blevet slået fra igen af sig selv - men den er nu helt ok.

Mvh.
Buxxy.
Avatar billede psychopixi Nybegynder
14. februar 2009 - 11:33 #15
Det virker yderst besynderligt, da der kun kan komme ét forskelligt seed til random funktionen om dagen:/
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester