Griever: FreeWebShop >> Fehler bei der Artikelanzeige

Hi.

Ich erstelle gerade (mithilfe einer Vorlage von FreeWebShop) einen Onlineshop. Das Design und die Funktionen habe ich von FreeWebShop übernommen. Doch es gibt einen Fehler.

Bei einer Warengruppe (nennen wir mal WarGroup 1) sollen über 400 Artikel angezeigt werden.

Doch der Shop stoppt schon bei 200 Artikeln, was es nicht möglich macht, weitere Informationen über gleiche Artikel (also nur andere Farbe z. B.) anzubieten.

ich habe schon den Sourcecode durchsucht und einiges versucht, zu korrigieren. Aber ich finde es einfach nicht.

Ich geb euch mal den Code:

<HEAD>
<script>var wohoo=new Array();</script>
<SCRIPT LANGUAGE="JavaScript" src="allart.js" type="text/javascript"></script>
<script language="JavaScript">
 <!--
  var a_g_v = wohoo.length;
  if(a_g_v>999)
  {
    a_g_v=String(a_g_v).split("")
    var agv="";
    while(a_g_v.length-1!=-1)
    {
     if(a_g_v.length==3)
     agv+="."
     agv+=a_g_v[a_g_v.length-1];
     delete a_g_v[a_g_v.length-1];
    }
  }
  else
  var agv=a_g_v
 -->
</script>
<link rel="stylesheet" type="text/css" href="rahmen.css">     <TITLE>Artikel auflisten</TITLE>
     <SCRIPT LANGUAGE="JavaScript" src="include.js" type="text/javascript"></SCRIPT>
<link rel="stylesheet" type="text/css" href="rahmen.css">     <STYLE TYPE="text/css">
          <!--
          span.beschrieb { font-size:12px; font-style:plain; }
          span.titel { font-size:12px; font-style:bold; font-family:Verdana,Arial,Helvetica; }
          span.test { font-size:12px; font-style:plain; font-family:Verdana,Arial,Helvetica; }
          //-->
     </STYLE>
</HEAD>

<SCRIPT LANGUAGE="JavaScript">

var showart=new Array();
for (a=0;a<5000000;a++) {
     showart[a]=true;
     };

function findnreplace(keyword, replacement) {
     var found = 0
     var new_str = "";
     if(current_str.indexOf(keyword) != -1) { //IF1
          for(var x = 0; x < current_str.length; x++) { //FOR1
               for(var y = 0; y < keyword.length; y++) { //FOR2
                    if(current_str.charAt(x + y) == keyword.charAt(y)) {
                         found += 1;
                      }
                 }//End of FOR2
               if(found == keyword.length) {
                    new_str += current_str.substring(0, x);
                    new_str += replacement;
                    new_str += current_str.substring((x + keyword.length), current_str.length);
                    current_str = new_str;
                    new_str = "";
                    x += (replacement.length - 1);
               } // End of IF
               found = 0;
          } // End of FOR1
     } //End of IF1
}//EOF

function mitKomma(zahl) {
     // Rechnet Zahlen In Strings im Format "x,nn" um
          Zahltext=String(zahl);
          ganzzahl=Math.round(zahl);
          nachkomma=zahl-ganzzahl;
          nachkomma=nachkomma*100;
          nachkomma=Math.round(nachkomma);
          nachkomma=nachkomma/100;
          zahl=ganzzahl+nachkomma;

if (ganzzahl==zahl) {
               Zahltext=String(zahl)+",00";
          } else {
               Zahltext=String(zahl);
               test=String(Math.abs(nachkomma));
               programm=navigator.appName;
               if(programm.indexOf("Microsoft") == -1) {
                    if (test.length<3)
                         Zahltext=Zahltext+"0";
               } else {
                    if (test.length<4)
                    Zahltext=Zahltext+"0";
               }
          }
          nummern = Zahltext.replace(/./,",");
          return nummern;
} //EOF

function andererPreis(preis) {
          if (Waehrung=='EUR') {
               preiserg=mitKomma(preis*UmrechnungsKurs);
               preiserg=preiserg+' '+LandesWaehrung;
          } else {
               preiserg=mitKomma(preis/UmrechnungsKurs);
               preiserg=preiserg+'&nbsp;EUR';
          }
          return preiserg;
} //EOF

document.writeln('<BODY BGCOLOR=');
document.writeln(MainHintergrund);
document.writeln(' text='+StandarttextFarbe+' LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0>');
</SCRIPT>

<BR>
<CENTER>

<!-- Put items in a table -->
<IMG SRC="pix/trans.gif" height=18>
<SCRIPT>
     if(parent.basket&&parent.basket.iselected)
     {
     katgew=parent.basket.iselected.split("x-x");
     katchg=katgew[0].replace("&","&amp;");
     katchg=katchg.replace("xssx","&szlig;");
     katchg=katchg.replace("xaex","&auml;");
     katchg=katchg.replace("xAex","&Auml;");
     katchg=katchg.replace("xuex","&uuml;");
     katchg=katchg.replace("xUex","&Uuml;");
     katchg=katchg.replace("xoex","&ouml;");
     katchg=katchg.replace("xOex","&Ouml;");
     document.writeln('<FONT FACE="Verdana,Arial,Helvetica" COLOR="'+HilitetextFarbe+'" size="5"><B>'+katchg+'</B></FONT><BR><BR>');
     }
     else
     {
     location.href="estart.htm";
     }
</SCRIPT>

<TABLE BORDER="0" CELLPADDING="5" CELLSPACING="2" WIDTH="95%">

<SCRIPT>
     document.writeln('<tr bgcolor="'+ListHintergrundFarbe+'">');
</SCRIPT>
     <TD align=left colspan="2"><nobr><FONT FACE="Verdana,Arial,Helvetica" color="black" style="font-size:12px;"><B>Artikel</FONT></B></nobr></TD>
     <TD><nobr><FONT FACE="Verdana,Arial,Helvetica" color="black" style="font-size:12px;"><B>Preis</FONT></B></nobr></TD>
     <TD><nobr><FONT FACE="Verdana,Arial,Helvetica" color="black" style="font-size:12px;"><B>Menge</FONT></B></nobr></TD>
     <TD><nobr><FONT FACE="Verdana,Arial,Helvetica" color="black" style="font-size:12px;"><B>in Warenkorb</FONT></B></nobr></TD>
</tr>

<FORM NAME="itemsform">

<SCRIPT LANGUAGE="JavaScript">
     if(parent.basket&&parent.basket.iselected)
     {
          for (cntr=0;cntr<parent.korb.todo;cntr++) {
               if (parent.korb.artkate[cntr]==katchg) {
                    document.writeln('<tr align=center>');
                    document.writeln('<TD align=left valign=top>');
                    document.writeln('<FONT FACE="Verdana,Arial,Helvetica" SIZE="2">');
                    if (parent.korb.artbild[cntr]!="") {
                         document.writeln('<IMG width=125 style="cursor:hand;" title="'+parent.korb.artbez[cntr]+'" onclick="window.open('pix/'+parent.korb.artbild[cntr]+'','','')" SRC="pix/'+parent.korb.artbild[cntr]+'" align=left hspace=5>');
                    }
                    document.writeln('<FONT SIZE="1">'+parent.korb.artnum[cntr]+'</FONT><BR><B><SPAN CLASS="titel">'+parent.korb.artbez[cntr]+'</SPAN></B><P>');
                    document.writeln('<SPAN CLASS="beschrieb">'+parent.korb.artbesch[cntr]+'</SPAN>');
                    document.writeln('</TD>');
                    document.writeln('<td valign=top>');
                    document.writeln('<FONT FACE="Verdana,Arial,Helvetica" SIZE="2"></FONT>');
                    document.writeln('</td>');
                    document.writeln('<td align=left valign=top>');
                    document.writeln('<SPAN CLASS="test">'+mitKomma(parent.korb.artpreis[cntr])+'&nbsp;'+Waehrung+'<BR>');

if (HideSecondCurrency==0) {
                         document.writeln(andererPreis(parent.korb.artpreis[cntr])+'<BR>');
                    }
                    document.writeln(parent.korb.artve[cntr]+'</SPAN></td></SPAN></td>');

document.writeln('<td valign=top>');
                    document.writeln('<INPUT onkeyup="if(this.value>=999)this.value=999" TYPE="value" NAME="run'+cntr+'" VALUE="1" SIZE=2>');
                    document.writeln('</td><td align=center valign=top>');
                    document.writeln('<INPUT TYPE="button" onclick="javascript:parent.basket.buyItem(''+parent.korb.artnum[cntr]+'<BR>'+parent.korb.artbez[cntr]+'',''+parent.korb.artpreis[cntr]+'',''+parent.korb.artmsatz[cntr]+'', document.itemsform.run'+cntr+'.value);" VALUE="aufnehmen">');
                    document.writeln('</td></TR><TR><TD COLSPAN=6><HR size=3 noshade color="#ffffff"></TD></TR>');
               } //End of IF
          }; //End of FOR
          document.writeln('<tr bgcolor="'+ListHintergrundFarbe+'">');
     }
     </SCRIPT>
</form>
</TABLE>
</BODY>
</HTML>

Das ist der Ganze Code. Und ich weiß nicht, woran der Fehler liegt ...

Ich lege mal ein Screenshot mit bei:

  1. Hallo Griever,

    beim schnellen überfliegen gefunden:

    es muss immer <script type="text/javascript"> heißen.

    Zwischen </head> und <body> haben Scripte nichts zu suchen. Du solltest den Code mal durch den Validator schicken. Bei mittels JS generierten Seiten kannst du dir im FF das erzeugte HTML mittels Markieren, "rechte Maustaste" und "Auswahl-Quelltext Anzeigen" besorgen.

    Gruß, Jürgen

    1. Jo. Danke. Ich werd's versuchen.

      Sollte ich nochmals fehler haben, werde ich hier hineinposten. Ok.

      MFG
      Griever

    2. Ich habe mir gedacht, dass es nicht daran liegt.

      Vielleicht hilft dir eine Live-Ansicht, wie der Fehler auftritt.

      Geh unter der Drop-Down-Liste auf "Büroorganisation" und dort siehst du ganz unten, der letzt artikel, Nummer 20411-O. Doch es gibt ja noch den Artikel 20412-O, der hier aber nicht mehr angezeigt wird. Der beendet einfach die Schleife.

      Schau es dir mal an, vielleicht findest du ja den Fehler ...

      [linl:http://www.gwebspace.de/ggriever/WebShop/index.htm@title=FreeWebShop]

      (Der Server ist etwas langsam ... Aber dafür reichts erstmal ...)

      MFG
      Griever