[Erledigt] Code des PayPal-Button ist nicht valide zu XHTML 1.0 Strict
am 03.08.2009 - 15:03 Uhr in
Ehrlich gesagt bin ich mit HTML nicht so bewandert. Vor einiger Zeit hatte ich einen PayPal-Button als Block-Element auf meiner Seite integriert. Doch seither ist der von Drupal generierte Code nicht mehr zu XHTML 1.0 Strict valide. Als Code-Vorlage nahm ich den von PayPal vorgenerierten Code:
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="0">
<input type="image" src="https://www.paypal.com/de_DE/DE/i/btn/btn_donateCC_LG.gif" border="0" name="submit" alt="Jetzt einfach, schnell und sicher online bezahlen – mit PayPal.">
<img alt="" border="0" src="https://www.paypal.com/de_DE/i/scr/pixel.gif" width="1" height="1">
</form>
Nach einigen Recherchen im Internet fand ich dann Hinweise darauf, dass für XHTML sämtliche Element-Bezeichnungen kleingeschrieben und in sich abgeschlossen werden müssen. Da ersteres der schon der Fall war, hab ich die Elemente zunächst mit />
abgeschlossen. Doch nachdem immer noch Probleme vorhanden waren, fand ich den Hinweis die Image- und Style-Elemente in einen separaten Block zu setzen und die Formatierungen CSS-Konform mit style="..."
einzubinden. Soweit es mir möglich war, hatte ich es probiert umzusetzen. Doch der Code ist immer noch nicht ganz XHTML-Konform. Vermutlich wegen dem Image in dem Input-Tag.
Allerdings bin ich mir auch nicht sicher wie ich das noch umformen kann. Wie gesagt: Mit HTML bin ich nicht so bewandert und ich hab mich nun schon durch viele Google-Seiten duchgekämpft. Jedoch offensichtlich noch nicht durch die richtigen und daher bin ich mit meinem Latein gerade am Ende. Weis zufällig jemand, wie ich den Button-Code valide zu XHTML 1.0 Strict bekomme?
Derzeitiger Stand ist im Moment folgender (wobei ich den value-Wert derzeit fürs Posting auf 0 gesetzt hatte - also nicht wundern ;)
<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<input type="hidden" name="cmd" value="_s-xclick" />
<input type="hidden" name="hosted_button_id" value="0" />
<input type="image" src="https://www.paypal.com/de_DE/DE/i/btn/btn_donateCC_LG.gif" style="border:none;" name="submit" alt="Jetzt einfach, schnell und sicher online bezahlen – mit PayPal." />
<div><img alt="" style="border:none; width:1px; height:1px;" src="https://www.paypal.com/de_DE/i/scr/pixel.gif" /></div>
</form>
- Anmelden oder Registrieren um Kommentare zu schreiben
Ich habs - teilweise
am 04.08.2009 - 06:58 Uhr
Ich habs - teilweise zumindest. Die ganzen
input
-Tags mussten ebenfalls in den separaten Block eingepackt werden. Nun funktioniert es:<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<div>
<input type="hidden" name="cmd" value="_s-xclick" />
<input type="hidden" name="hosted_button_id" value="0" />
<input type="image" src="https://www.paypal.com/de_DE/DE/i/btn/btn_donateCC_LG.gif" style="border:none;" name="submit" alt="Jetzt einfach, schnell und sicher online bezahlen – mit PayPal." />
<img alt="" style="border:none; width:1px; height:1px;" src="https://www.paypal.com/de_DE/i/scr/pixel.gif" />
</div>
</form>
Doch ein kleines Problem bleibt nun dennoch:
Ich verwende zusätzlich auf meiner Seite noch das Modul „Lightbox 2“. Dem von Drupal generierten Code wird nun zu den Bildern noch der Tag
rel="lightbox"
hinzugefügt, an dem die Validierung immer noch scheitert. Wie lässt sich dieses unterbinden, ohne dass ich gleich das ganze Modul deaktivieren müsste?<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
<div>
<input type="hidden" name="cmd" value="_s-xclick" />
<input type="hidden" name="hosted_button_id" value="0" />
<input type="image" rel="lightbox" src="https://www.paypal.com/de_DE/DE/i/btn/btn_donateCC_LG.gif" style="border:none;" name="submit" alt="Jetzt einfach, schnell und sicher online bezahlen – mit PayPal." />
<img alt="" style="border:none; width:1px; height:1px;" rel="lightbox" src="https://www.paypal.com/de_DE/i/scr/pixel.gif" />
</div>
</form>
Hat sich erledigt. Ich habe
am 03.08.2009 - 16:04 Uhr
Hat sich erledigt. Ich habe ein Eingabeformat angelegt, welches Lightbox2 nicht unterstützt und damit dann den Code in meinem PayPal-Block eingetragen. Damit wäre zwar mein Ausgangsproblem erledigt und der Thread wird auch so gekennzeichnet, doch das ursächliche Problem bleibt bestehen: Lightbox2 erzeugt XHTML unvaliden Code. Dazu werde ich mich vermutlich im Modul-Thread in Kürze nochmal melden. Danke fürs lesen. ;)