WML - Bilder (jpg) einbinden?
sunny
- xml
Guten Morgen,
momentan muss ich ein paar Wap-Seiten erstellen, es sollte ja mittlerweile möglich sein in WML auch Bilder - jpgs, gifs - einzubinden, nicht nur im WBMP-Format.
Leider kann ich dazu aber im Netz nicht allzu viel Information finden. Selbst die WML-Spezifikation konnte ich nur in einer Version aus 2001 auftreiben ... Möglich sein muss es aber irgendwie, gibt ja genug Wap-Seiten die Bilder beinhalten.
Ein einfaches <img src="test.jpg"/> funktioniert jedenfalls nicht. Hab es schon mit unterschiedlichen jpgs getestet, es kommt immer zu einem "Serverfehler". Je nach Handy mehr oder weniger nichtssagende Fehlermeldungen.
Muss ich hier eventuell am Server noch etwas einrichten/umstellen? Es handelt sich um einen Apache/2.0.53.
Meine WML-Seiten sind im Moment statisch, das heißt kein PHP oÄ. Irgendwo hab ich auch einmal etwas von <input type="image"/> gelesen, allerdings funktioniert das auch nicht ...
Hat hier vielleicht jemand Erfahrung damit und kann mir weiterhelfen?
Liebe Grüße
sunny
So, habe jetzt mal herausgefunden dass das erst am Wap 2.0 möglich ist, und Wap 2.0 heißt dass das Dokument in XHTMLMP geschrieben werden muss. Werde da jetzt mal weitertesten ...
Lg,
sunny
Mhh, also irgendwie krieg ich da jetzt gar nichts hin.
Das Problem ist der Content-Typ, ich schaff es irgendwie nicht meine xhtml-Datei so hinzubekommen dass sie vom Handy-Browser gelesen werden kann.
Im Moment sieht die Datei so aus:
<?php
header("Content-Type: application/vnd.wap.xhtml+xml");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false);
header("Pragma: no-cache");
echo("<?xmlversion="1.0"?>\n");
echo("<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">\n");
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Test</title>
</head>
<body>
<p>Hello world!</p>
</body>
</html>
Hat jemand eine Ahnung was ich hier machen muss damit die Handies damit etwas anfangen können? Oder können die meisten Handies noch gar kein Wap 2.0?
Tja, als ich das jetzt geschrieben hab hab ich mal nachgeschaut ob meine Testhandies Wap 2.0 können, nein, Wap 1.2. Ok, daher also der Fehler.
Aber ich kann trotzdem mit meinem Handy Wap-Seiten "browsen" die Bilder beinhalten und zwar keine schwarz-weiß-Bilder (also keine WBMPs). Wie kann denn das nur gehen ... ?
Vielleicht liest das hier ja doch noch jemand der eine Ahnung davon hat ... schön langsam komm ich da echt nicht mehr weiter ...
Liebe Grüße
sunny
Hallo,
Lese dir vor allem erst den Artikel: http://aktuell.de.selfhtml.org/artikel/css/mobile-endgeraete/index.htm durch.
Im Moment sieht die Datei so aus:
<?php
header("Content-Type: application/vnd.wap.xhtml+xml");
Erst WAP 2.0 fähige Geräte zeigen auch XHTML- und nicht nur WML-Seiten an.
Außerdem: du könntest erstmal dein WML/XHTML validerien, um zu sehen, ob du wirklich alles richtig gemacht hast: http://validator.de.selfhtml.org/
Hat jemand eine Ahnung was ich hier machen muss damit die Handies damit etwas anfangen können? Oder können die meisten Handies noch gar kein Wap 2.0?
Tja, als ich das jetzt geschrieben hab hab ich mal nachgeschaut ob meine Testhandies Wap 2.0 können, nein, Wap 1.2. Ok, daher also der Fehler.
http://de.wikipedia.org/wiki/Wireless_Application_Protocol#WAP_2.0 --> letzter Absatz.
Displaying an Image in XHTML MP: http://www.developershome.com/wap/xhtmlmp/xhtml_mp_tutorial.asp?page=images
Aber ich kann trotzdem mit meinem Handy Wap-Seiten "browsen" die Bilder beinhalten und zwar keine schwarz-weiß-Bilder (also keine WBMPs). Wie kann denn das nur gehen ... ?
Dann hast du entweder was falsch gemacht, oder die Bilder sind SVG-Bilder.
Grüße
Thomas
Hallo Thomas!
Vielen Dank erstmal für Deine Antwort!
Leider konnte ich erst jetzt wieder ins Forum schauen.
Ich bin mit meinen Testseiten auch nach dem von Dir verlinkten Tutorial vorgegangen. Dort gibt es ebenfalls eine Anleitung zu den
MIME-Typen ... allerdings laut Validator (danke für den Link) darf man das so gar nicht!?
Dass die Hersteller mit Wap 2.0 etc. etwas schummeln hatte ich auch schon gelesen, in meinem Fall geht es aber ohnehin nur darum ob die Handies eben Bilder darstellen können oder nicht. Und meine Testgeräte die ich hier zur Verfügung habe können es anscheinend nicht, egal was ich anstelle. Und laut Technischer Daten sind es auch Wap 1.0 bzw. Wap 1.2 Geräte.
Es scheint definitiv nicht möglich zu sein für solche Handsets jpg's im Browser darzustellen.
Ich werde jetzt versuchen es so zu machen (wie auch in der von Dir verlinkten Doku vorgeschlagen) dass ich zuerst versuche herauszufinden was das Handy kann (per PHP) und dann falls XHTML-Unterstützung vorliegt eben ein XHTML-Dokument ausliefere. Falls nicht, gibts nichts ... jedenfalls keine Bilder.
Soweit ich mich bis jetzt informieren konnte habe ich eigentlich auch gar keine Alternative ...
Jetzt muss ich nur noch sehen dass ich irgendwo einen XHTML-fähigen Wap Browser oder ein XHTML-fähiges Testhandy herbekommen ...
Lg
sunny
Hallo,
Jetzt muss ich nur noch sehen dass ich irgendwo einen XHTML-fähigen Wap Browser oder ein XHTML-fähiges Testhandy herbekommen ...
Vielleicht hilft dir einer von http://www.google.de/search?hl=de&q=WAP+emulator&btnG=Google-Suche&meta=
Sonst könntest du noch mit SVG für die Bilder versuchen, aber ich bin nicht sicher ob sich der Aufwand lohnt bzw. ich weiss nicht wie weit SVG wiederum unterstützt wird.
Grüße
Thomas
Hallo nochmal,
Vielleicht hilft dir einer von http://www.google.de/search?hl=de&q=WAP+emulator&btnG=Google-Suche&meta=
Ja, das habe ich natürlich schon versucht, aber recht weit bin ich da nicht gekommen da die meisten Browser auch nur Wap 1.x unterstützen oder gar nicht mehr gedownloaded werden können. Schlage mich einstweilen mit einem Emulator für Wap 1.2 und meinen Testhandies rum.
Aber jedenfalls: Die kleine Abfrage für den jeweiligen MIME-Typen habe ich eingebaut und siehe da, es funktioniert (interessanterweise plötzlich sogar auf meinem Wap 1.2 Handy (auf dem Wap 1.0 Handy kommt der Alt-Text)!
<?php
$acceptHeader = $_SERVER["HTTP_ACCEPT"];
$sHeaderContentType = "";
if ((strpos($acceptHeader,"application/vnd.wap.xhtml+xml")) != false) {
$sHeaderContentType = "Content-Type: application/vnd.wap.xhtml+xml";
}
else if ((strpos($acceptHeader,"application/xhtml+xml")) != false) {
$sHeaderContentType = "Content-Type: application/xhtml+xml";
}
else {
$sHeaderContentType = "Content-Type: text/html";
}
header($sHeaderContentType);
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Cache-Control: private",false);
header("Pragma: no-cache");
echo("<?xml version="1.0"?>\n");
echo("<!DOCTYPE html PUBLIC "-//WAPFORUM//DTD XHTML Mobile 1.0//EN" "http://www.wapforum.org/DTD/xhtml-mobile10.dtd">\n");
?>
So sieht das jetzt im Moment aus ... Leider habe ich im Moment nur wenige Handies/Emus zur Verfügung sodass ich nicht wirklich ausgiebig testen kann, aber grundsätzlich scheint der Weg zu funktionieren. Das werde ich aber noch nachholen (müssen).
Nun habe ich aber noch eine weitere Frage, gibt es in XHTML MP eine Möglichkeit einen "zurück"-Link einzubauen? Ein JS history:back; wird kaum funktionieren und einen Ersatz für </prev> konnte ich auch nicht finden in den den Docs und Spezs.
Ich weiß natürlich dass der Wap-Browser ohnehin einen Back-Funktion besitzt, allerdings bräuchte ich diese Links trotzdem (zusätzlich).
Gibt es da etwas? Ansonsten müsste ich jeweils manuell auf die Seite welche auf die aktuelle Seite verlinkt zurücklinken, das Problem dabei wäre allerdings, dass dann der Cursor jeweils wieder am Seitenanfang steht und der erste Link markiert wird, der User aber einen Link ganz weit unten auf der Seite geklickt hat ... das wäre dann wohl teilweise ziemlich verwirrend.
Liebe Grüße
sunny