Avatar billede elskermad.dk Nybegynder
14. juli 2003 - 01:20 Der er 10 kommentarer og
1 løsning

autogeneret sitemap med php?

Hej Eksperter :D
Det må være muligt at få bakset et script sammen som automatisk laver et sitemap for mine brugere!?
Jeg har selv prøvet at bakse lidt sammen med opendir og readdir
Jeg kan sagtens få første del lavet, hvor den bare viser roden af siden, men dette er jo ikke nok, for alle mapperne skal jo gerne vise hvad de har under sig, og måske også diverse subdirs i mapperne!
Jeg håber virkelig at det kan laves, selvom jeg ikke kan finde noget ved hjælp af søgefunktionen på E!
Hvis flere points kan lokke nogen til at kode noget, som jeg kunne kigge på så hæves det gerne!
Avatar billede Slettet bruger
14. juli 2003 - 02:51 #1
Lær PHP eller betal dig fra dig.

Du skal nok ikke forvente mere her.
Avatar billede avminarm Juniormester
14. juli 2003 - 09:51 #2
prøv at kigge på regins's sitemap på http://www.reginscorner.dk/index.php/Scripts?Tr%E6struktur
Avatar billede elskermad.dk Nybegynder
14. juli 2003 - 11:29 #3
mercur8: du sad hvis og bøvlede med noget du heller ikke kunne igår nat efter sårn en kommentar?
Jeg kan godt finde ud af PHP, skrev jeg jo os... men har brug for lidt hjælp til at finde ud af hvorn det skal laves!
Avatar billede elskermad.dk Nybegynder
14. juli 2003 - 11:37 #4
avminarm, jeg skal meget gerne kunne få filnavnene i de forskellige mapper med under den givende mappe
Avatar billede gonza.dk Nybegynder
14. juli 2003 - 12:41 #5
hvis du har din opendir kode, så er det jo bare at lave en:

if ($dir == 'dir'){
kør script igen
}
Avatar billede gonza.dk Nybegynder
14. juli 2003 - 12:42 #6
http://dk2.php.net/manual/en/function.is-dir.php funktion til at se om det er en mappe eller ej.

post lige din kode, så vi kan se hvad du allerede har, så kikker jeg gerne på det.
Avatar billede elskermad.dk Nybegynder
14. juli 2003 - 14:11 #7
ja ved godt det med at scriptet skal køres igen, men hvordan ved man fx om den så skal køres 5 gange mere, eller kun 1?

man skal vel lave en function på en eller anden måde, også hvis det er en mappe man finder, så skal den køre functionen inden i sig selv, men kan man det?
Avatar billede elskermad.dk Nybegynder
14. juli 2003 - 14:13 #8
function showdir($showdir) {
   
    $bib = @opendir($showdir);

    //mapper
    while (false !== ($file = readdir($bib))) {
       
        if ($file != "." && $file != ".." && !ereg("^\..+", $file)) {
           
            if (is_file($file) !== TRUE) {                   
               
                $nydir = $showdir . $file . "/";
                echo"&nbsp;&nbsp;<a href='/mamster.dk/$file'>$file</a><br>";
               
                showdir($nydir);
               
            }
            else {
           
                echo"&nbsp;&nbsp;<a href='/mamster.dk/$file'>$file</a><br>";
                   
            }
           
        }
       
    }
   
}

showdir("../../mamster.dk/");

er det jeg har forsøgt med, men det fungere ikke :(
den kan ses her http://www.myserver.lir.dk/mamster.dk/information/sitemap.php og hvis I kigger derind, så virker det tildels godt nok, den "udforsker" mappen image, men så går den ikke videre bagefter...?
Avatar billede elskermad.dk Nybegynder
14. juli 2003 - 14:14 #9
if (is_file($file) !== TRUE) {  <- ehmn jeg kan ikke få is_dir til at virke så det blev lidt alternativt ;D
Avatar billede elskermad.dk Nybegynder
14. juli 2003 - 15:58 #10
nu har jeg rettet lidt i min kode, nu ser den således ud:

function showdir($showdir) {
   
    echo"
    <div class='div_sitemap'>
    ";
   
    $bib = @opendir($showdir);

    //mapper
    while (false !== ($file = readdir($bib))) {
       
        if ($file != "." && $file != ".." && !ereg("^\..+", $file)) {
                       
            if (is_dir($file) !== FALSE) {
               
                echo"<div class='div_sitemap'><a href='/mamster.dk/$file'>$file</a></div>";       
               
                $nydir = $showdir . $file . "/";
               
                showdir($nydir);
                                   
            }
           
        }
       
    }
   
    //filer
    while (false !== ($file = readdir($bib))) {
       
        if ($file != "." && $file != ".." && !ereg("^\..+", $file)) {
           
            if (is_dir($file) !== TRUE) {                   
               
                echo"<div class='div_sitemap'><a href='/mamster.dk/$file'>$file</a></div>";       
               
            }
           
        }
       
    }
   
    echo"
    </div>
    ";
   
    closedir($bib);
   
}

showdir("../../mamster.dk/");

den viser ingen fejl længere, men den viser heller ikke noget :(
Avatar billede elskermad.dk Nybegynder
14. juli 2003 - 16:02 #11
jeg tillader mig at lukke her og oprette et nyt da spørgsmålet ikke længere går ud på at finde ud af hvordan det skal laves, men hvorfor det jeg har lavet ikke virker længere!
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