Avatar billede tylorus Nybegynder
23. januar 2004 - 22:40 Der er 7 kommentarer og
1 løsning

Wap med PHP, Directory Listing, men fejl.

Hej alle som kigger her!
Jeg er nu gået igang med en wap side, efter jeg har fået en telefon som faktisk supportere denne protokol, også er det jo rart at man kan hente ting ned til mobilen fra sin hjemmeside.

Jeg har fået en wap side op og køre, men uden noget php.
Det jeg virkelig godt kunne tænke mig var, noget i stil med.

http://xgryde.dk/wap.wml
http://wap.kalemati.com

Hvor PHP genere siderne, viser nuværende filer & mapper i nuværende dir, størrelserne på filerne, et link til filerne.

Min hosting supportere php, og køre mysql, så det skulle jo ikke være noget problem.

Efter noget søgen på nettet fandt jeg denne her kode i php til at lave directory listing, men det går galt når jeg prøver at eksekvere det i et wml dokument.

<?php header("Content-type: text/vnd.wap.wml");?>
<?php echo "<?xml version=\"1.0\"?>\n";?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD wml 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">

<wml>
<card id="card1" title="Upload">

<?php
$maindir = "." ;
$mydir = opendir($maindir) ;
while($fn = readdir($mydir))
// Exclusions

if (($fn != ".") && ($fn !="..") && ($fn !="file.extension"))
{
echo "<br><a href='".urlencode($fn)."'>$fn</a>";
}
closedir($mydir);
?>

</card>
</wml>

Hvis nogle vil være søde at hjælpe mig lidt videre ville det være kanon.

Mhv. Tylorus.
PS: Og og, mange tak :)
Avatar billede Slettet bruger
23. januar 2004 - 23:52 #1
Jeg vil tro, du bare kan rette:

<?php echo "<?xml version=\"1.0\"?>\n";?>

til

<?php echo "<?xml version=\"1.0\"?" . ">\n";?>

Årsagen til problemet er, at ?> betyder, at php-blokken er afsluttet. Du fik nok også en fejlbesked, der kunne have gjort det lettere at gætte fejlen. Hvis du gjorde, kunne det en anden gang være en god ide at fortælle os om beskeden.
Avatar billede tylorus Nybegynder
25. januar 2004 - 11:19 #2
Hej!
Jeg beklager ikke at skrive fejlen den giver.

Her er hvad den siger, ligemeget om jeg bruger nuværende kode eller ændre det du foreslog.

XML parsing failed: mismatched tag (Line: 8, Character: 2)<?xml version="1.0"?> <!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD wml 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml"> <wml> <card id="card1" title="Upload"> <br><a href='test.php'>test.php</a><br><a href='upload.php'>upload.php</a><br><a href='Repton00.gif'>Repton00.gif</a><br><a href='RockBlas.gif'>RockBlas.gif</a><br><a href='Shepherd.gif'>Shepherd.gif</a><br><a href='Snake300.gif'>Snake300.gif</a> </card> </wml>
Avatar billede Slettet bruger
25. januar 2004 - 11:28 #3
Du skal huske, at du laver XML, og det indebærer, at ALLE tags skal have en slut-tag. Også <br>. Man kan slutte en tag på to forskellige måder. Den normale (for tags med indhold) er den, du bruger til din <a>-tag. Den anden er den, jeg vil anbefale til <br>.

Ret <br> til <br /> og den fejl burde forsvinde.
Avatar billede tylorus Nybegynder
25. januar 2004 - 12:04 #4
Det virker nu, kanon sandbox, du har lige reddet mig. Tak!
Avatar billede tylorus Nybegynder
25. januar 2004 - 12:11 #5
Forresten har givet dig de 60 points, hvis det altså betyder noget..
Avatar billede Slettet bruger
25. januar 2004 - 16:51 #6
Tak. Næste gang, så start med at byde 15 point. Så kan du altid gå op til 30 eller 60, hvis det viser sig at dit spørgsmål er mere svært, end du troede. 60 var lidt rigeligt.
Avatar billede tylorus Nybegynder
25. januar 2004 - 18:25 #7
ok
Avatar billede gawc Nybegynder
15. august 2004 - 03:01 #8
Har kigget på dette script... men kan ikke få det til at virke på min t630... siger bare
Your request fora service could not be fullfilled....

nogen ide ?
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