Am 11.04.2013 22:05, schrieb Heike Herzog-Kuhnke:

Hallo Heike,

antworten siehe unten.

ich wollte gerade die neue Seite im w3c checken und stolpere beim
Kontaktformular über powermail. Hier wird eine Zeile generiert, die das
w3c nicht mag:

Warning cannot generate system identifier for general entity X

An entity reference was found in the document, but there is no reference
by that name defined. Often this is caused by misspelling the reference
name, unencoded ampersands, or by leaving off the trailing semicolon
(;). The most common cause of this error is unencoded ampersands in URLs
as described by the WDG in "Ampersands in URLs".

Entity references start with an ampersand (&) and end with a semicolon
(;). If you want to use a literal ampersand in your document you must
encode it as "&" (even inside URLs!). Be careful to end entity
references with a semicolon or your entity reference may get interpreted
in connection with the following text. Also keep in mind that named
entity references are case-sensitive; &Aelig; and æ are different
characters.

If this error appears in some markup generated by PHP's session handling
code, this article has explanations and solutions to your problem.

Note that in most documents, errors related to entity references will
trigger up to 5 separate messages from the Validator. Usually these will
all disappear when the original problem is fixed.

Line 129, column 46: cannot generate system identifier for general
entity "tx_powermail_pi1"
     … id="kontakt"
action="index.php?id=11&tx_powermail_pi1%5BmailID%5D=18&cHash=4b…

Line 129, column 78: cannot generate system identifier for general
entity "cHash"

…id=11&tx_powermail_pi1%5BmailID%5D=18&cHash=4b950a217708811c0da9608e4863b398#c…

der W3C-Validator möchte, daß die &-Zeichen auch in der URL als & eingetragen werden. Verantwortlich dafür ist nicht powermail, sondern die Routinen zur Erzeugung von Links im TYPO3-Kern.

zusätzlich scheint der w3c Check auch die Attibute Angaben nicht zu mögen:
Line 129, column 207: there is no attribute "novalidate"
…="tx_powermail_pi1_form" enctype="multipart/form-data"
novalidate="novalidate">

Line 138, column 176: there is no attribute "required"
…_uid1" id="uid1" size="100" maxlength="100" tabindex="1"
required="required" />

Line 143, column 173: there is no attribute "pattern"
…" id="uid2" size="50" maxlength="50" tabindex="2"
pattern="^[a-zA-Z0-9\s]*$" />

Line 181, column 144: there is no attribute "maxlength"
…"uid7" rows="20" cols="100" maxlength="1000" tabindex="7"
required="required" …

Line 181, column 173: there is no attribute "required"
…="20" cols="100" maxlength="1000" tabindex="7" required="required"
 ></textarea>
-----------------------------

Das alles wird von Powermail eingetragen.
Hat einer von Euch eine Idee, was ich da machen könnte, um einen validen
Code zu bekommen?

Jo, powermail benötigt einige "Markierungen", um festzulegen, welche Felder denn nun Pflichtfelder sind und wie diese ausgewertet werden sollen. Würde man HTML5 verwenden, könnte man das valide über data-Attribute tun. Mit den älteren HTML-Standards könnten vielleicht dynamisch CSS-Klassen vergeben werden. Kannst das ja als Bug melden, aber ich bezweifle, daß die Entwickler das aufnehmen werden.

Die generierte Zeile 129 macht offensichtlich einen Heidenärger.
Hab ich den falschen Seitentyp angegeben?

Nö. Wirklich Ärger macht das auch nicht. Ist nur unschön im Validierungsergebnis. Du könntest natürlich auch die Variablen über RealURL umschreiben lassen, dann hätte sich das erledigt.

Gruß
Christian
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an