Seite 1 von 1

Probleme mit checkout2 und Internet Explorer

Verfasst: 29.01.2014, 23:58
von joeBerlin
Hallo,

ich habe ein Problem mir der checkout2 Datei und dem Internet Explorer. Wenn der Kunde bei uns mit dem Internet Explorer eine Bestellung aufgeben möchte, scheitert er bei der Auswahl der Versand- und Zahlungsarten (checkout2 Datei).

Das Problem:

Wählt der Kunde jetzt die Zahlungsart Paypal aus, verschwindet das Kästchen PayPal komplett und es bleibt nur noch das Kästchen Vorkasse stehen.
Außerdem fehlen die Button "Zurück zur Kasse" und "Weiter" und das komlette Menü auf der rechten Seite.
Somit bricht der Kunde an dieser Stelle seine Bestellung ab und ist für uns verloren!

Geht der Kunde über den Firefox, Chrome oder Safari auf unsere Seite, besteht dieses Problem nicht und er kann die Bestellung ganz normal abschließen.

Siehe Screenshot:
checkout2-shot.jpg
Unser System:

Weaver II Theme
WordPress 3.5.1.
wpShopGermany Version 3.2.5

Wo könnte das Problem liegen und wie bekomme ich es hin, das meine Kunden auch mit dem Internet Explorer bei mir bestellen können?
Vorab vielen Dank für Eure Hilfe und viele Grüße aus Berlin,
Joachim

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 30.01.2014, 09:00
von maennchen1.de
Hallo!
Der IE ist sehr penibel wenn z.B. ein HTML-Tag nicht geschlossen wurde. Überprüfe den Quellcode nach HTML-Fehlern und ich denke das Problem dürfte dann behoben sein.

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 30.01.2014, 11:42
von joeBerlin
Hallo,

vielen Dank für Deine Antwort. Das Problem taucht auch bei deaktivierten user_views auf, also auch mit eurer Original checkout2 Datei.
Wäre es möglich, das du einmal über die Datei rüber schaust? Du erkennst den Fehler bestimmt schneller als ich :oops:

Hier meine angepasste checkout2 Datei:

Code: Alles auswählen

<?php

	/**
	 * Template für die Eingabe der Zahlungs- und Versandinformationen
	 */

	//wpsg_debug($this->view['basket']['checkout']['comment']);
	//die();
?>
<strong><span style="font-size: 16px;">Versand- und Zahlungsarten</strong>
<div class="wpsg_checkout2"><br>


	<?php echo $this->writeFrontendMessage(); ?>

	<form method="post" action="<?php echo $this->getURL(wpsg_ShopController::URL_BASKET); ?>">

		<div class="wpsg_shipping">

			<strong><?php foreach ($this->view['arShipping'] as $s) { ?>
			<div class="shipping shippay">
				<div class="checkbox">
					<?php if (sizeof($this->view['arShipping']) == 1) { ?>
					<input type="radio" checked="checked" name="wpsg[checkout][shipping]" id="shipping_<?php echo $s['id']; ?>" value="<?php echo $s['id']; ?>" />
					<?php } else { ?>
					<input <?php echo (($this->view['basket']['checkout']['shipping'] == $s['id'])?'checked="checked"':''); ?> onclick="wpsg_showShippingHint();" type="radio" value="<?php echo $s['id']; ?>" name="wpsg[checkout][shipping]" id="shipping_<?php echo $s['id']; ?>" />
					<?php } ?>
				</div>
				<div class="info">
					<label for="shipping_<?php echo $s['id']; ?>">
						<?php if (wpsg_isSizedString($s['logo'])) { ?>
						<img class="wpsg_payship_logo" src="<?php echo $s['logo']; ?>" alt="<?php echo $s['name']; ?>" />
						<?php } else { ?>
						<span class="wpsg_payship_name"><?php echo __($s['name'], 'wpsg'); ?></span>
						<?php } ?>
					</label>
					<?php if ((isset($s['hint']) && trim($s['hint']) != '') || $s['price'] > 0) { ?>
					<span id="shipping_<?php echo $s['id']; ?>_hint" style="display:none;" class="shipping_hint shippay_hint">
						<?php if ($s['price'] > 0) { ?>
						<h2><?php echo __('Versandkosten', 'wpsg'); ?>: <?php echo wpsg_ff($s['price'], $this->get_option('wpsg_currency')); ?><br />
						<?php } ?>
						<?php echo __($s['hint'], 'wpsg'); ?>
					</span>
					<?php } ?>
				</div>
				<div class="wpsg_clear"></div>
			</div>
			<?php } ?>

			<script type="text/javascript">

				function wpsg_showShippingHint()
				{

					if (jQuery('#wpsg_shipping_one').length > 0) return;

					jQuery('.shipping_hint').hide();
					jQuery('#shipping_' + jQuery('.wpsg_shipping input[name="wpsg[checkout][shipping]"]:checked').val() + '_hint').show();

				}

				jQuery(document).ready(function() { wpsg_showShippingHint(); } );

			</script>

		</div>

		<div class="wpsg_payment">

			<?php foreach ($this->view['arPayment'] as $p) { ?>
			<div class="shippay payment">
				<div class="checkbox">
					<?php if (sizeof($this->view['arPayment']) == 1) { ?>
					<input type="radio" checked="checked" value="<?php echo $p['id']; ?>" name="wpsg[checkout][payment]" id="payment_<?php echo $p['id']; ?>" />
					<?php } else { ?>
					<input <?php echo (($this->view['basket']['checkout']['payment'] == $p['id'])?'checked="checked"':''); ?> onclick="wpsg_showPaymentHint();" type="radio" value="<?php echo $p['id']; ?>" name="wpsg[checkout][payment]" id="payment_<?php echo $p['id']; ?>" />
					<?php } ?>
				</div>
				<div class="info">
					<label for="payment_<?php echo $p['id']; ?>">
						<?php if (wpsg_isSizedString($p['logo'])) { ?>
						<img class="wpsg_payship_logo" src="<?php echo $p['logo']; ?>" alt="<?php echo $p['name']; ?>" />
						<?php } else { ?>
						<span class="wpsg_payship_name"><?php echo __($p['name'], 'wpsg'); ?></span>
						<?php } ?>
					</label>
					<?php if ((isset($p['hint']) && trim($p['hint']) != '') || $p['price'] > 0) { ?>
					<h1><span id="payment_<?php echo $p['id']; ?>_hint" style="display:none;" class="payment_hint shippay_hint">
						<?php if ($p['price'] > 0) { ?>
						<?php echo __('Gebühr', 'wpsg'); ?>: <?php echo wpsg_ff($p['price'], $this->get_option('wpsg_currency')); ?><br />
						<?php } ?>
						<?php echo __($p['hint'], 'wpsg'); ?>
					</span>
					<?php } ?>
				</div>
				<div class="wpsg_clear"></div>
			</div>
			<?php } ?></strong>

			<script type="text/javascript">

				function wpsg_showPaymentHint()
				{

					if (jQuery('#wpsg_payment_one').length > 0) return;

					jQuery('.payment_hint').hide();
					jQuery('#payment_' + jQuery('.wpsg_payment input[name="wpsg[checkout][payment]"]:checked').val() + '_hint').show();

				}

				jQuery(document).ready(function() { wpsg_showPaymentHint(); } );

			</script>

		</div>

		<div class="wpsg_clear"></div>

		<br />

		<?php $this->callMods('checkout2_inner_prebutton', array(&$this->view)); ?>

		<input type="submit" class="wpsg_button wpsg_checkoutbutton" value="<?php echo __('Zurück zur Kasse', 'wpsg'); ?>" name="wpsg_redirect_checkout" />
		<input type="submit" class="wpsg_button wpsg_overviewbutton" value="<?php echo __('Weiter', 'wpsg'); ?>" name="wpsg_checkout2" />

		<div class="wpsg_clear"></div>

	</form>

</div>
ADMIN: Bitte nutze die Forums-Formatierungsfunktionen um deinen Thread übersichtlich zu halten. Danke!

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 30.01.2014, 13:33
von maennchen1.de
Wenn der Fehler in deinem Theme ist, wirst du ihn nicht in den PHTML-Dateien finden. Du musst zunächst den generierten HTML-Quellcode untersuchen. Nutze dazu z.B. den Markup Validation Service.

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 30.01.2014, 13:52
von joeBerlin
Hallo,

als Fehler werden mir 13x fehlende ">" angezeigt, die aber im Quelltext da sind!
Also komme ich da leider nicht weiter!
Was kann ich noch tun? :(
Bitte um Hilfe!

Gruß,
Joachim

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 30.01.2014, 13:58
von maennchen1.de
Die 13 Fehler zunächst beseitigen. Der Validator arbeitet sehr gut. Die Fehlerausgabe ist nicht immer die beste.
Es kann auch bedeuten, dass 13 schließende Tags fehlen. Hier musst du evtl etwas spielen.

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 30.01.2014, 14:03
von joeBerlin
Die 13 angezeigten Fehler sind aber im Quelltext nicht vorhanden, dort stimmt alles!
Ich verzweifel langsam, weiss einfach nicht weiter!

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 30.01.2014, 15:23
von joeBerlin
Hilfe,

ich komme ohne Eure Hilfe nicht weiter! Ich möchte gerne das Problem in Eure fähigen Hände geben, damit Ihr eine Lösung findet.
Mir geht mit jedem Tag Umsatz verloren, weil ich die Kunden mit dem Internet Explorer verliere, da Sie ihre Bestellung auf der "checkout2" Seite nicht abschließen können! Außerdem sieht das natürlich auch nicht gerade professionell aus und der Kunde ärgert sich, bzw. wird er auch nicht ein zweites Mal in meinen Shop kommen!
Deswegen hoffe ich sehr auf Eure Hilfe! Selbstverständlich werde ich Euch die anfallende Arbeit bezahlen, bitte macht mir ein Angebot!

Gruß aus Berlin,
Joachim

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 31.01.2014, 08:07
von maennchen1.de
joeBerlin hat geschrieben:Deswegen hoffe ich sehr auf Eure Hilfe! Selbstverständlich werde ich Euch die anfallende Arbeit bezahlen, bitte macht mir ein Angebot!
Klar bekommen wir das hin. Erstelle bitte ein Ticket unter: http://shop.maennchen1.de/kontaktformular/
Beziehe dich dort bitte auf diesen Thread hier (URL bitte hinzufügen).

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 31.01.2014, 12:27
von joeBerlin
Hallo,

das Ticket habe ich gerade erstellt, freue mich auf eine schnelle Hilfe von Euch.

Viele Grüße,
Joachim

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 31.01.2014, 15:26
von maennchen1.de
Der Support hat dich bereits angeschrieben.

Re: Probleme mit checkout2 und Internet Explorer

Verfasst: 31.01.2014, 16:32
von maennchen1.de
Anbei die Antwort vom Support, der Vollständigkeit halber, vielleicht hilft es später ja mal jemand anderem:
Hauptsächlich lag es daran, dass Sie den Hinweistext der Zahlungsarten mittels ungültigem HTML gefüllt hatten.
Das hatten Sie stehen:

Code: Alles auswählen

<span style="font-size: 14px">Zahlen Sie die Bestellung<br> mittels ihres PayPal Kontos.
Es fehlte der schließende Span-Tag:

Code: Alles auswählen

<span style="font-size: 14px">Zahlen Sie die Bestellung<br> mittels ihres PayPal Kontos.</span>
Ich habe das jetzt für die beiden Zahlarten durchgeführt. Weiterhin habe ich Ihnen die Datei checkout2.phtml und die Startseite Ihrer Webseite angepasst, so dass der Validator - wie im Forum-Thread empfohlen - eine gültige Rückantwort gibt.
Hier lag der Fehler darin, dass das HTML nicht korrekt geschachtelt war. Wenn ein HTML-Tag ein anderen Tag beinhaltet, so muss dieser auch in den schließenden Klammern stehen:
richtig:

Code: Alles auswählen

<strong><span>Text</span></strong>
falsch:

Code: Alles auswählen

<strong><span>Text</strong></span>
Die abschließenden Tests wurden mit Internet Explorer 8, 10 und 11 erfolgreich getestet.
Von Microsoft gibt es auch einen sehr ausführlichen Artikel zum Fehler HTML Parsing Error: Unable to modify the parent container element before the child element is closed. (KB927917)