Avatar billede Cyberdata.dk Praktikant
28. december 2003 - 09:55 Der er 12 kommentarer og
1 løsning

send mail

Jeg har denne online butiks script, som jeg har fundet på nettet. Problemet er at der indgår et php script som jeg overhovedet ikke har forstand på (endnu) men man skal jo starte et sted :-).

Spørgsmålet er:
1: hvor placerer jeg php scriptet til at sende mail?
2: hvis det skal placeres i phpmyadmin, hvordan gør jeg så det og hvordan linker jeg til den?
3: ser disse 2 scripts ellers ud til at virke?

<SCRIPT>
function CheckForm( theform )
{
    var bMissingFields = false;
    var strFields = "";
   
    if( theform.b_first.value == '' ){
        bMissingFields = true;
        strFields += "    Regning: Fornavn\n";
    }
    if( theform.b_last.value == '' ){
        bMissingFields = true;
        strFields += "    Regning: Efternavn\n";
    }
    if( theform.b_addr.value == '' ){
        bMissingFields = true;
        strFields += "    Regning: Adresse\n";
    }
    if( theform.b_city.value == '' ){
        bMissingFields = true;
        strFields += "    Regning: By\n";
    }
   
    if( theform.b_zip.value == '' ){
        bMissingFields = true;
        strFields += "    Regning: Post nr\n";
    }
    if( theform.b_phone.value == '' ){
        bMissingFields = true;
        strFields += "    Regning: Telefon nr\n";
    }
    if( theform.b_email.value == '' ){
        bMissingFields = true;
        strFields += "    Regning: Email\n";
    }
       
    if( bMissingFields ) {
        alert( "Du er ndt til at udfylde flgende felt/er fr du kan fortsætte:\n" + strFields );
        return false;
    }
   
    return true;
}
</SCRIPT>
<blockquote>

<NOSCRIPT>
Whoops, we detected that your browser does not have JavaScript, or it is disabled.  Our product catalog requires that you
have JavaScript enabled to order products.  <a href="http://www.netscape.com">Netscape</a> and <a href="http://www.microsoft.com/ie">Microsoft</a>
offer free browsers which support JavaScript.  If you are using a JavaScript compliant browser and still have problems, make sure you
have JavaScript enabled in your browser's preferences.
</NOSCRIPT>

<form action="http://www.cyberdata.dk/butik/checkout/checkout.php" method="POST" onSubmit="return CheckForm(this)">
    <FONT CLASS="checkout"><NOBR>
    <SCRIPT>
        CheckoutCart();
    </SCRIPT>
    </NOBR>
<br>
        </font><P>

Udfyld nedenstående formel, for at fuldføre dit køb.<FONT CLASS="checkout"><font class="blacktext">


        </font></font><p>
<FONT CLASS="checkout"><b><font class="greetext">Regnings adresse:</font></b></font><P>

<TABLE class="blacktext">
<TR><TD>Navn:    </TD><TD><input type="text" size="18" name="b_first"> <input type="text" size="15" name="b_last"></TD></TR>
<TR><TD>Adresse: </TD><TD><input type="text" size="37" name="b_addr"> </TD></TR>
<TR><TD>Adresse: </TD><TD><input type="text" size="37" name="b_addr2"></TD></TR>
<TR><TD>By:    </TD><TD><input type="text" size="21" name="b_city"> </TD></TR>
<TR><TD>Post nr:    </TD><TD><input type="text" size="5"  name="b_zip"></TD></TR>
<TR><TD>Telefon nr:  </TD><TD><input type="text" size="37" name="b_phone"></TD></TR>
<TR><TD>Fax:    </TD><TD><input type="text" size="37" name="b_fax"></TD></TR>
<TR><TD>Email:  </TD><TD><input type="text" size="37" name="b_email"> </TD></TR>
</TABLE>
<p>
<FONT CLASS="checkout"><b><font class="greetext">Leverings Information (hvis
        forskellig fra regnings adresse):</font></b></font><P>
<TABLE class="blacktext">
<TR><TD>Navn:    </TD><TD><input type="text" size="18" name="s_first"> <input type="text" size="15" name="s_last"></TD></TR>
<TR><TD>Adresse: </TD><TD><input type="text" size="37" name="s_addr"> </TD></TR>
<TR><TD>Adresse: </TD><TD><input type="text" size="37" name="s_addr2"></TD></TR>
<TR><TD>By:    </TD><TD><input type="text" size="21" name="s_city"> </TD></TR>
<TR><TD>Post nr:    </TD><TD><input type="text" size="5"  name="s_zip"></TD></TR>
<TR><TD>Telefon nr:  </TD><TD><input type="text" size="37" name="s_phone"></TD></TR>
<TR><TD>Fax:    </TD><TD><input type="text" size="37" name="s_fax"></TD></TR>
<TR><TD>Email:  </TD><TD><input type="text" size="37" name="s_email"> </TD></TR>
</TABLE>
<p>

<FONT CLASS="checkout"><FONT class="blacktext"><b><font class="greetext">Besked/Kommentar:</font></b></font></font><P>
<FONT CLASS="checkout"><font class="blacktext"><TEXTAREA NAME="comment" ROWS=6 COLS=40>
</TEXTAREA>

        </font></font><P>
<FONT CLASS="checkout"><input type=submit Value="Godkend Ordre"> <INPUT type=RESET value="Slet Formel">
    </font></p>
    </FORM>   
</blockquote>
    </center>   
</body>
</html>



og php scriptet:


<?
//=====================================================================||
//              NOP Design JavaScript Shopping Cart                  ||
//                  PHP SCRIPT Checkout Module                        ||
//                                                                    ||
// For more information on SmartSystems, or how NOPDesign can help you ||
// Please visit us on the WWW at http://www.nopdesign.com              ||
//                                                                    ||
// Javascript portions of this shopping cart software are available as ||
// freeware from NOP Design.  You must keep this comment unchanged in  ||
// your code.  For more information contact FreeCart@NopDesign.com.    ||
//                                                                    ||
// JavaScript Shop Module, V.4.4.0                                    ||
//=====================================================================||
//                                                                    ||
//  Function: Writes available form elements from the NOP              ||
//            Free Cart (http://www.nopdesign.com/freecart)            ||
//            and other form elements to an email file, and            ||
//            send user confirmation                                  ||
//                                                                    ||
//=====================================================================||


//######################################################################
//                                                                    #
// User defined variables:                                            #
//    $header        - string value containing the complete          #
//                      path of the HTML page header                  #
//    $footer        - string value containing the complete          #
//                      path of the HTML page footer                  #
//    $youremail    - string value containing the email address to  #
//                      send catalog orders in EMAIL or BOTH modes    #
//    $returnpage    - URL to send user when checkout is complete    #
//    $csvfilename  - string value containing the complete          #
//                      path of the user database.                    #
//    $csvquote      - string value containing what to use for quotes #
//                      in the csv file (typically "" or \")          #
//    $mode          - string value containing 'EMAIL', 'FILE' or    #
//                      'BOTH' to determine if the script should send  #
//                      an email to you with the new order, write the  #
//                      order to a CSV file, or do both.              #
//######################################################################
$header        = "header.html";
$footer        = "footer.html";
$returnpage    = "/";
$youremail    = "cyberdata@cyberdata.dk";
$csvfilename  = "orders.csv";
$csvquote      = "\"\"";
$mode          = "BOTH";


//##############################################################
//#FUNCTION:  doFormError                                    #
//#RETURNS:                                                    #
//#PARAMETERS: A error message string.                        #
//#PURPOSE:    Generates an HTML page indicating a form        #
//#            submission error occurred.                      #
//##############################################################
function doFormError($errString) {

    include($header);

    echo "<FONT SIZE=+2>Den formel du har udfyldt er ikke korrekt udfyldt.<BR><BR></FONT>";
    echo "$errString<BR><BR>\n";
    echo "<INPUT TYPE=BUTTON ONCLICK='history.back()' VALUE='  Gå tilbage til kassen '><HR>";

    include($footer);

    exit;
}

//##############################################################
//#FUNCTION:  doError                                        #
//#RETURNS:                                                    #
//#PARAMETERS: A error message string.                        #
//#PURPOSE:    Generates an HTML page indicating an error      #
//#            occurred.                                      #
//##############################################################
function doError($errString) {

    include($header);

    echo "$errString<BR><BR>\n";

    include($footer);

    exit;
}



//##############################################################
//##############################################################
//###  MAIN                                                  ###
//##############################################################
//##############################################################

if (($b_first == "") || ($b_last == "") || ($b_addr == "") || ($b_city == "") || ($b_state == "") || ($b_zip == "") || ($b_phone == "") || ($b_email == "")) {
  doFormError("I'm sorry, but it appears that you forgot to fill in a required field.  Please go <A HREF='java script:history.go(-1);'>back</A> and correct the error.");
  exit;
}

//# checks for valid email address
if( !(ereg("^(.+)@(.+)\\.(.+)$",$b_email)) ) {
    doFormError("You submitted an invalid email address.  Please go <A HREF='java script:history.go(-1);'>back</A> and correct the error.");
    exit;
}

$today = date ("l, F jS Y");
$strMessageBody = "";
$strMessageBody .= "A new order has been received.  A summary of this order appears below.\n";
$strMessageBody .= "\n";
$strMessageBody .= "Order Date: $today \n";
$strMessageBody .= " \n";
$strMessageBody .= "Regning til: \n";
$strMessageBody .= "-------- \n";
$strMessageBody .= "  $b_first $b_last \n";
$strMessageBody .= "  $b_addr \n";
$strMessageBody .= "  $b_addr2 \n";
$strMessageBody .= "  $b_city  $b_zip \n";
$strMessageBody .= "  $b_phone \n";
$strMessageBody .= "  $b_fax \n";
$strMessageBody .= "  $b_email \n";
$strMessageBody .= " \n";
$strMessageBody .= " \n";
$strMessageBody .= "Send til: \n";
$strMessageBody .= "-------- \n";
$strMessageBody .= "  $s_first $s_last \n";
$strMessageBody .= "  $s_addr \n";
$strMessageBody .= "  $s_addr2 \n";
$strMessageBody .= "  $s_city  $s_zip \n";
$strMessageBody .= "  $s_phone \n";
$strMessageBody .= " \n";
$strMessageBody .= " \n";
$strMessageBody .= "Qty  Price(\$)  Product ID  - Product Name\n";
$strMessageBody .= "===================================================================== \n";
$strMessageBody .= "$QUANTITY_1    \$$PRICE_1    $ID_1 - $NAME_1  $ADDTLINFO_1  \n";
if( $NAME_2 ) {$strMessageBody .= "$QUANTITY_2    \$$PRICE_2    $ID_2 - $NAME_2  $ADDTLINFO_2  \n";}
if( $NAME_3 ) {$strMessageBody .= "$QUANTITY_3    \$$PRICE_3    $ID_3 - $NAME_3  $ADDTLINFO_3  \n";}
if( $NAME_4 ) {$strMessageBody .= "$QUANTITY_4    \$$PRICE_4    $ID_4 - $NAME_4  $ADDTLINFO_4  \n";}
if( $NAME_5 ) {$strMessageBody .= "$QUANTITY_5    \$$PRICE_5    $ID_5 - $NAME_5  $ADDTLINFO_5  \n";}
if( $NAME_6 ) {$strMessageBody .= "$QUANTITY_6    \$$PRICE_6    $ID_6 - $NAME_6  $ADDTLINFO_6  \n";}
if( $NAME_7 ) {$strMessageBody .= "$QUANTITY_7    \$$PRICE_7    $ID_7 - $NAME_7  $ADDTLINFO_7  \n";}
if( $NAME_8 ) {$strMessageBody .= "$QUANTITY_8    \$$PRICE_8    $ID_8 - $NAME_8  $ADDTLINFO_8  \n";}
if( $NAME_9 ) {$strMessageBody .= "$QUANTITY_9    \$$PRICE_9    $ID_9 - $NAME_9  $ADDTLINFO_9  \n";}
if( $NAME_10 ){$strMessageBody .= "$QUANTITY_10    \$$PRICE_10    $ID_10 - $NAME_10  $ADDTLINFO_10 \n";}
if( $NAME_11 ){$strMessageBody .= "$QUANTITY_11    \$$PRICE_11    $ID_11 - $NAME_11  $ADDTLINFO_11 \n";}
if( $NAME_12 ){$strMessageBody .= "$QUANTITY_12    \$$PRICE_12    $ID_12 - $NAME_12  $ADDTLINFO_12 \n";}
if( $NAME_13 ){$strMessageBody .= "$QUANTITY_13    \$$PRICE_13    $ID_13 - $NAME_13  $ADDTLINFO_13 \n";}
$strMessageBody .= "===================================================================== \n";
$strMessageBody .= "SUBTOTAL: $SUBTOTAL \n";
$strMessageBody .= "TOTAL: $TOTAL \n";
$strMessageBody .= "\n";
$strMessageBody .= "FREIGHT: $SHIPPING \n";
$strMessageBody .= "\n\n";
$strMessageBody .= "Comments: \n";
$strMessageBody .= "--------- \n";
$strMessageBody .= "$comment \n";
$strMessageBody .= " \n";


if( $mode == "BOTH" || $mode == "EMAIL") {
  //# Send email order to you...
  $mailheaders = "From: $b_email\r\n";
  $mailheaders .="X-Mailer: PHP Mail generated by:NOP Design Shopping Cart\r\n";
  $subject = "New Online Order";
  mail($youremail, $subject, $strMessageBody, $mailheaders);
}


if( $mode == "BOTH" || $mode == "FILE") {
 
  $csvcomments = $comment;
  if (!$CSVF = fopen($csvfilename,'a')) {
      doError("Unable to open CSV file for writing.  Your order has not been saved.");
      exit;
  }

  fputs($CSVF, $string);
  fputs($CSVF, "\"");
  fputs($CSVF, "$today");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_first");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_last");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_addr");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_addr2");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_city");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_state");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_zip");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_phone");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_fax");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$b_email");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$s_first");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$s_last");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$s_addr");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$s_addr2");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$s_city");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$s_state");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$s_zip");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$s_phone");
  fputs($CSVF, "\",\""); 
  fputs($CSVF, "$QUANTITY_1");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_1");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_1");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_1");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_1");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_2");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_2");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_2");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_2");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_2");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_3");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_3");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_3");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_3");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_3");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_4");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_4");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_4");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_4");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_4");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_5");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_5");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_5");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_5");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_5");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_6");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_6");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_6");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_6");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_6");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_7");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_7");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_7");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_7");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_7");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_8");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_8");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_8");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_8");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_8");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_9");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_9");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_9");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_9");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_9");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_10");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_10");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_10");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_10");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_10");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_11");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_11");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_11");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_11");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_11");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_12");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_12");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_12");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_12");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_12");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$QUANTITY_13");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "\$$PRICE_13");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ID_13");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$NAME_13");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$ADDTLINFO_13");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$SUBTOTAL");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$TOTAL");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$SHIPPING");
  fputs($CSVF, "\",\"");
  fputs($CSVF, "$comment");
  fputs($CSVF, "\"\n");
 
  fclose($CSVF);
}

//# Send email conformation to the customer.....
$mailheaders = "From: $cyberdata@cyberdata.dk\r\n";
$mailheaders .="X-Mailer: PHP Mail generated by:cyberdata.dk\r\n";
$subject = "Order Confirmation";
mail($b_email, $subject, $strMessageBody, $mailheaders);

include($header);

echo "<h2>Thank you</h2>";
echo "Tak fordi de handlede i vores online butik.  Du vil modtage en email når din ordre er blevet godkendt ";
echo "momentarily.  Kontakt os på $cyberdata@cyberdata.dk hvis du har nogle spørgsmål.";
echo "<P>";
echo "<A HREF=\"$returnpage\" target=_top>Return Home</A>";
echo "<P>";

include($footer);

?>

Jeg håber i kan hjælpe mig.
ps! det virker indtil den skal sende mailen afsted.
Avatar billede Slettet bruger
28. december 2003 - 10:12 #1
Ja, for du har rettet noget nede i scriptet, som du skulle have holdt fingrene fra, når du ikke forstår, hvad det laver.

De steder, der står $cyberdata@cyberdata.dk skal du rette tilbage, så der igen står $youremail

Den indsætter selv indholdet af den $youremail variabel, der bliver oprettet i toppen af scriptet og der har du jo rettet adressen.

php-scriptet skal ligge som http://www.cyberdata.dk/butik/checkout/checkout.php

Jeg har ikke nærlæst de to filer, men det ser ud til at være lavet af fornuftige mennesker, som ved, hvad de laver, så jeg vil tro, at det virker.
Avatar billede Slettet bruger
28. december 2003 - 10:30 #2
Der er forresten en lille fejl i scriptet, så den omgivende HTML ikke bliver inkluderet på fejl-siderne. Det kan ordnes ved at indsætte den følgende linie 2 steder:

global $header, $footer;

De steder, den skal indsættes er linie 60 og 80, dvs. lige efter disse 2 linier:

function doFormError($errString) {
function doError($errString) {
Avatar billede Slettet bruger
28. december 2003 - 12:59 #3
Kan du bruge denne som udgangsscript, prøv at sætte dine egen mailadr. ind

----------------
<?php
if ($send)
  {
    // Mailen sendes til denne adresse.
    $recipient = "visithaven@mail.dk";
    // Emne
    $subject = "Mail fra visithaven's mailform";

    $message .= "Navn: $navn\n";
    $message .= "Adresse: $adr\n";
    $message .= "Postnr: $pnr\n";
    $message .= "By: $by\n";
    $message .= "Telefon: $tlf\n";
    $message .= "Mail: $mail\n";
    $message .= "WWW: $url\n";
    $message .= "Amt: $menu\n";
    $message .= "Besked: $besked\n";


    $headers = "X-Mailer: http://www.visithaven.dk\r\nFrom: " . $mail . "\r\n";

    mail($recipient, $subject, $message, $headers);
    header("location: tak.php");
}

?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
      <title>mailform</title>
<meta name="Generator" content="Stone's WebWriter 4">
</head>
  <body bgcolor="#C0C0C0" text="#000000" link="#0000FF" vlink="#660066" alink="#FF0000">
      <h4> Registreringsform<p>
          Jeg tilmelder nedenstående min have som besøgshave.<br><p></h4>
      <hr width="90%" style="border:dotted;">     
<form method="post" onsubmit="return checkform(this);">
        <h2>Bruger Information</h2>
        <table>
        <tr><td>
    Navn:</td><td><input type="text" size="30" maxlength="30" name="navn"></td></tr>
        <tr><td>
    Adresse:</td><td><input type="text" size="30" maxlength="30" name="adr"></td></tr>
        <tr><td>
    Postnr :</td><td><input type="text" size="30" maxlength="4" name="pnr"></td></tr>
        <tr><td>
        By:</td><td><input type="text" size="30" maxlength="30" name="by"></td></tr>
        <tr><td>
    Telefon:</td><td><input type="text" size="30" maxlength="8" name="tlf"></td></tr>
        <tr><td>
    E-mail:</td><td><input type="text" size="30" maxlength="40" name="mail"></td></tr>
        <tr><td>
    www/URL:</td><td><input type="text" size="30" maxlength="40" name="url"></td></tr>
        </table>
      <hr width="90%" style="border:dotted;">
        <h2><font face="Verdana, Arial, Helvetica" size="2">Tilhørsforhold</font></h2>
        <p>
            <font face="Verdana, Arial, Helvetica" size="2">Vælg den landsdel du vil optages under:</font>
        </p>
        <dl>
            <dd>
            <font face="Verdana, Arial, Helvetica" size="2">                 
            <select name="menu">
            <option value="0" selected> Vælg landsdel (amt) her !</option>
            <option value="nordjylland">Nordjylland</option>
            <option value="viborg">Viborg</option>
            <option value="ringkobing">Ringkøbing</option>
            <option value="aarhus ">Århus</option>
            <option value="vejle">Vejle</option>
            <option value="ribe">Ribe</option>
            <option value="sonderjylland">Sønderjylland</option>
            <option value="fyn">Fyn</option>
            <option value="vestsjaland">Vestsjælland</option>
            <option value="frederiksborg">Frederiksborg</option>
            <option value="roskilde">Roskilde</option>
            <option value="storstrom">Storstrøm</option>
            <option value="københavn">København</option>
            <option value="bornholm">Bornholm</option>
            </select></font>
            </dd>
        </dl>
        <p>
      <hr width="90%" style="border:dotted;">
      <table>
      <tr><td>
        Din beskrivelse af din have:</td></table>
        <td>
        <textarea wrap="physical" rows="10" cols="60" name="besked"></textarea></td></tr>
<br><p>
        <font face="Verdana">
        <input type="submit" value="Indsend formular" name="send">
        <input type="reset" value="Nulstil felter" name="reset"></font></p>
      </form>
  </body>
</html>
Avatar billede Cyberdata.dk Praktikant
04. januar 2004 - 21:53 #4
sandbox: Tak for hjælpen, kan du ikke smide et svar.
er det forresten ikke muligt at få den til at slette de indtastede data når bestillingen er sendt, sådan at bestillingen bliver nul stillet? prøv
www.cyberdata.dk klik der efter på portfolio
Avatar billede Slettet bruger
05. januar 2004 - 01:14 #5
Bruger du csvfilen til noget? Hvis ikke kan du bare sætte den til ikke at skrive i den. Bare ret denne linie

$mode          = "BOTH";

til

$mode          = "EMAIL";

Der vil ikke rigtig være mening i at skrive en linie i filen for derefter at slette den igen med det samme.
Avatar billede Cyberdata.dk Praktikant
05. januar 2004 - 03:27 #6
sandbox: Det virkede ikke, den husker stadig den sidste sendte bestilling, og ligger den nye oven i, så man kommer til at betale 2 gange, for den samme vare.
den skal kun huske bestillingen, til bestillingen er sendt afsted, så skal den slettes.
Kan man ikke ligge, en clear et sted?
Avatar billede Slettet bruger
05. januar 2004 - 03:35 #7
Jeg går ud fra, at det er nogle sessionsvariable, der styrer det.

Da de ikke bliver brugt i koden, du har vist, aner jeg ikke hvad de hedder.
Avatar billede Cyberdata.dk Praktikant
05. januar 2004 - 03:39 #8
selve html'en:
Avatar billede Cyberdata.dk Praktikant
05. januar 2004 - 03:39 #9
<HTML>
<HEAD>
  <TITLE>
    Cyberdata.dk
  </TITLE>
<SCRIPT SRC="language-dk.js"></SCRIPT>
<SCRIPT SRC="nopcart.js">
  //=====================================================================||
  //              NOP Design JavaScript Shopping Cart                  ||
  //                                                                    ||
  // For more information on SmartSystems, or how NOPDesign can help you ||
  // Please visit us on the WWW at http://www.nopdesign.com              ||
  //                                                                    ||
  // JavaScript Shop Module, V.4.4.0                                    ||
  //=====================================================================||
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#2396e7" TEXT="White">
<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 WIDTH=100%>
<TD VALIGN=TOP WIDTH=100%>
<TABLE BORDER=0 CELLPADDING=3 CELLSPACING=0 WIDTH=100% HEIGHT=100% align="center">    <TR>
  <TD width="915">

  <TABLE BORDER=0 WIDTH=90%><TR><TD ALIGN=CENTER VALIGN=TOP width="165">
     
      <font face="Arial"><span style="font-size:10pt;"><a href="../../design/port1.htm" target="indhold" title="Se designet i større format."><img src="../../design/port1-thumb.png" align="left" width="150" height="113" border="0"></a></span></font>&nbsp;
  </TD><TD VALIGN=TOP width="250">
     
<FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart Begin--></span></FONT><FORM NAME=order ACTION="managecart.html" onSubmit="AddToCart(this);">
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;">Produkt nr:
                                    0001<br>Produkt navn: 3D Orange<br>Pris:
                                    500 kr.<br>Antal: <input type=text size=2 maxlength=3 name=QUANTITY onChange='this.value=CKquantity(this.value)' value="1">
      <input type="image" src="./images/buynow.gif" border=0 value="Add to Cart" align=top width="93" height="33">
      <input type=hidden name=PRICE value="500.00">
      <input type=hidden name=NAME value="3D Orange">
      <input type=hidden name=ID_NUM value="0001">
      <input type=hidden name=SHIPPING value="0.00"></span></FONT>
      </FORM>
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart End  -->
      </span></FONT>
  </TD><TD VALIGN=TOP width="181">
     
                                <p align="center"><font face="Arial"><span style="font-size:10pt;"><a href="../../design/port2.htm" target="indhold" title="Se designet i større format."><img src="../../design/port2-thumb.png" align="left" width="150" height="113" border="0"></a></span></font>&nbsp;</p>

  </TD><TD VALIGN=TOP width="243">
     
        <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart Begin--></span></FONT><FORM NAME=order ACTION="managecart.html" onSubmit="AddToCart(this);">
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;">Produkt nr:
                                    0002<br>Produkt navn: Vilmanns<br>Pris:
                                    500 kr.<br>Antal: <input type=text size=2 maxlength=3 name=QUANTITY onChange='this.value=CKquantity(this.value)' value="1">
      <input type="image" src="images/buynow.gif" border=0 value="Add to Cart" align=top width="93" height="33">
      <input type=hidden name=PRICE value="500.00">
      <input type=hidden name=NAME value="Vilmanns">
      <input type=hidden name=ID_NUM value="0002">
      <input type=hidden name=SHIPPING value="0.00"></span></FONT>
      </FORM>
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart End  -->
      </span></FONT>
  </TD></TR>

 

  <TR><TD ALIGN=CENTER VALIGN=TOP width="165">
     
      &nbsp;<font face="Arial"><span style="font-size:10pt;">TOM</span></font>
  </TD><TD VALIGN=TOP width="250">
     
        <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart Begin--></span></FONT><FORM NAME=order ACTION="managecart.html" onSubmit="AddToCart(this);">
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;">Antal: <input type=text size=2 maxlength=3 name=QUANTITY onChange='this.value=CKquantity(this.value)' value="1">
      <input type="image" src="./images/buynow.gif" border=0 value="Add to Cart" align=top width="93" height="33">
      <input type=hidden name=PRICE value="500.00">
      <input type=hidden name=NAME value="TOM1">
      <input type=hidden name=ID_NUM value="0003">
      <input type=hidden name=SHIPPING value="0.00"></span></FONT>
      </FORM>
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart End  -->
      </span></FONT>
  </TD><TD VALIGN=TOP width="181">
     
                                <p align="center"><font face="Arial"><span style="font-size:10pt;">&nbsp;TOM</span></font></p>

  </TD><TD VALIGN=TOP width="243">
     
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart Begin--></span></FONT><FORM NAME=order ACTION="managecart.html" onSubmit="AddToCart(this);">
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;">Antal: <input type=text size=2 maxlength=3 name=QUANTITY onChange='this.value=CKquantity(this.value)' value="1">
      <input type="image" src="images/buynow.gif" border=0 value="Add to Cart" align=top width="93" height="33">
      <input type=hidden name=PRICE value="500.00">
      <input type=hidden name=NAME value="Tom2">
      <input type=hidden name=ID_NUM value="0004">
      <input type=hidden name=SHIPPING value="0.00"></span></FONT>
      </FORM>
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart End  -->
      </span></FONT>
  </TD></TR>

  <TR><TD ALIGN=CENTER VALIGN=TOP width="165">
     
      <font face="Arial"><span style="font-size:10pt;">TOM</span></font>
  </TD><TD VALIGN=TOP width="250">
     
        <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart Begin--></span></FONT><FORM NAME=order ACTION="managecart.html" onSubmit="AddToCart(this);">
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;">Antal: <input type=text size=2 maxlength=3 name=QUANTITY onChange='this.value=CKquantity(this.value)' value="1">
      <input type="image" src="./images/buynow.gif" border=0 value="Add to Cart" align=top width="93" height="33">
      <input type=hidden name=PRICE value="500.00">
      <input type=hidden name=NAME value="Tom3">
      <input type=hidden name=ID_NUM value="0005">
      <input type=hidden name=SHIPPING value="0.00"></span></FONT>
      </FORM>
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart End  -->
      </span></FONT>
  </TD><TD VALIGN=TOP width="181">
     
                                <p align="center"><font face="Arial"><span style="font-size:10pt;">&nbsp;TOM</span></font></p>

  </TD><TD VALIGN=TOP width="243">
     
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart Begin--></span></FONT><FORM NAME=order ACTION="managecart.html" onSubmit="AddToCart(this);">
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;">Antal: <input type=text size=2 maxlength=3 name=QUANTITY onChange='this.value=CKquantity(this.value)' value="1">
      <input type="image" src="images/buynow.gif" border=0 value="Add to Cart" align=top width="93" height="33">
      <input type=hidden name=PRICE value="500.00">
      <input type=hidden name=NAME value="Tom4">
      <input type=hidden name=ID_NUM value="0006">
      <input type=hidden name=SHIPPING value="0.00"></span></FONT>
      </FORM>
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart End  -->
      </span></FONT>
  </TD></TR>

  <TR><TD ALIGN=CENTER VALIGN=TOP width="165">
     
      <font face="Arial"><span style="font-size:10pt;">&nbsp;TOM</span></font>
  </TD><TD VALIGN=TOP width="250">
     
       
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart Begin--></span></FONT><FORM NAME=order ACTION="managecart.html" onSubmit="AddToCart(this);">
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;">Antal: <input type=text size=2 maxlength=3 name=QUANTITY onChange='this.value=CKquantity(this.value)' value="1">
      <input type="image" src="./images/buynow.gif" border=0 value="Add to Cart" align=top width="93" height="33">
      <input type=hidden name=PRICE value="500.00">
      <input type=hidden name=NAME value="Tom5">
      <input type=hidden name=ID_NUM value="0007">
      <input type=hidden name=SHIPPING value="0.00"></span></FONT>
      </FORM>
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart End  -->
      </span></FONT>
  </TD><TD VALIGN=TOP width="181">
     
       
                                <p align="center"><font face="Arial"><span style="font-size:10pt;">&nbsp;TOM</span></font></p>

  </TD><TD VALIGN=TOP width="243">
     
       
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart Begin--></span></FONT><FORM NAME=order ACTION="managecart.html" onSubmit="AddToCart(this);">
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;">Antal: <input type=text size=2 maxlength=3 name=QUANTITY onChange='this.value=CKquantity(this.value)' value="1">
      <input type="image" src="images/buynow.gif" border=0 value="Add to Cart" align=top width="93" height="33">
      <input type=hidden name=PRICE value="500.00">
      <input type=hidden name=NAME value="Tom6">
      <input type=hidden name=ID_NUM value="0008">
      <input type=hidden name=SHIPPING value="0.00"></span></FONT>
      </FORM>
      <FONT FACE="Arial,HELVETICA"><span style="font-size:10pt;"><!--Shopping Cart End  -->
      </span></FONT>
  </TD></TR></TABLE>





  </FONT>
  </TD>
  </TR>
</TABLE>
</TD>
</TR>
</TABLE>

</BODY></HTML>
Avatar billede Cyberdata.dk Praktikant
05. januar 2004 - 03:42 #10
og javascriptet: nopcart.js

//=====================================================================||
//              NOP Design JavaScript Shopping Cart                  ||
//                                                                    ||
// For more information on SmartSystems, or how NOPDesign can help you ||
// Please visit us on the WWW at http://www.nopdesign.com              ||
//                                                                    ||
// Javascript portions of this shopping cart software are available as ||
// freeware from NOP Design.  You must keep this comment unchanged in  ||
// your code.  For more information contact FreeCart@NopDesign.com.    ||
//                                                                    ||
// JavaScript Shop Module, V.4.4.0                                    ||
//=====================================================================||

//---------------------------------------------------------------------||
//                      Global Options                                ||
//                      ----------------                              ||
// Shopping Cart Options, you can modify these options to change the  ||
// the way the cart functions.                                        ||
//                                                                    ||
// Language Packs                                                      ||
// ==============                                                      ||
// You may include any language pack before nopcart.js in your HTML    ||
// pages to change the language.  Simply include a language pack with  ||
// a script src BEFORE the <SCRIPT SRC="nopcart.js">... line.          ||
//  For example: <SCRIPT SRC="language-en.js"></SCRIPT>                ||
//                                                                    ||
// Options For Everyone:                                              ||
// =====================                                              ||
// * MonetarySymbol: string, the symbol which represents dollars/euro, ||
//  in your locale.                                                  ||
// * DisplayNotice: true/false, controls whether the user is provided  ||
//  with a popup letting them know their product is added to the cart ||
// * DisplayShippingColumn: true/false, controls whether the managecart||
//  and checkout pages display shipping cost column.                  ||
// * DisplayShippingRow: true/false, controls whether the managecart  ||
//  and checkout pages display shipping cost total row.              ||
// * DisplayTaxRow: true/false, controls whether the managecart        ||
//  and checkout pages display tax cost total row.                    ||
// * TaxRate: number, your area's current tax rate, ie: if your tax    ||
//  rate was 7.5%, you would set TaxRate = 0.075                      ||
// * TaxByRegion: true/false, when set to true, the user is prompted  ||
//  with TaxablePrompt to determine if they should be charged tax.    ||
//  In the USA, this is useful to charge tax to those people who live ||
//  in a particular state, but no one else.                          ||
// * TaxPrompt: string, popup message if user has not selected either  ||
//  taxable or nontaxable when TaxByRegion is set to true.            ||
// * TaxablePrompt: string, the message the user is prompted with to  ||
//  select if they are taxable.  If TaxByRegion is set to false, this ||
//  has no effect. Example: 'Arizona Residents'                      ||
// * NonTaxablePrompt: string, same as above, but the choice for non-  ||
//  taxable people.  Example: 'Other States'                          ||
// * MinimumOrder: number, the minium dollar amount that must be      ||
//  purchased before a user is allowed to checkout.  Set to 0.00      ||
//  to disable.                                                      ||
// * MinimumOrderPrompt: string, Message to prompt users with when    ||
//  they have not met the minimum order amount.                      ||
//                                                                    ||
// Payment Processor Options:                                          ||
// ==========================                                          ||
// * PaymentProcessor: string, the two digit payment processor code    ||
//  for support payment processor gateways.  Setting this field to    ||
//  anything other than an empty string will override your OutputItem ||
//  settings -- so please be careful when receiving any form data.    ||
//  Support payment processor gateways are:                          ||
//    * Authorize.net (an)                                            ||
//    * Worldpay      (wp)                                            ||
//    * LinkPoint    (lp)
//                                                                    ||
// Options For Programmers:                                            ||
// ========================                                            ||
// * OutputItem<..>: string, the name of the pair value passed at      ||
//  checkouttime.  Change these only if you are connecting to a CGI  ||
//  script and need other field names, or are using a secure service  ||
//  that requires specific field names.                              ||
// * AppendItemNumToOutput: true/false, if set to true, the number of  ||
//  each ordered item will be appended to the output string.  For    ||
//  example if OutputItemId is 'ID_' and this is set to true, the    ||
//  output field name will be 'ID_1', 'ID_2' ... for each item.      ||
// * HiddenFieldsToCheckout: true/false, if set to true, hidden fields ||
//  for the cart items will be passed TO the checkout page, from the  ||
//  ManageCart page.  This is set to true for CGI/PHP/Script based    ||
//  checkout pages, but should be left false if you are using an      ||
//  HTML/Javascript Checkout Page. Hidden fields will ALWAYS be      ||
//  passed FROM the checkout page to the Checkout CGI/PHP/ASP/Script  ||
//---------------------------------------------------------------------||

//Options for Everyone:
MonetarySymbol        = 'kr.';
DisplayNotice        = true;
DisplayShippingColumn = true;
DisplayShippingRow    = true;
DisplayTaxRow        = true;
TaxRate              = 0.25;
TaxByRegion          = false;
TaxPrompt            = 'For tax purposes, please select if you are an Arizona resident before continuing';
TaxablePrompt        = 'Arizona Residents';
NonTaxablePrompt      = 'Other States';
MinimumOrder          = 0.00;
MinimumOrderPrompt    = 'Your order is below our minimum order, please order more before checking out.';

//Payment Processor Options:
PaymentProcessor      = '';

//Options for Programmers:
OutputItemId          = 'ID_';
OutputItemQuantity    = 'QUANTITY_';
OutputItemPrice      = 'PRICE_';
OutputItemName        = 'NAME_';
OutputItemShipping    = 'SHIPPING_';
OutputItemAddtlInfo  = 'ADDTLINFO_';
OutputOrderSubtotal  = 'SUBTOTAL';
OutputOrderShipping  = 'SHIPPING';
OutputOrderTax        = 'TAX';
OutputOrderTotal      = 'TOTAL';
AppendItemNumToOutput = true;
HiddenFieldsToCheckout = false;


//=====================================================================||
//---------------------------------------------------------------------||
//    YOU DO NOT NEED TO MAKE ANY MODIFICATIONS BELOW THIS LINE        ||
//---------------------------------------------------------------------||
//=====================================================================||


//---------------------------------------------------------------------||
//                      Language Strings                              ||
//                    ------------------                              ||
// These strings will not be used unless you have not included a      ||
// language pack already.  You should NOT modify these, but instead    ||
// modify the strings in language-**.js where ** is the language pack  ||
// you are using.                                                      ||
//---------------------------------------------------------------------||
if ( !bLanguageDefined ) {
  strSorry  = "I'm Sorry, your cart is full, please proceed to checkout.";
  strAdded  = " added to your shopping cart.";
  strRemove = "Click 'Ok' to remove this product from your shopping cart.";
  strILabel = "Product Id";
  strDLabel = "Product Name/Description";
  strQLabel = "Quantity";
  strPLabel = "Price";
  strSLabel = "Shipping";
  strRLabel = "Remove From Cart";
  strRButton= "Remove";
  strSUB    = "SUBTOTAL";
  strSHIP  = "SHIPPING";
  strTAX    = "TAX";
  strTOT    = "TOTAL";
  strErrQty = "Invalid Quantity.";
  strNewQty = 'Please enter new quantity:';
  bLanguageDefined = true;
}


//---------------------------------------------------------------------||
// FUNCTION:    CKquantity                                            ||
// PARAMETERS:  Quantity to                                            ||
// RETURNS:    Quantity as a number, and possible alert              ||
// PURPOSE:    Make sure quantity is represented as a number          ||
//---------------------------------------------------------------------||
function CKquantity(checkString) {
  var strNewQuantity = "";

  for ( i = 0; i < checkString.length; i++ ) {
      ch = checkString.substring(i, i+1);
      if ( (ch >= "0" && ch <= "9") || (ch == '.') )
        strNewQuantity += ch;
  }

  if ( strNewQuantity.length < 1 )
      strNewQuantity = "1";

  return(strNewQuantity);
}


//---------------------------------------------------------------------||
// FUNCTION:    AddToCart                                              ||
// PARAMETERS:  Form Object                                            ||
// RETURNS:    Cookie to user's browser, with prompt                  ||
// PURPOSE:    Adds a product to the user's shopping cart            ||
//---------------------------------------------------------------------||
function AddToCart(thisForm) {
  var iNumberOrdered = 0;
  var bAlreadyInCart = false;
  var notice = "";
  iNumberOrdered = GetCookie("NumberOrdered");

  if ( iNumberOrdered == null )
      iNumberOrdered = 0;

  if ( thisForm.ID_NUM == null )
      strID_NUM    = "";
  else
      strID_NUM    = thisForm.ID_NUM.value;

  if ( thisForm.QUANTITY == null )
      strQUANTITY  = "1";
  else
      strQUANTITY  = thisForm.QUANTITY.value;

  if ( thisForm.PRICE == null )
      strPRICE    = "0.00";
  else
      strPRICE    = thisForm.PRICE.value;

  if ( thisForm.NAME == null )
      strNAME      = "";
  else
      strNAME      = thisForm.NAME.value;

  if ( thisForm.SHIPPING == null )
      strSHIPPING  = "0.00";
  else
      strSHIPPING  = thisForm.SHIPPING.value;

  if ( thisForm.ADDITIONALINFO == null ) {
      strADDTLINFO = "";
  } else {
      strADDTLINFO = thisForm.ADDITIONALINFO[thisForm.ADDITIONALINFO.selectedIndex].value;
  }
  if ( thisForm.ADDITIONALINFO2 != null ) {
      strADDTLINFO += "; " + thisForm.ADDITIONALINFO2[thisForm.ADDITIONALINFO2.selectedIndex].value;
  }
  if ( thisForm.ADDITIONALINFO3 != null ) {
      strADDTLINFO += "; " + thisForm.ADDITIONALINFO3[thisForm.ADDITIONALINFO3.selectedIndex].value;
  }
  if ( thisForm.ADDITIONALINFO4 != null ) {
      strADDTLINFO += "; " + thisForm.ADDITIONALINFO4[thisForm.ADDITIONALINFO4.selectedIndex].value;
  }

  //Is this product already in the cart?  If so, increment quantity instead of adding another.
  for ( i = 1; i <= iNumberOrdered; i++ ) {
      NewOrder = "Order." + i;
      database = "";
      database = GetCookie(NewOrder);

      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);

      fields = new Array;
      fields[0] = database.substring( 0, Token0 );
      fields[1] = database.substring( Token0+1, Token1 );
      fields[2] = database.substring( Token1+1, Token2 );
      fields[3] = database.substring( Token2+1, Token3 );
      fields[4] = database.substring( Token3+1, Token4 );
      fields[5] = database.substring( Token4+1, database.length );

      if ( fields[0] == strID_NUM &&
          fields[2] == strPRICE  &&
          fields[3] == strNAME  &&
          fields[5] == strADDTLINFO
        ) {
        bAlreadyInCart = true;
        dbUpdatedOrder = strID_NUM    + "|" +
                          (parseInt(strQUANTITY)+parseInt(fields[1]))  + "|" +
                          strPRICE    + "|" +
                          strNAME      + "|" +
                          strSHIPPING  + "|" +
                          strADDTLINFO;
        strNewOrder = "Order." + i;
        DeleteCookie(strNewOrder, "/");
        SetCookie(strNewOrder, dbUpdatedOrder, null, "/");
        notice = strQUANTITY + " " + strNAME + strAdded;
        break;
      }
  }


  if ( !bAlreadyInCart ) {
      iNumberOrdered++;

      if ( iNumberOrdered > 12 )
        alert( strSorry );
      else {
        dbUpdatedOrder = strID_NUM    + "|" +
                          strQUANTITY  + "|" +
                          strPRICE    + "|" +
                          strNAME      + "|" +
                          strSHIPPING  + "|" +
                          strADDTLINFO;

        strNewOrder = "Order." + iNumberOrdered;
        SetCookie(strNewOrder, dbUpdatedOrder, null, "/");
        SetCookie("NumberOrdered", iNumberOrdered, null, "/");
        notice = strQUANTITY + " " + strNAME + strAdded;
      }
  }

  if ( DisplayNotice )
      alert(notice);
}


//---------------------------------------------------------------------||
// FUNCTION:    getCookieVal                                          ||
// PARAMETERS:  offset                                                ||
// RETURNS:    URL unescaped Cookie Value                            ||
// PURPOSE:    Get a specific value from a cookie                    ||
//---------------------------------------------------------------------||
function getCookieVal (offset) {
  var endstr = document.cookie.indexOf (";", offset);

  if ( endstr == -1 )
      endstr = document.cookie.length;
  return(unescape(document.cookie.substring(offset, endstr)));
}


//---------------------------------------------------------------------||
// FUNCTION:    FixCookieDate                                          ||
// PARAMETERS:  date                                                  ||
// RETURNS:    date                                                  ||
// PURPOSE:    Fixes cookie date, stores back in date                ||
//---------------------------------------------------------------------||
function FixCookieDate (date) {
  var base = new Date(0);
  var skew = base.getTime();

  date.setTime (date.getTime() - skew);
}


//---------------------------------------------------------------------||
// FUNCTION:    GetCookie                                              ||
// PARAMETERS:  Name                                                  ||
// RETURNS:    Value in Cookie                                        ||
// PURPOSE:    Retrieves cookie from users browser                    ||
//---------------------------------------------------------------------||
function GetCookie (name) {
  var arg = name + "=";
  var alen = arg.length;
  var clen = document.cookie.length;
  var i = 0;

  while ( i < clen ) {
      var j = i + alen;
      if ( document.cookie.substring(i, j) == arg ) return(getCookieVal (j));
      i = document.cookie.indexOf(" ", i) + 1;
      if ( i == 0 ) break;
  }

  return(null);
}


//---------------------------------------------------------------------||
// FUNCTION:    SetCookie                                              ||
// PARAMETERS:  name, value, expiration date, path, domain, security  ||
// RETURNS:    Null                                                  ||
// PURPOSE:    Stores a cookie in the users browser                  ||
//---------------------------------------------------------------------||
function SetCookie (name,value,expires,path,domain,secure) {
  document.cookie = name + "=" + escape (value) +
                    ((expires) ? "; expires=" + expires.toGMTString() : "") +
                    ((path) ? "; path=" + path : "") +
                    ((domain) ? "; domain=" + domain : "") +
                    ((secure) ? "; secure" : "");
}


//---------------------------------------------------------------------||
// FUNCTION:    DeleteCookie                                          ||
// PARAMETERS:  Cookie name, path, domain                              ||
// RETURNS:    null                                                  ||
// PURPOSE:    Removes a cookie from users browser.                  ||
//---------------------------------------------------------------------||
function DeleteCookie (name,path,domain) {
  if ( GetCookie(name) ) {
      document.cookie = name + "=" +
                        ((path) ? "; path=" + path : "") +
                        ((domain) ? "; domain=" + domain : "") +
                        "; expires=Thu, 01-Jan-70 00:00:01 GMT";
  }
}


//---------------------------------------------------------------------||
// FUNCTION:    MoneyFormat                                            ||
// PARAMETERS:  Number to be formatted                                ||
// RETURNS:    Formatted Number                                      ||
// PURPOSE:    Reformats Dollar Amount to #.## format                ||
//---------------------------------------------------------------------||
function moneyFormat(input) {
  var dollars = Math.floor(input);
  var tmp = new String(input);

  for ( var decimalAt = 0; decimalAt < tmp.length; decimalAt++ ) {
      if ( tmp.charAt(decimalAt)=="." )
        break;
  }

  var cents  = "" + Math.round(input * 100);
  cents = cents.substring(cents.length-2, cents.length)
          dollars += ((tmp.charAt(decimalAt+2)=="9")&&(cents=="00"))? 1 : 0;

  if ( cents == "0" )
      cents = "00";

  return(dollars + "." + cents);
}


//---------------------------------------------------------------------||
// FUNCTION:    RemoveFromCart                                        ||
// PARAMETERS:  Order Number to Remove                                ||
// RETURNS:    Null                                                  ||
// PURPOSE:    Removes an item from a users shopping cart            ||
//---------------------------------------------------------------------||
function RemoveFromCart(RemOrder) {
  if ( confirm( strRemove ) ) {
      NumberOrdered = GetCookie("NumberOrdered");
      for ( i=RemOrder; i < NumberOrdered; i++ ) {
        NewOrder1 = "Order." + (i+1);
        NewOrder2 = "Order." + (i);
        database = GetCookie(NewOrder1);
        SetCookie (NewOrder2, database, null, "/");
      }
      NewOrder = "Order." + NumberOrdered;
      SetCookie ("NumberOrdered", NumberOrdered-1, null, "/");
      DeleteCookie(NewOrder, "/");
      location.href=location.href;
  }
}


//---------------------------------------------------------------------||
// FUNCTION:    ChangeQuantity                                        ||
// PARAMETERS:  Order Number to Change Quantity                        ||
// RETURNS:    Null                                                  ||
// PURPOSE:    Changes quantity of an item in the shopping cart      ||
//---------------------------------------------------------------------||
function ChangeQuantity(OrderItem,NewQuantity) {
  if ( isNaN(NewQuantity) ) {
      alert( strErrQty );
  } else {
      NewOrder = "Order." + OrderItem;
      database = "";
      database = GetCookie(NewOrder);

      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);

      fields = new Array;
      fields[0] = database.substring( 0, Token0 );
      fields[1] = database.substring( Token0+1, Token1 );
      fields[2] = database.substring( Token1+1, Token2 );
      fields[3] = database.substring( Token2+1, Token3 );
      fields[4] = database.substring( Token3+1, Token4 );
      fields[5] = database.substring( Token4+1, database.length );

      dbUpdatedOrder = fields[0] + "|" +
                      NewQuantity + "|" +
                      fields[2] + "|" +
                      fields[3] + "|" +
                      fields[4] + "|" +
                      fields[5];
      strNewOrder = "Order." + OrderItem;
      DeleteCookie(strNewOrder, "/");
      SetCookie(strNewOrder, dbUpdatedOrder, null, "/");
      location.href=location.href;     
  }
}


//---------------------------------------------------------------------||
// FUNCTION:    GetFromCart                                            ||
// PARAMETERS:  Null                                                  ||
// RETURNS:    Product Table Written to Document                      ||
// PURPOSE:    Draws current cart product table on HTML page          ||
//              **DEPRECATED FUNCTION, USE ManageCart or Checkout**    ||
//---------------------------------------------------------------------||
function GetFromCart( fShipping ) {
  ManageCart( );
}


//---------------------------------------------------------------------||
// FUNCTION:    RadioChecked                                          ||
// PARAMETERS:  Radio button to check                                  ||
// RETURNS:    True if a radio has been checked                      ||
// PURPOSE:    Form fillin validation                                ||
//---------------------------------------------------------------------||
function RadioChecked( radiobutton ) {
  var bChecked = false;
  var rlen = radiobutton.length;
  for ( i=0; i < rlen; i++ ) {
      if ( radiobutton[i].checked )
        bChecked = true;
  }   
  return bChecked;
}


//---------------------------------------------------------------------||
// FUNCTION:    QueryString                                            ||
// PARAMETERS:  Key to read                                            ||
// RETURNS:    value of key                                          ||
// PURPOSE:    Read data passed in via GET mode                      ||
//---------------------------------------------------------------------||
QueryString.keys = new Array();
QueryString.values = new Array();
function QueryString(key) {
  var value = null;
  for (var i=0;i<QueryString.keys.length;i++) {
      if (QueryString.keys[i]==key) {
        value = QueryString.values[i];
        break;
      }
  }
  return value;
}

//---------------------------------------------------------------------||
// FUNCTION:    QueryString_Parse                                      ||
// PARAMETERS:  (URL string)                                          ||
// RETURNS:    null                                                  ||
// PURPOSE:    Parses query string data, must be called before Q.S.  ||
//---------------------------------------------------------------------||
function QueryString_Parse() {
  var query = window.location.search.substring(1);
  var pairs = query.split("&"); for (var i=0;i<pairs.length;i++) {
      var pos = pairs[i].indexOf('=');
      if (pos >= 0) {
        var argname = pairs[i].substring(0,pos);
        var value = pairs[i].substring(pos+1);
        QueryString.keys[QueryString.keys.length] = argname;
        QueryString.values[QueryString.values.length] = value;
      }
  }
}


//---------------------------------------------------------------------||
// FUNCTION:    ManageCart                                            ||
// PARAMETERS:  Null                                                  ||
// RETURNS:    Product Table Written to Document                      ||
// PURPOSE:    Draws current cart product table on HTML page          ||
//---------------------------------------------------------------------||
function ManageCart( ) {
  var iNumberOrdered = 0;    //Number of products ordered
  var fTotal        = 0;    //Total cost of order
  var fTax          = 0;    //Tax amount
  var fShipping      = 35;    //Shipping amount
  var strTotal      = "";  //Total cost formatted as money
  var strTax        = "";  //Total tax formatted as money
  var strShipping    = "";  //Total shipping formatted as money
  var strOutput      = "";  //String to be written to page
  var bDisplay      = true; //Whether to write string to the page (here for programmers)

  iNumberOrdered = GetCookie("NumberOrdered");
  if ( iNumberOrdered == null )
      iNumberOrdered = 0;

  if ( bDisplay )
      strOutput = "<TABLE CLASS=\"nopcart\"><TR>" +
                  "<TD CLASS=\"nopheader\"><B>"+strILabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\"><B>"+strDLabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\"><B>"+strQLabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\"><B>"+strPLabel+"</B></TD>" +
                  (DisplayShippingColumn?"<TD CLASS=\"nopheader\"><B>"+strSLabel+"</B></TD>":"") +
                  "<TD CLASS=\"nopheader\"><B>"+strRLabel+"</B></TD></TR>";

  if ( iNumberOrdered == 0 ) {
      strOutput += "<TR><TD COLSPAN=6 CLASS=\"nopentry\"><CENTER><BR><B>Your cart is empty</B><BR><BR></CENTER></TD></TR>";
  }

  for ( i = 1; i <= iNumberOrdered; i++ ) {
      NewOrder = "Order." + i;
      database = "";
      database = GetCookie(NewOrder);

      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);

      fields = new Array;
      fields[0] = database.substring( 0, Token0 );                // Product ID
      fields[1] = database.substring( Token0+1, Token1 );          // Quantity
      fields[2] = database.substring( Token1+1, Token2 );          // Price
      fields[3] = database.substring( Token2+1, Token3 );          // Product Name/Description
      fields[4] = database.substring( Token3+1, Token4 );          // Shipping Cost
      fields[5] = database.substring( Token4+1, database.length ); //Additional Information

      fTotal    += (parseInt(fields[1]) * parseFloat(fields[2]) );
      fShipping  += (parseInt(fields[1]) * parseFloat(fields[4]) );
      fTax        = (fTotal * TaxRate);
      strTotal    = moneyFormat(fTotal);
      strTax      = moneyFormat(fTax);
      strShipping = moneyFormat(fShipping);

      if ( bDisplay ) {
        strOutput += "<TR><TD CLASS=\"nopentry\">"  + fields[0] + "</TD>";

        if ( fields[5] == "" )
            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + "</TD>";
        else
            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + " - <I>"+ fields[5] + "</I></TD>";

        strOutput += "<TD CLASS=\"nopentry\"><INPUT TYPE=TEXT NAME=Q SIZE=2 VALUE=\"" + fields[1] + "\" onChange=\"ChangeQuantity("+i+", this.value);\"></TD>";
        strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[2]) + "/ea</TD>";

        if ( DisplayShippingColumn ) {
            if ( parseFloat(fields[4]) > 0 )
              strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[4]) + "/ea</TD>";
            else
              strOutput += "<TD CLASS=\"nopentry\">N/A</TD>";
        }

        strOutput += "<TD CLASS=\"nopentry\" ALIGN=CENTER><input type=button value=\" "+strRButton+" \" onClick=\"RemoveFromCart("+i+")\" class=\"nopbutton\"></TD></TR>";
      }

      if ( AppendItemNumToOutput ) {
        strFooter = i;
      } else {
        strFooter = "";
      }
      if ( HiddenFieldsToCheckout ) {
        strOutput += "<input type=hidden name=\"" + OutputItemId        + strFooter + "\" value=\"" + fields[0] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemQuantity  + strFooter + "\" value=\"" + fields[1] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemPrice    + strFooter + "\" value=\"" + fields[2] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemName      + strFooter + "\" value=\"" + fields[3] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemShipping  + strFooter + "\" value=\"" + fields[4] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemAddtlInfo + strFooter + "\" value=\"" + fields[5] + "\">";
      }

  }

  if ( bDisplay ) {
      strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strSUB+"</B></TD>";
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>" + MonetarySymbol + strTotal + "</B></TD>";
      strOutput += "</TR>";

      if ( DisplayShippingRow ) {
        strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strSHIP+"</B></TD>";
        strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>" + MonetarySymbol + strShipping + "</B></TD>";
        strOutput += "</TR>";
      }

      if ( DisplayTaxRow || TaxByRegion ) {
        if ( TaxByRegion ) {
            strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strTAX+"</B></TD>";
            strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>";
            strOutput += "<input type=radio name=\""+OutputOrderTax+"\" value=\"" + strTax + "\">";
            strOutput += TaxablePrompt + ": " + MonetarySymbol + strTax;
            strOutput += "<BR><input type=radio name=\""+OutputOrderTax+"\" value=\"0.00\">";
            strOutput += NonTaxablePrompt + ": " + MonetarySymbol + "0.00";
            strOutput += "</B></TD>";
            strOutput += "</TR>";
        } else {
            strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strTAX+"</B></TD>";
            strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>" + MonetarySymbol + strTax + "</B></TD>";
            strOutput += "</TR>";
        }
      }

      if ( !TaxByRegion ) {
        strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=4><B>"+strTOT+"</B></TD>";
        strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2><B>" + MonetarySymbol + moneyFormat((fTotal + fShipping + fTax)) + "</B></TD>";
        strOutput += "</TR>";
      }
      strOutput += "</TABLE>";

      if ( HiddenFieldsToCheckout ) {
        strOutput += "<input type=hidden name=\""+OutputOrderSubtotal+"\" value=\""+ MonetarySymbol + strTotal + "\">";
        strOutput += "<input type=hidden name=\""+OutputOrderShipping+"\" value=\""+ MonetarySymbol + strShipping + "\">";
        strOutput += "<input type=hidden name=\""+OutputOrderTax+"\"      value=\""+ MonetarySymbol + strTax + "\">";
        strOutput += "<input type=hidden name=\""+OutputOrderTotal+"\"    value=\""+ MonetarySymbol + moneyFormat((fTotal + fShipping + fTax)) + "\">";
      }
  }
  g_TotalCost = (fTotal + fShipping + fTax);

  document.write(strOutput);
  document.close();
}

//---------------------------------------------------------------------||
// FUNCTION:    ValidateCart                                          ||
// PARAMETERS:  Form to validate                                      ||
// RETURNS:    true/false                                            ||
// PURPOSE:    Validates the managecart form                          ||
//---------------------------------------------------------------------||
var g_TotalCost = 0;
function ValidateCart( theForm ) {
  if ( TaxByRegion ) {
      if ( !RadioChecked(eval("theForm."+OutputOrderTax)) ) {
        alert( TaxPrompt );
        return false;
      }
  }

  if ( MinimumOrder >= 0.01 ) {
      if ( g_TotalCost < MinimumOrder ) {
        alert( MinimumOrderPrompt );
        return false;
      }
  }

  return true;
}

//---------------------------------------------------------------------||
// FUNCTION:    CheckoutCart                                          ||
// PARAMETERS:  Null                                                  ||
// RETURNS:    Product Table Written to Document                      ||
// PURPOSE:    Draws current cart product table on HTML page for      ||
//              checkout.                                              ||
//---------------------------------------------------------------------||
function CheckoutCart( ) {
  var iNumberOrdered = 0;    //Number of products ordered
  var fTotal        = 0;    //Total cost of order
  var fTax          = 0;    //Tax amount
  var fShipping      = 35.00;    //Shipping amount
  var strTotal      = "";  //Total cost formatted as money
  var strTax        = "";  //Total tax formatted as money
  var strShipping    = "";  //Total shipping formatted as money
  var strOutput      = "";  //String to be written to page
  var bDisplay      = true; //Whether to write string to the page (here for programmers)
  var strPP          = "";  //Payment Processor Description Field

  iNumberOrdered = GetCookie("NumberOrdered");
  if ( iNumberOrdered == null )
      iNumberOrdered = 0;

  if ( TaxByRegion ) {
      QueryString_Parse();
      fTax = parseFloat( QueryString( OutputOrderTax ) );
      strTax = moneyFormat(fTax);
  }

  if ( bDisplay )
      strOutput = "<TABLE CLASS=\"nopcart\"><TR>" +
                  "<TD CLASS=\"nopheader\"><B>"+strILabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\"><B>"+strDLabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\"><B>"+strQLabel+"</B></TD>" +
                  "<TD CLASS=\"nopheader\"><B>"+strPLabel+"</B></TD>" +
                  (DisplayShippingColumn?"<TD CLASS=\"nopheader\"><B>"+strSLabel+"</B></TD>":"") +
                  "</TR>";

  for ( i = 1; i <= iNumberOrdered; i++ ) {
      NewOrder = "Order." + i;
      database = "";
      database = GetCookie(NewOrder);

      Token0 = database.indexOf("|", 0);
      Token1 = database.indexOf("|", Token0+1);
      Token2 = database.indexOf("|", Token1+1);
      Token3 = database.indexOf("|", Token2+1);
      Token4 = database.indexOf("|", Token3+1);

      fields = new Array;
      fields[0] = database.substring( 0, Token0 );                // Product ID
      fields[1] = database.substring( Token0+1, Token1 );          // Quantity
      fields[2] = database.substring( Token1+1, Token2 );          // Price
      fields[3] = database.substring( Token2+1, Token3 );          // Product Name/Description
      fields[4] = database.substring( Token3+1, Token4 );          // Shipping Cost
      fields[5] = database.substring( Token4+1, database.length ); //Additional Information

      fTotal    += (parseInt(fields[1]) * parseFloat(fields[2]) );
      fShipping  += (parseInt(fields[1]) * parseFloat(fields[4]) );
      if ( !TaxByRegion ) fTax = (fTotal * TaxRate);
      strTotal    = moneyFormat(fTotal);
      if ( !TaxByRegion ) strTax = moneyFormat(fTax);
      strShipping = moneyFormat(fShipping);

      if ( bDisplay ) {
        strOutput += "<TR><TD CLASS=\"nopentry\">"  + fields[0] + "</TD>";

        if ( fields[5] == "" )
            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + "</TD>";
        else
            strOutput += "<TD CLASS=\"nopentry\">"  + fields[3] + " - <I>"+ fields[5] + "</I></TD>";

        strOutput += "<TD CLASS=\"nopentry\">" + fields[1] + "</TD>";
        strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[2]) + "/ea</TD>";

        if ( DisplayShippingColumn ) {
            if ( parseFloat(fields[4]) > 0 )
              strOutput += "<TD CLASS=\"nopentry\">"+ MonetarySymbol + moneyFormat(fields[4]) + "/ea</TD>";
            else
              strOutput += "<TD CLASS=\"nopentry\">N/A</TD>";
        }

        strOutput += "</TR>";
      }

      if ( AppendItemNumToOutput ) {
        strFooter = i;
      } else {
        strFooter = "";
      }
      if ( PaymentProcessor != '' ) {
        //Process description field for payment processors instead of hidden values.
        //Format Description of product as:
        // ID, Name, Qty X
        strPP += fields[0] + ", " + fields[3];
        if ( fields[5] != "" )
            strPP += " - " + fields[5];
        strPP += ", Qty. " + fields[1] + "\n";
      } else {
        strOutput += "<input type=hidden name=\"" + OutputItemId        + strFooter + "\" value=\"" + fields[0] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemQuantity  + strFooter + "\" value=\"" + fields[1] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemPrice    + strFooter + "\" value=\"" + fields[2] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemName      + strFooter + "\" value=\"" + fields[3] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemShipping  + strFooter + "\" value=\"" + fields[4] + "\">";
        strOutput += "<input type=hidden name=\"" + OutputItemAddtlInfo + strFooter + "\" value=\"" + fields[5] + "\">";
      }

  }

  if ( bDisplay ) {
      strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strSUB+"</B></TD>";
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2 ALIGN=RIGHT><B>" + MonetarySymbol + strTotal + "</B></TD>";
      strOutput += "</TR>";

      if ( DisplayShippingRow ) {
        strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strSHIP+"</B></TD>";
        strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2 ALIGN=RIGHT><B>" + MonetarySymbol + strShipping + "</B></TD>";
        strOutput += "</TR>";
      }

      if ( DisplayTaxRow || TaxByRegion ) {
        strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strTAX+"</B></TD>";
        strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2 ALIGN=RIGHT><B>" + MonetarySymbol + strTax + "</B></TD>";
        strOutput += "</TR>";
      }

      strOutput += "<TR><TD CLASS=\"noptotal\" COLSPAN=3><B>"+strTOT+"</B></TD>";
      strOutput += "<TD CLASS=\"noptotal\" COLSPAN=2 ALIGN=RIGHT><B>" + MonetarySymbol + moneyFormat((fTotal + fShipping + fTax)) + "</B></TD>";
      strOutput += "</TR>";

      strOutput += "</TABLE>";

     
      if ( PaymentProcessor == 'an') {
        //Process this for Authorize.net WebConnect
        strOutput += "<input type=hidden name=\"x_Version\" value=\"3.0\">";
        strOutput += "<input type=hidden name=\"x_Show_Form\" value=\"PAYMENT_FORM\">";
        strOutput += "<input type=hidden name=\"x_Description\" value=\""+ strPP + "\">";
        strOutput += "<input type=hidden name=\"x_Amount\" value=\""+ moneyFormat((fTotal + fShipping + fTax)) + "\">";
      } else if ( PaymentProcessor == 'wp') {
        //Process this for WorldPay
        strOutput += "<input type=hidden name=\"desc\" value=\""+ strPP + "\">";
        strOutput += "<input type=hidden name=\"amount\" value=\""+ moneyFormat((fTotal + fShipping + fTax)) + "\">";
      } else if ( PaymentProcessor == 'lp') {
        //Process this for LinkPoint       
        strOutput += "<input type=hidden name=\"mode\" value=\"fullpay\">";
        strOutput += "<input type=hidden name=\"chargetotal\" value=\""+ moneyFormat((fTotal + fShipping + fTax)) + "\">";
        strOutput += "<input type=hidden name=\"tax\" value=\""+ MonetarySymbol + strTax + "\">";
        strOutput += "<input type=hidden name=\"subtotal\" value=\""+ MonetarySymbol + strTotal + "\">";
        strOutput += "<input type=hidden name=\"shipping\" value=\""+ MonetarySymbol + strShipping + "\">";
        strOutput += "<input type=hidden name=\"desc\" value=\""+ strPP + "\">";
      } else {
        strOutput += "<input type=hidden name=\""+OutputOrderSubtotal+"\" value=\""+ MonetarySymbol + strTotal + "\">";
        strOutput += "<input type=hidden name=\""+OutputOrderShipping+"\" value=\""+ MonetarySymbol + strShipping + "\">";
        strOutput += "<input type=hidden name=\""+OutputOrderTax+"\"      value=\""+ MonetarySymbol + strTax + "\">";
        strOutput += "<input type=hidden name=\""+OutputOrderTotal+"\"    value=\""+ MonetarySymbol + moneyFormat((fTotal + fShipping + fTax)) + "\">";
      }
  }

  document.write(strOutput);
  document.close();
}

//=====================================================================||
//              END NOP Design SmartPost Shopping Cart                ||
//=====================================================================||
Avatar billede Slettet bruger
05. januar 2004 - 04:02 #11
OK, det bliver gemt i nogle cookies af javascriptet. Jeg har ikke styr på javascript, så det kan jeg ikke hjælpe med. Desværre.
Avatar billede Cyberdata.dk Praktikant
05. januar 2004 - 04:05 #12
kan du ikke lige smide et svar igen
Avatar billede Cyberdata.dk Praktikant
05. januar 2004 - 04:10 #13
ok, du har fået dine point :-) men tak for hjælpen, jeg prøver i javascript afd.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester