HTML code not working on Ipad

OP #7359620

I am trying to create a webpage in my local network using an Esp8266. I found this article (https://www.instructables.com/Simple-Webserver-Using-Arduino-UNOMega-and-ESP8266/) on the internet and everything worked fine. I can view the webpage from my pc but not from an Ipad. Somehow the code works for Windows machines but not Ipads. Why? Thank you in advance.

Angehängte Dateien:
Gast

Da die Kommentare so oder so auf deutsch waren:

  • Ofensichtlich funktioniert Deine SW einigermassen. Einziger Punkt (aber das koennen meine fehlenden C++-Faehigkeiten sein):
1
String createWebPage(){
2
  String page = "<h1>Solar-Pumpe</h1><p>Temperatur oben: ";
3
  ...
4
  return page;

Wuerde das nicht ein Speicherleck produzieren? Aber meine C++-Faehigkeiten sind ausbaufaehig.

  • Zeige mal den Quellcode Deiner Webseite. Einigene Webbrowser sind etwas schwierig. Eine Standardwebseite sollte etwa so aussehen:
1
<!DOCTYPE html>
2
<html lang="de">
3
<head>
4
  <meta charset="UTF-8">
5
  <title>Eine Test Web-seite</title>
6
  <meta name="description" content="Inhaltverzeichnis">
7
</head>
8

9
<body>
10

11
</body>
12
</html>

Gruesse

Th.

Benjamin schrieb:

Ich habe es mit der Website extremst simple gehalten.

Das ist nicht simpel, das ist kaputt. Du sendest nur, was im Body-Element stehen sollte, und lässt den Rest weg. Einen HTTP-Reply-Header kann ich auch nirgendwo erkennen.

Ich finde es eher erstaunlich, dass es Browser gibt, die das akzeptieren.

Gast

Ja, und am PC (welcher Browser) funktionert es ja. Am IPad nicht.

Spendiere doch einfach mal:

1
<!DOCTYPE html>
2
<html lang="de">
3
<head>
4
  <meta charset="UTF-8">
5
  <title>Eine Test Web-seite</title>
6
  <meta name="description" content="Inhaltverzeichnis">
7
</head>
8

9
<body>
10
 <h1>Solar-Pumpe</h1>
11
 <p>Temperatur oben: 70&#x2103</p>
12
 <p>Temperatur unten: 10&#x2103</p>
13
 <p>Pumpe: an
14
 <br>100&#x25</p>
15
</body>
16
</html>

Kostet ja nix. Denn der Code ist so simple, dass es etwas simples sein muss (z.b. Flasche IP-Adresse, Firewall). Vielleicht gibt es hier auch einen Apple-Benutzer der diese Frage loesen kann.

Gruesse

Th.

Gast

Moin, -

w3-Validator meckert noch ein paar Semikoli nach dem Grad-Zeichen an:

1
 <p>Temperatur oben: 70&#x2103;</p>

ob das Entscheidend ist kann ich nicht sagen. Habe keine Apple-Produkte.

Gruesse

Th.

P.S.: Zeigt das Ding nichts an? Kann man irgendwie den Seitenquellkode anzeigen lassen?

OP

Jetzt funktioniert es. Tausend Dank an alle, die versucht haben, das Problem zu lösen. Die webpage die am Ende auch auf dem Ipad funktioniert hat war: "HTTP/1.0 200 OK\r\n" "Content-Type: text/html\r\n" "\r\n" "<h1>Solar-Pumpe</h1>" "<p>Temperatur oben: 70&#x2103</p>" "<p>Temperatur unten: 10&#x2103</p>" "<p>Pumpe: an" "<br>100&#x25</p>" also mit dem http-header aber ohne das komplizierte Web-design.

Nochmals Danke an alle

Benjamin

Benjamin schrieb:

also mit dem http-header aber ohne das komplizierte Web-design.

Also immer noch kaputt, so dass Du jederzeit damit rechnen musst, dass nach einem Browser-Update nichts mehr geht.

Du solltest mindestens noch "<html><head><title>Seitentitel</title></head><body>" davor- und "</body></html>" dahintersetzen, das wird Deinen Speicherplatz nicht sprengen.

Hmmm schrieb:

Benjamin schrieb:

also mit dem http-header aber ohne das komplizierte Web-design.

Also immer noch kaputt, so dass Du jederzeit damit rechnen musst, dass nach einem Browser-Update nichts mehr geht.

Auch wenn man das formal da haben sollte, da muss man sich keine Sorgen machen.

Wenn es nach mir ginge, würde im Web richtiges XML verwendet, da hat man simple, strikte und konsistente Regeln, an die man sich halten muss.

Aber wir haben stattdessen nun mal HTML. Der wilde Westen, wo jeder macht, was er will. Es gibt da Unmengen regeln, was wo drin sein dürfte, welche Tags self closing sind oder sein können, etc. Aber letztendlich bleibt HTML ein zusammengehackter Mist.

Nichteinmal die Browserhersteller oder die W3C kümmern sich mehr darum, was erlaubt wäre, und was nicht. Als Beispiel, eigene Attribute müssen nach HTML5 mit "data-" anfangen. Aber wenn man in JS WebComponents definiert, definiert man die Attributre ohne "data-" Prefix: https://developer.mozilla.org/en-US/docs/Web/Web_Components/Using_custom_elements#using_the_lifecycle_callbacks

Es gibt gewisse Regeln, an die man sich halten muss. z.B. welche Tags man schliessen muss, oder auch welche Tags in welchen Tags erlaubt sind, einfach weil der Browser anhand dessen den Inhalt interpretiert.

Aber das <html> Gerüst, dass kann einem egal sein. Eigentlich ist meistens so, wenn es läuft, läufts, und wird auch weiterhin laufen.

(Das mit den HTTP Headern darf man hingegen nicht falsch machen. Das ist nicht teil von HTML, und wenn man sich nicht an HTTP hält, geht es nicht!)

Es geht um eine lokale Datei, welche einfach im Brower geoffnet werden soll ? Ohne kommunikation ? Das muss gehen :

mypage.html als textfile schreiben & umnennen, kein doc, kein rtf.

<html> <head> </head> <body> <h3>wasauchimmer</h3> </body> </html>

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 3 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.