webForumDet fria alternativet

dynamisk wml

3 svar · 237 visningar · startad av Leon

LeonMedlem sedan nov. 200227 inlägg
#1

det fungerar inte att skapa wml dynamiskt... vet inte varför?!
nån som har några tips..

det jag vill göra är lista upp midi filer i en katalog så att jag kan tanka hem dom till mobben..

det går bra om man tex går in via gelon.net och testar men mobben säger nej...

<?php echo "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?".">"; ?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN"
"http://www.wapforum.org/DTD/wml_1.1.xml">

<?
// Konfiguration
$searchPath = "/Volumes/wwwRoot/wap/songs";
$urlBase = "http://****.****.****.****/wap/songs";

// Öppna alla filer i sökkatalogen en och en och sök i dessa
$pathHandle = dir($searchPath);

// Iterera igenom katalogen
while($entry = $pathHandle->read()){
if(($entry != ".DAV") && ($entry != ".") && ($entry != "..")){
// Plocka ut filnamn efter filnamn och lägg på katalognamnet
$result .= "<a href='$urlBase/$entry'>$entry</a></br>";
}
}
$pathHandle->close();
?>

<wml>
<card>
--------LÅTAR--------<br/><br/>
<? echo($result); ?>
<p><a href="index.wml">Tillbaka</a></p>
</card>
</wml>

SPiNMedlem sedan mars 20007 896 inlägg
#2

Du måste sätta rätt MIME-typ på ditt WML-dokument.

Exempel:

<?php
header( "Content-Type: applicaction/wap.vnd.wml" );

echo "<" . "?xml version=\"1.0\" encoding=\"ISO-8859-1\"?" . ">";
?>
<wml>
<card>
<p>
Utskrift via WML
</p>
<?php
echo "<p>Utskrift via PHP</p>"
?>
</card>
</wml>
LeonMedlem sedan nov. 200227 inlägg
#3

så här blev den slutgiltiga koden som fungerar

<?php
header("Content-type: text/vnd.wap.wml");
echo "<?xml version=\"1.0\"?>\n";
echo "<!DOCTYPE wml PUBLIC \"-//WAPFORUM//DTD WML 1.1//EN\""
. " \"http://www.wapforum.org/DTD/wml_1.1.xml\\"\>\\n";
?>
<wml>
<card title="Låtar">
<?
$searchPath = "/Volumes/wwwRoot/wap/songs";
$urlBase = "http://www.wap.com/wap/songs";
$pathHandle = dir($searchPath);
while($entry = $pathHandle->read()){
if(($entry != ".DAV") && ($entry != ".") && ($entry != "..")){
$result .= "<a href='$urlBase/$entry'>$entry</a><br/>\n";
}
}
$pathHandle->close();
?>
<p>
<? echo($result); ?>
</p>
<p><a href="index.wml">Tillbaka</a></p>
</card>
</wml>

länka till song.php från första sidan.. så fungerar det alldeles utmärkt..
anledningen till att jag har lagt till en if statement är att jag har en apache server med webdav och den skapar en fil som heter .DAV och sen har vi ju . .. som ochså finns i katalogen..

om nån vet hur man skriver för att kolla om första tecknet i $entry är en . så skulle det vara snällt att berätta hur man kan kolla detta

SPiNMedlem sedan mars 20007 896 inlägg
#4

om nån vet hur man skriver för att kolla om första tecknet i $entry är en . så skulle det vara snällt att berätta hur man kan kolla detta

if( $entry[ 0 ] == "." )
     echo "Det var en punkt!";
130 ms totalt · 3 externa anrop · v20260731065814-full.3c108eb9
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)