Das Beste auf Amazon

FebsDeluxe

New member
Hallo!

auf meiner neuen Seite [URL="http://www.das-beste-auf-amzn.de/alle/zufall"]das-beste-auf-amzn.de[/URL] findest du die besten und witzigsten Amazon-Produkte
auf einen Blick und somit vielleicht die ein oder andere Idee, was du anderen Menschen schenken kannst oder selbst noch haben möchtest.

Ich bitte euch darum, die Seite ausgiebig zu testen und mir über Fehler zu berichten und Kritik zu äußern.
Besucht alle Seiten, benutzt das Wertungs-System, achtet auf Darstellungsfehler und testet Zusatzfunktionen, wie z.B. die Pfeiltasten in der Einzelansicht!

head.png


Kritik und Lob sind immer gern gesehen!
 
Zuletzt bearbeitet von einem Moderator:
Also als erstes aufgefallen ist mir, dass das Design ziemlich altbacken ist.
Dann solltest du dringend für ein valides HTML sorgen! [Invalid] Markup Validation - 95 Errors, 6 warning(s)
Außerdem passt der im PHP-Header (ISO-8859-1) gesendete Header nicht zur Charset-Angabe im meta-Tag (UTF-8), was zu Problemen bei der Zeichenkodierung führen kann.
 
nein, das kann nicht nur sondern das wird früher oder später auf jeden Fall!
Ja, früher oder später schon. Und es wird auf jeden Fall das Laden der Seite verzögern, da der Browser nach meinem Kenntnisstand nach dem PHP-Header das Dokument kodiert, und es dann nochmal aufbauen muss, wenn er im meta-Tag auf eine andere Angabe stößt...

Ich würde es mit einem anderen DOCTYPE versuchen.
Der wurde aber korrekt erkannt:
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 
Der wurde aber korrekt erkannt:
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Ja, klar wurde er das. Wenn aber der Inhalt kein 4.01 ist darf man auch nicht den DOCTYPE davon verwenden, sonst prüft der Validator gegen den falschen.
Ich will damit sagen, wenn du auf die Zuckerdose Kaffe schreibst wundert sich natürlich jeder, warum da Zucker drin ist. Also tust du entweder Kaffee rein oder änderst die Beschriftung in Zucker.
Bei 95 Fehlern könnte die Beschriftung falsch sein. Vor allem Anfänger messen dem DOCTYPE vielleicht nicht unbedingt so eine große Bedeutung bei und kopieren sich munter das halbe Netz zusammen ohne die Bedeutung zu recherchieren.
 
Zuletzt bearbeitet:
Erstmal danke für die vielen antworten ;)

@kkapsner: Nein, es war nicht als Backlink gedacht :D ...ich will tatsächlich Hilfe haben ^^

Also, ich habe jetzt den META-Tag in ISO-8859-1 geändert ... (richtig?)
Beim DOCTYPE habe ich jetzt einfach "<!DOCTYPE HTML>" hingeschrieben ...

-> Nurnoch 78 Fehler :'D

aber aus irgendeinem Grund meckert der an den Metatags rum -.-'
 
Ja, klar wurde er das. Wenn aber der Inhalt kein 4.01 ist darf man auch nicht den DOCTYPE davon verwenden
Ach so meintest du das. Ich dachte, du hättest gemeint, dass ich bei der Validierung den falschen gewählt hab...

Also, ich habe jetzt den META-Tag in ISO-8859-1 geändert ... (richtig?)
Naja, also besser wäre es, überall UTF-8 zu verwenden. Aber immerhin ist er jetzt einheitlich...

Beim DOCTYPE habe ich jetzt einfach "<!DOCTYPE HTML>" hingeschrieben ...

-> Nurnoch 78 Fehler :'D

aber aus irgendeinem Grund meckert der an den Metatags rum -.-'
Die Meta-Tags, die du verwendest, sind keine korrekte erlaubte Key-Words: 4 The elements of HTML
Was du leicht beheben kannst: The center element is obsolete. Use CSS instead.
Stattdessen z.B. einen <div class="center"> verwenden und dann mit CSS die Ausrichtung steuern:
Code:
.center{
  text-align: center;
}

Ein Großteil der Fehler wird durch die "&"-Zeichen verursacht: & did not start a character reference. (& probably should have been escaped as &.)
 
Zuletzt bearbeitet:
Das Problem war, als ich den php header in UTF-8 geändert habe wurden plötzlich keine Sonderzeichen mehr angezeigt, daher bin ich bei ISO geblieben ...

das mit dem Center werde ich dann mal heute abend machen :D

Die &-Zeichen tauchen nur in links auf (für php) -> kann ich da trotzdem ein & drauf machen?
 
Die Benutzung von utf-8 ist ein Dreiteiler, der immer gern "übersehen" wird.

Teil 1: Angaben im Dokument selbst (META).
Teil 2: Kodierung des Dokumentes (das lässt sich nur im Editor checken und konvertieren; Deine Datei ist womöglich ein ANSI)
Teil 3: Datenbankverbindung und dortige Settings (Spalten etc.)

PHP liebt "utf-8 ohne BOM" (byte order mark).

Unter Umständen wirst Du aber sogar noch utf-8 als Content klassifizieren dürfen (per htaccess einfach lösbar) - aber dafür muss das keine ISO-Suppe sein, sondern stimmig. :D

Mischbetrieb ist die Hölle. Aber utf-8 kann Sonderzeichen - die Krux liegt also in einem der drei genannten Teile.

Und: & in Links stellen kein Problem dar.

Viel Erfolg.



EDIT: Was Deine Seite und die Validierung angeht, check doch mal
... das DIV im HEAD,
... die Rechtslage zum Auto-Connect mit Facebook (gilt auch für Twitter und G+; falls Du es verwendest oder andenkst),
... das ganze Inline-CSS,
... JavaScript-Anordnungen (gern auch mitten drin, hm?!),
... Dein .hover() könntest Du deutlich verkürzen (= schnellere Seite),
... 2x jQuery einbinden,

Und aus SEO-Sicht ein Reinfall (willst nicht gefunden werden?):
... Bevormundung User (= "_blank" als target)
... C2C miserabel
... falsche Title für Deine Links
... u. v. m.

Hier liegt ein PDF (Report) zu Deiner Seite. Damit wirst Du ein paar Schwachstellen ausfindig machen können ...
 
Zuletzt bearbeitet:
Wäre es denn sehr falsch einfach alles in ISO zu lassen? Weil ich damit bis jetzt keine Probleme hatte und alles richtig angezeigt wird ...

Danke für die vielen Tipps :)
 
Hm, ich täte an deiner Stelle zuerst mal die anderen Probleme beseitigen. Die Zeichenkodierung kannst du dann immer noch andern, wenn alles andere passt...
 
Ich würde auch sagen, dass Du erstmal das technische Problem auf der Seite behebst.

Eine Frage reiner Neugier habe ich noch: Warum horizontal zu bedienen? (das liegt daran, dass ich kürzlich eine Debatte über den Einfluss div. Software mit einer Veränderung der Designs im WWW hatte)
 
Ich wollte, dass die Seite sich von anderen Seiten ("Mainstream") ein wenig abhebt :D ...
abgesehen davon hat das so ganz gut mit den kacheln gepasst, ähnlich wie bei windows 8
 
Teil 1: Angaben im Dokument selbst (META).
Eigentlich hat die Zeichenkodierung im HTML überhaupt nichts verloren. Die gehört in den HTTP-Header.
Das <meta> wird da auch komplett ignoriert, wenn die Information im HTTP-Header vorhanden ist.

PHP liebt "utf-8 ohne BOM" (byte order mark).
PHP ist das komplett egal. Die Browser (v.A. der IE) mögen und brauchen keine BOM. Die Kodierung steht ja (idealerweise) im HTTP-Header.
 
PHP ist das komplett egal.
So ganz egal scheinbar nicht:
Zum Zeitpunkt des Erscheinens dieses Artikels ist es so, dass wenn man eine externe Datei mit PHP in eine Webseite einbindet und diese mit einem BOM beginnt, dadurch Leerzeilen entstehen können.

Das rührt daher, dass das BOM vor dem Einfügen in die Seite nicht entfernt wird und sich wie ein Zeichen verhält, das eine Textzeile belegt. Siehe dieses Beispiel. In dem Beispiel erscheint eine Leerzeile, die das BOM beinhaltet, über dem ersten eingebundenen Textteil.

Sie sollten sicherstellen, dass eingebundene Dateien kein BOM am Anfang haben.

Die Browser (v.A. der IE) mögen und brauchen keine BOM. Die Kodierung steht ja (idealerweise) im HTTP-Header.
Das scheint aber anders geregelt zu sein in HTML5:
Gemäß HTML5 wird von Browsern verlangt, dass sie das UTF-8-BOM erkennen und dazu verwenden, die Zeichencodierung der Seite zu ermitteln. Die aktuellen Versionen der gängigen Browser verfahren mit dem BOM bei UTF-8-codierten Seiten wie erwartet.

Beides Quelle: Das BOM (byte-order mark) in HTML
 
@mikdoe: Bei include() ist eine BOM natürlich blödsinnig, da die BOM dann mitten im HTML einfach eingefügt wird (wie gesagt, PHP ist die BOM komplett egal - soll heißen, die wird einfach als Bytefolge gesehen und nicht speziell behandelt. Somit wird sie, egal wo sie ist, an den Client rausgeschickt.). Was der Browser dann damit macht, ist hald die Frage.

Ich weiß nur, dass alte IEs die BOM nicht mögen und dann manchmal die DocType falsch oder gar nicht verstehen (ich glaube, da gab es ein Problem mit XHTML... weiß es aber nicht mehr genau - arbeite weder mit BOM noch mit XHTML). Dass HTML5 das spezifiziert und die aktuellen Browser das auch richtig machen, ist ja gut, aber wir wissen ja alle, dass nicht jeder mit einem aktuellen Browser unterwegs ist.

@SteelWheel: Finde nicht, dass das in deinem Posting steht... hab' das jedenfalls nicht rauslesen können. Aber gut, dass du es jetzt klargestellt hast.

setzt Du HTTP-Header je Seite mittels "header" aus PHP heraus?!
Nein. Nur da, wo ich was besonderes per PHP erzeuge/raussende. HTML ist bei mir global als "text/html; charset=UTF-8" definiert.
 
Zurück
Oben