Managed Server
Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Captcha Problem -> Session merkt sich erstes Captcha / keine Aktualisierung

    cybermailer

    • Schreiberling
    • Beiträge: 308
    Ich habe ein merkwürdiges Phänomen in meinem Shop entdeckt (aktuellste Version r4642 sp2)

    und zwar wenn ich wissentlich das Captcha falsch ausfülle und dannach versuche das neue Captcha zu lösen funktioniert es nicht mehr.

    Durch Ausgabe der Variablen habe ich festgestellt dass der $_SESSION['vvcode'] nicht aktualisiert wird.
    Er hält noch immer den Inhalt des ersten Captchas...

    Wo kann hier der fehler liegen? Bzw. wo kann ich diesen beseitigen?

    Danke...

    Linkback: https://www.modified-shop.org/forum/index.php?topic=32026.0

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Meine Meinung, Weg mit dem Mist! Du brauchst kein Captcha. Das ist wesentlich besser, weil es immer funktioniert und auch kundenfreundlicher ist:
    http://www.modified-shop.org/forum/index.php?topic=12332.0

    cybermailer

    • Schreiberling
    • Beiträge: 308
    Prinzipiell gebe ich dir Recht, aber eigentlich funktioniere es immer wunderbar und der Code ist wenigstens auch lesbar für den Menschen. Manche Captchas die herumschwieren im Netz sind ja wirklich lästig.

    Ich konnte den Fehler jetzt zumindest eingrenzen:

    Es tritt bei modified shop nur in Kombination mit dem responsive template auf (Modulecke)

    Ich konnte auch schon die Datei ausmachen welche den Fehler verursacht und zwar es ist die index.html im Template Ordner.

    Das ist die Original bootstrap responsive index.html:

    Code: PHP  [Auswählen]
    {config_load file="$language/lang_$language.conf" section="index"}
    <header>
        <div class="navbar navbar-inverse navbar-fixed-top">
          <div class="navbar-inner">
            <div class="container">
              <a class="brand" href="{$index}"><img src="{$tpl_path}img/logo.png" class="img-responsive" alt="{$store_name}" /></a>
                <ul class="nav pull-right">
                  <li{if strstr ($smarty.server.PHP_SELF, 'index') && ($smarty.get.cPath==null)} class="active"{/if}><a href="{$index}">{#link_index#}</a></li>
                 {if $account}<li{if strstr ($smarty.server.PHP_SELF, 'account') && !strstr ($smarty.server.PHP_SELF, 'create_account')} class="active"{/if}><a href="{$account}">{#link_account#}</a></li>{/if}
                 {if $smarty.session.customers_status.customers_status_id == '1'}<li{if strstr ($smarty.server.PHP_SELF, 'create_account')} class="active"{/if}><a href="{php}echo xtc_href_link(FILENAME_CREATE_ACCOUNT, '', 'SSL');{/php}">{#new_customer#}</a></li>{/if}
                 {if $smarty.session.customer_id}<li{if strstr ($smarty.server.PHP_SELF, 'logoff')} class="active"{/if}><a href="{$logoff}">{#link_logoff#}</a></li>{else}<li{if strstr ($smarty.server.PHP_SELF, 'login')} class="active"{/if}><a href="{$login}">{#link_login#}</a></li>{/if}
                 <li{if strstr ($smarty.server.PHP_SELF, 'cart')} class="active"{/if}><a href="{$cart}">{#link_cart#}</a></li>
                 <li{if strstr ($smarty.server.PHP_SELF, 'checkout')} class="active"{/if}><a href="{$checkout}">{#link_checkout#}</a></li>
               </ul>
                <ul class="nav pull-right" style="clear:right;">
                  {$box_LANGUAGES}
                </ul>
            </div>
          </div>
        </div>
    </header>
    <nav>
     <div class="container">
      <div class="navbar">
       <div class="navbar-inner">
        <div class="container">
         <a class="btn btn-navbar" data-toggle="collapse" data-target=".navbar-responsive-collapse">
         <span class="icon-bar"></span>
         <span class="icon-bar"></span>
         <span class="icon-bar"></span>
         </a>
          <a class="brand" href="#">{#nav_brand#}</a>
        <div class="nav-collapse collapse navbar-responsive-collapse">
           {$box_CATEGORIES_SUPERFISH}
         </div><!-- /.nav-collapse -->
        </div>
       </div><!-- /navbar-inner -->
      </div><!-- /navbar -->
     </div>
    </nav>
    <section>
      <div class="container">
        <ol class="breadcrumb well">{$navtrail}</ol>
          <div class="row-fluid">
        <div class="span{if strpos($smarty.server.PHP_SELF, 'checkout')}12{else}9{/if}">
    {if strstr ($smarty.server.PHP_SELF, 'index')}
    {if $smarty.get.cPath==null and $smarty.get.manufacturers_id==''}
    {if $BANNER}{$BANNER}{/if}
    {/if}
    {/if}
    {if strstr ($smarty.server.PHP_SELF, 'index')}
    {if $smarty.get.cPath==null and $smarty.get.manufacturers_id==''}
          <div id="myCarousel" class="carousel carousel-fade slide img-polaroid">
            <ol class="carousel-indicators">
              <li data-target="#myCarousel" data-slide-to="0" class="active"></li>
              <li data-target="#myCarousel" data-slide-to="1"></li>
              <li data-target="#myCarousel" data-slide-to="2" class="white"></li>
              <li data-target="#myCarousel" data-slide-to="3" class="white"></li>
            </ol>
            <div class="carousel-inner">
              <div class="item active">
                            <a href="#"><img class="img-responsive" src="{$tpl_path}slideshow/1.jpg" alt="Bild 1" /></a>
                <div class="carousel-caption text-center">
                                          <h4>Bild 1</h4>
                                        <p>Dunkles Bild - Beschreibung(caption) standard ohne zusätzliche CSS-Klasse</p>
                </div>
              </div>
              <div class="item">
                <a href="#"><img class="img-responsive" src="{$tpl_path}slideshow/2.jpg" alt="Bild 2" /></a>
                <div class="carousel-caption relative text-center">
                                          <h4>Bild 2</h4>
                                    <p>Dunkles Bild - Beschreibung(caption) unten erhält CSS-Klasse "relative"</p>
                </div>
              </div>
              <div class="item">
                <a href="#"><img class="img-responsive" src="{$tpl_path}slideshow/3.jpg" alt="Bild 3" /></a>
                <div class="carousel-caption relative text-center">
                                            <h4>Bild 3</h4>
                                            <p>Bildbeschreibung unten - caption erhält zusätzlich die CSS-Klasse "relative"</p>
                </div>
              </div>
              <div class="item">
                <a href="#"><img class="img-responsive" src="{$tpl_path}slideshow/3.jpg" alt="Bild 4" /></a>
                <div class="carousel-caption relative text-center">
                                            <h4>Bild 4</h4>
                                            <p>wie Bild 3</p>
                </div>
              </div>
            </div>
          </div>    
    {/if}
    {/if}
          <div class="content">
          {$main_content}
          </div>
        </div><!-- /center -->
    {if !strstr ($smarty.server.PHP_SELF, 'checkout')}
            <div class="span3">
              {$box_ADMIN}
              {$box_CATEGORIES}
              {$box_CART}
              {$box_SEARCH}
              <div class="hidden-phone">
              {$box_HISTORY}
              </div>
              {$box_LOGIN}
              {$box_ADD_QUICKIE}
              <div class="hidden-phone">
              {$box_LAST_VIEWED}
              </div>
              {$box_SPECIALS}
              {$box_REVIEWS}
              <div class="hidden-phone">
              {$box_WHATSNEW}
              </div>
              {$box_BESTSELLERS}
              {$box_CURRENCIES}
              {$box_MANUFACTURERS_INFO}
              {$box_MANUFACTURERS}
            </div><!-- /left -->
    {/if}
       </div><!-- /row-fluid -->
        <div id="modal" class="modal hide fade" role="dialog" aria-labelledby="modalLabel" aria-hidden="true">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
            <h3 id="modalLabel"></h3>
          </div>
          <div class="modal-body">
            <img src="#" alt="" />
          </div>
        </div>
      </div>
    </section>
    <footer>
      <div class="well well-small">
       <div class="container">
        <div class="row-fluid footer">
          <div class="span3">{$box_CONTENT}</div>
          <div class="span3">{$box_INFORMATION}</div>
          <div class="span3">{$box_NEWSLETTER}</div>
          <div class="span3">{$box_INFOBOX}</div>
        </div>
        <p class="text-center">{$smarty.const.TITLE} &copy; {$smarty.now|date_format:"%Y"} | Template &copy; {$smarty.now|date_format:"%Y"} by <span>Karl</span></p>
       </div>
      </div>
    </footer>
    {if ($smarty.const.TRACKING_COUNT_ADMIN_ACTIVE=='true' and $smarty.session.customers_status.customers_status_id == '0')
      or $smarty.session.customers_status.customers_status_id != '0'}
      {if $smarty.const.TRACKING_PIWIK_ACTIVE=='true'}
        {piwik url=$smarty.const.TRACKING_PIWIK_LOCAL_PATH id=$smarty.const.TRACKING_PIWIK_ID goal=$smarty.const.TRACKING_PIWIK_GOAL}
      {/if}
      {if $smarty.const.TRACKING_GOOGLEANALYTICS_ACTIVE=='true'}
        {googleanalytics account=$smarty.const.TRACKING_GOOGLEANALYTICS_ID trackorders=true}
      {/if}
    {/if}

    Kann jemand den Fehler erkennen?

    Beste Grüße!

    cybermailer

    • Schreiberling
    • Beiträge: 308
    durch probieren in der index konnte ich auf folgenden Codebereich eingrenzen:

    Code: PHP  [Auswählen]
    <div id="modal" class="modal hide fade" role="dialog" aria-labelledby="modalLabel" aria-hidden="true">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
            <h3 id="modalLabel"></h3>
          </div>
          <div class="modal-body">
            <img src="#" alt="" />
          </div>
        </div>

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Sagt Firebug irgendwas?

    cybermailer

    • Schreiberling
    • Beiträge: 308

    p3e

    • Experte
    • Beiträge: 2.424
    Wie Bonsai schon erwähnt, ist die Lösung von GTB von 2011 wirklich gut. Ich weiß gar nicht, wieso das nicht schon längst in die offizielle Shopversion aufgenommen wurde. Da spricht meiner Meinung nach nichts dagegen.
    Sehr gut hilft auch ein Timestamp. Wenn man den so programmiert, dass die Kontakmail nur dann geschrieben wird, wenn der "Abschicken"-Button frühestens 10 sec nach Aufruf der Seite und spätestens eine Stunde danach ausgelöst werden kann. Dadurch hatte ich schon gefühlte 99,9% weniger Spam und konnte auf das Captcha verzichten.

    Bonsai

    • Viel Schreiber
    • Beiträge: 4.127
    • Geschlecht:
    Wie Bonsai schon erwähnt, ist die Lösung von GTB von 2011 wirklich gut. Ich weiß gar nicht, wieso das nicht schon längst in die offizielle Shopversion aufgenommen wurde. Da spricht meiner Meinung nach nichts dagegen.

    Ich hatte seit mein Shop läuft (13.6.2014 00:01) durch die Lösung von GTB genau NULL Spam. Und meine Kunden müssen kein nerviges Captcha ausfüllen. Das ist insbesondere wichtig, wenn ein Kunde sich beschweren will. Wenn er dann das dritte mal am Captcha gescheitert ist, ruft er an und kocht dann so richtig ... (Erfahrung mit dem alten Shop)
    15 Antworten
    8774 Aufrufe
    28. Juni 2013, 01:09:19 von noRiddle (revilonetz)
    2 Antworten
    2115 Aufrufe
    24. Oktober 2013, 16:13:35 von FabianJochen
    1 Antworten
    3103 Aufrufe
    10. Mai 2010, 10:42:38 von Tomcraft
               
    anything