Eine WAP-Seite mit PHP...aber wie???

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Eine WAP-Seite mit PHP...aber wie???

    Also ich folgendes Problem...ich will mit einer wmlseite eine mysqldatenbank auslesen und einträge ausgeben.....dafür hab ich mir folgendes überlegt:

    PHP-Code:

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

    $day date("j"time());
    $month date("n"time());
    $year date("Y"time());
    $tomorrow=$day+1;
    $host="localhost";
    $user="user";
    $db="datenbankname";
    $pass="passwort";
    ?>

    <wml>

    <card id="home" title="PPH">
    <p>
    Herzlich Willkommen!<br/>
    <br/>
    <a href="#menu">weiter</a></p>
    </card>




    <card id="menu" title="Menü">
    <p>
    <br/>
    <a href="#heute">Events heute</a><br/>
    <a href="#morgen">Events morgen</a></p>
    </p>
    </card>



    <card id="heute" title="Events heute <?php echo "($day.$month.)"?> ">
    <p>
    <?php
    mysql_connect 
    ($host,$user,$pass);
    mysql_select_db($db);
    $ergebnis=mysql_query("SELECT * FROM veranstaltungen WHERE stamp >= \"$year-$month-$day 00:00:00\" AND stamp <= \"$year-$month-$day 23:59:59\" ORDER BY stamp");
    mysql_close();
    $eintraege=mysql_num_rows($ergebnis);
    if (
    $eintraege == '0'){
    echo 
    "Keine Einträge";
    } else {
    for (
    $x=0;$x<=$eintraege-1;$x++){
    $event=mysql_result($ergebnis,$x,"subject");
    echo
    "$event<br/>";
    }
    }
    ?>
    </p>

    </card>





    <card id="morgen" title="Events morgen <?php echo "($tomorrow.$month.)"?> ">
    <p>

    <?php
    mysql_connect 
    ($host,$user,$pass);
    mysql_select_db($db);
    $ergebnis=mysql_query("SELECT * FROM veranstaltungen WHERE stamp >= \"$year-$month-$tomorrow 00:00:00\" AND stamp <= \"$year-$month-$tomorrow 23:59:59\" ORDER BY stamp");
    mysql_close();
    $eintraege=mysql_num_rows($ergebnis);
    if (
    $eintraege == '0'){
    echo 
    "Keine Einträge";
    } else {
    for (
    $x=0;$x<=$eintraege-1;$x++){
    $event=mysql_result($ergebnis,$x,"subject");
    echo
    "$event<br/>";
    }
    }
    ?>
    </p>
    </card>


    </wml>
    diese seite ist auch unter http://mitglied.lycos.de/partypeople...uerversuch.php zu finden. wenn man sich nun einen wap browser irgendwo runterlädt....funzt die siete auch, aber wenn ich per waphandy drauf zugreifen will kommt immer folgende FehlerMeldung: "500: Web service problem: Please contact the service provider. 1019: Compile error."

    wenn ich aber ne *.wml datei aufm server teste gehts.......halt nur statisch....nicht dynamisch...ich brauch aber unbedingt die funktion, die die datenbank ausliest......hat da einer ahunng und kann mir helfen....ist vielleicht die endung php falsch, die die datei hat oder was ist los????

    thx HämZli

  • #2
    Re: Eine WAP-Seite mit PHP...aber wie???

    Original geschrieben von HämZli
    ...diese seite ist auch unter ... wenn man sich nun einen wap browser irgendwo runterlädt....funzt die siete auch, aber wenn ich per waphandy drauf zugreifen will kommt immer folgende FehlerMeldung: "500: Web service problem: Please contact the service provider. 1019: Compile error."

    wenn ich aber ne *.wml datei aufm server teste gehts.......halt nur statisch....nicht dynamisch...ich brauch aber unbedingt die funktion, die die datenbank ausliest......hat da einer ahunng und kann mir helfen....ist vielleicht die endung php falsch, die die datei hat oder was ist los????
    Hi HämZli,

    schönes Problem!

    Also ein normaler Webservice enthält folgende Komponenten:
    - Dienst (Speicherort(URL), PORT) =>
    - Bindung (Protokolle, Operationen) =>
    - Anschlusstype (Porttype, Aktion, Methodenauftruf) =>
    - Nachricht(Message, Inhalt) =>
    - Typen (enfach, komplex) =>

    Der Fehler "500: Web service problem: Please contact the service provider. 1019: Compile error" deutet darauf hin, dass dein Provider/Handy ein Echtzeit-Betriebssystem nutzt (z.B. VxWorks), das nicht über Port 80 geht.
    Daraus folgt, dass PHP-Interpreter nicht angestossen wird, um WML zu generieren, sondern zuerst WML geparst wird .

    WML ist vom Funktionsumfang bei der Ereignisbehandlung(EventHandling)etwas beschnitten.
    1) Deswegen würde ich unbedingt einer statische Startseite beginnen:
    PHP-Code:
     ...
      <
    wml>
          <
    card id="home" title="PPH">
            <
    p>
              
    Herzlich Willkommen!<br/>
              <
    br/>
            <
    anchor>
            
    weiter
            
    <go href="menü.php"
              <!-- + 
    z.Bmethod="post" bei Formulardaten -->
                ... 
              </
    go>
           </
    anchor>              
          </
    p>
        </
    card>
    </
    wml
    So triffst Du vielleicht den für den Webservice deines Providers reservierten Port mit den benötigten Headerdaten.

    2) Aber schon wieder PHP mit XML gemischt!.... Pfui!.... gibt Abzug in der B-Note

    cu

    Blaster
    Yuppi, endlich Elite ...

    Kommentar


    • #3
      also du meinst, ich soll eine z.b. index.wml seite machen die automatisch zur nächstenseite wechselt, die dann eine *.php datei ist.....???

      Und was meinst du mit "Provider/Handy"....meinst du damit D1, D2, etc...???

      Danke schomal für Deine Antwort, werd das mal testen....

      HämZli

      Kommentar


      • #4
        vielleicht bin ja auch ich nen bißchen banane, aber....

        hab gerad folgende seite hochgeladen: weiterleitung.wml mit folgendem inhalt

        [/PHP]

        <?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="home" title="PPH">
        <p>
        Herzlich Willkommen!<br/>
        <br/>
        <anchor>
        weiter
        <go href="menu.php">
        </go>
        </anchor>
        </p>
        </card>
        </wml>

        [/PHP]

        und ich bekomm als antwort: Die von Ihnen angeforderte Seite kann nicht angezeigt werden. Die datei hab ich nun auf zwei webservern getestet, die angeben, dass sie WAP unterstützen. das ist einmal GreatNet und zum andern Piranho. Muss ich das jetzt verstehen?

        Kommentar


        • #5
          was sollen eigentlich die crosspostings?

          Kommentar


          • #6
            was verstehst du unter crosspostings?

            Kommentar


            • #7
              Okay, kein orginal-crossposting, aber es reicht schon wenn du ein und das selbe problem mehrmals postets!

              Kommentar


              • #8
                Du solltest schauen, ob Du bei deinem Provider mit einer .htaccess-Eintrag (so in der Art von AddType application/x-httpd-php .wml) WML-Dateien PHP-Parsbar machen kannst.

                Kommentar

                Lädt...
                X