Avatar billede trendt Nybegynder
19. oktober 2004 - 22:53 Der er 4 kommentarer og
1 løsning

indkøbsvogn sendes vha mail()

Hej alle ...
et spørgsmål fra lidt af en php-noob:) Jeg har fundet et dejligt script til en indkøbsvogn ( http://www.macromedia.com/devnet/mx/dreamweaver/articles/php_cart.html )
Jeg har så tilføjet mail()(fundet på php.net) jeg kan sagtens sende det navn som man indtaster (feks. navn: $_POST[navn]) og total summen ($totalCost) men hvordan kan jeg få de ting med som ligger i kurven (samt antal)?



-------- fra cart.php ------
<?php

    include("db.php");
       
    switch($_GET["action"])
    {
        case "add_item":
        {
            AddItem($_GET["id"], $_GET["qty"]);
            ShowCart();
            break;
        }
        case "update_item":
        {
            UpdateItem($_GET["id"], $_GET["qty"]);
            ShowCart();
            break;
        }
        case "remove_item":
        {
            RemoveItem($_GET["id"]);
            ShowCart();
            break;
        }
        default:
        {
            ShowCart();
        }
    }

    function AddItem($itemId, $qty)
    {
        // Will check whether or not this item
        // already exists in the cart table.
        // If it does, the UpdateItem function
        // will be called instead
       
        global $dbServer, $dbUser, $dbPass, $dbName;

        // Get a connection to the database
        $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);
       
        // Check if this item already exists in the users cart table
        $result = mysql_query("select count(*) from cart where cookieId = '" . GetCartId() . "' and itemId = $itemId");
        $row = mysql_fetch_row($result);
        $numRows = $row[0];
       
        if($numRows == 0)
        {
            // This item doesn't exist in the users cart,
            // we will add it with an insert query

            @mysql_query("insert into cart(cookieId, itemId, qty) values('" . GetCartId() . "', $itemId, $qty)");
        }
        else
        {
            // This item already exists in the users cart,
            // we will update it instead
           
            UpdateItem($itemId, $qty);
        }
    }
   
    function UpdateItem($itemId, $qty)
    {
        // Updates the quantity of an item in the users cart.
        // If the qutnaity is zero, then RemoveItem will be
        // called instead

        global $dbServer, $dbUser, $dbPass, $dbName;

        // Get a connection to the database
        $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);
       
        if($qty == 0)
        {
            // Remove the item from the users cart
            RemoveItem($itemId);
        }
        else
        {
            mysql_query("update cart set qty = $qty where cookieId = '" . GetCartId() . "' and itemId = $itemId");
        }
    }
   
    function RemoveItem($itemId)
    {
        // Uses an SQL delete statement to remove an item from
        // the users cart

        global $dbServer, $dbUser, $dbPass, $dbName;

        // Get a connection to the database
        $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);
       
        mysql_query("delete from cart where cookieId = '" . GetCartId() . "' and itemId = $itemId");
    }
   
    function ShowCart()
    {
        // Gets each item from the cart table and display them in
        // a tabulated format, as well as a final total for the cart
       
        global $dbServer, $dbUser, $dbPass, $dbName;

        // Get a connection to the database
        $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);
       
        $totalCost = 0;
        $result = mysql_query("select * from cart inner join items on cart.itemId = items.itemId where cart.cookieId = '" . GetCartId() . "' order by items.itemName asc");
        ?>
        <html>
        <head>
        <title> Your Shopping Cart </title>
        <script language="JavaScript">
       
            function UpdateQty(item)
            {
                itemId = item.name;
                newQty = item.options[item.selectedIndex].text;
               
                document.location.href = 'cart.php?action=update_item&id='+itemId+'&qty='+newQty;
            }
       
        </script>
        <style type="text/css">
<!--
.style6 {font-size: small}
.style8 {font-size: small; font-weight: bold; }
-->
        </style>
        </head>
        <body bgcolor="#ffffff">
        <h1>Din Indk&oslash;bskurv </h1>
        <form name="frmCart" method="get">
        <table width="100%" cellspacing="0" cellpadding="0" border="0">
            <tr>
                <td width="15%" height="25" bgcolor="red">
                    <font face="verdana" size="1" color="white">
                        &nbsp;&nbsp;<b>Antal</b></font>
                </td>
                <td width="55%" height="25" bgcolor="red">
                    <font face="verdana" size="1" color="white">
                        <b>Produkt</b></font>
                </td>
                <td width="20%" height="25" bgcolor="red">
                    <font face="verdana" size="1" color="white">
                        <b>stk pris </b>
                    </font>
                </td>
                <td width="10%" height="25" bgcolor="red">
                    <font face="verdana" size="1" color="white">
                        <b>fjern?</b>
                    </font>
                </td>
            </tr>
            <?php
           
            while($row = mysql_fetch_array($result))
            {
                // Increment the total cost of all items
               
                $totalCost += ($row["qty"] * $row["itemPrice"]);
                ?>
                    <tr>
                        <td width="15%" height="25">
                            <font face="verdana" size="1" color="black">
                                <select name="<?php echo $row["itemId"]; ?>" onChange="UpdateQty(this)">
                                <?php
                               
                                    for($i = 1; $i <= 20; $i++)
                                    {
                                        echo "<option ";
                                        if($row["qty"] == $i)
                                        {
                                            echo " SELECTED ";
                                        }
                                        echo ">" . $i . "</option>";
                                    }
                                ?>
                                </select>
                            </font>
                        </td>
                        <td width="55%" height="25">
                            <font face="verdana" size="1" color="black">
                                <?php echo $row["itemName"]; ?>
                            </font>
                        </td>
                        <td width="20%" height="25">
                            <font face="verdana" size="1" color="black">
                            <?php echo number_format($row["itemPrice"], 2, ".", ","); ?> kr
                            </font>
                        </td>
                        <td width="10%" height="25">
                            <font face="verdana" size="1" color="black">
                                <a href="cart.php?action=remove_item&id=<?php echo $row["itemId"]; ?>">fjern</a>
                            </font>
                        </td>
                    </tr>
                <?php
            }
           
            // Display the total
            ?>
                    <tr>
                        <td width="100%" colspan="4">
                            <hr size="1" color="red" NOSHADE>
                        </td>
                    </tr>
                    <tr>
                        <td width="70%" colspan="2">
                            <font face="verdana" size="1" color="black">
                                <a href="products.php">&lt;&lt; Tilbage til butik </a></font>
                        </td>
                        <td width="30%" colspan="2">
                            <font face="verdana" size="2" color="black">
                                <b>Total: <?php echo number_format($totalCost, 2, ".", ","); ?> kr </b>
                            </font>
                        </td>
                    </tr>
          </table>
                <p>&nbsp;</p>
        </form>
            <p>
           
           
                <?PHP
if(isset($_POST['navn'])){

mail("DEW@DEWDEW.DEWDEW $_POST[email]", "DEW DEW DEW", "Bestilling fra DEW DEW DEW:

Navn og adresse:
\n navn: $_POST[navn]
\n adr: $_POST[adr]
\n by: $_POST[by]
\n postnr: $_POST[postnr]
\n total: $totalCost
\n e-mail: $_POST[email]
\n levering: $_POST[levering]

\n betaling: $_POST[betaling]

",

"From: dew@dew.dew

<$_POST[mail]>");
echo "Din bestilling er modtaget...";
}
?>
</p>
            <p><span class="style8">On-line bestilling: </span> </p>
            <form name="form1" method="post" action="">
              <p class="style6"> Navn og adresse:<br>
                  <input name="navn" type="text" id="navn" value="Navn" size="20">
                  <br>
                  <input name="adr" type="text" id="adr" value="Adresse" size="20">
                  <br>
                  <input name="by" type="text" id="by" value="By" size="20">
                  <br>
                  <input name="postnr" type="text" id="postnr" value="Postnr" size="10">
                  <br>
                  <br>
                  <input name="email" type="text" id="email" value="e-mail" size="20">
                  <br>
                  <br>
    Levering: <br>
    <label>
    <input type="radio" name="levering" value="postdanmark">
    postdanmark </label>
    <br>
    <label>
    <input type="radio" name="levering" value="afhenting">
    afhenting</label>
              </p>
              <p class="style6">Betaling:<br>
                  <label>
                  <input type="radio" name="betaling" value="bank">
    bankoverf&oslash;rsel</label>
                  <br>
                  <label>
                  <input type="radio" name="betaling" value="efterkrav">
    efterkrav</label>
                  <br>
                  <label>
                  <input type="radio" name="betaling" value="kontant">
    kontant ved afhentning</label>
                  <br>
              </p>
              <p> <span class="style6">
                <input type="submit" value="Bestil">
              </span></p>
        </form>
            <p>&nbsp;            </p>
        </body>
</html>
            <?php
    }

?>

--------- SLUT -----


ligger på http://www.trendt.dk/underwear/products.php

Håber der er nogen der kan hjælpe:)
Avatar billede whatever Nybegynder
19. oktober 2004 - 23:19 #1
Prøv dette (ikke testet):


<?php

    include("db.php");
       
    switch($_GET["action"])
    {
        case "add_item":
        {
            AddItem($_GET["id"], $_GET["qty"]);
            ShowCart();
            break;
        }
        case "update_item":
        {
            UpdateItem($_GET["id"], $_GET["qty"]);
            ShowCart();
            break;
        }
        case "remove_item":
        {
            RemoveItem($_GET["id"]);
            ShowCart();
            break;
        }
        default:
        {
            ShowCart();
        }
    }

    function AddItem($itemId, $qty)
    {
        // Will check whether or not this item
        // already exists in the cart table.
        // If it does, the UpdateItem function
        // will be called instead
       
        global $dbServer, $dbUser, $dbPass, $dbName;

        // Get a connection to the database
        $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);
       
        // Check if this item already exists in the users cart table
        $result = mysql_query("select count(*) from cart where cookieId = '" . GetCartId() . "' and itemId = $itemId");
        $row = mysql_fetch_row($result);
        $numRows = $row[0];
       
        if($numRows == 0)
        {
            // This item doesn't exist in the users cart,
            // we will add it with an insert query

            @mysql_query("insert into cart(cookieId, itemId, qty) values('" . GetCartId() . "', $itemId, $qty)");
        }
        else
        {
            // This item already exists in the users cart,
            // we will update it instead
           
            UpdateItem($itemId, $qty);
        }
    }
   
    function UpdateItem($itemId, $qty)
    {
        // Updates the quantity of an item in the users cart.
        // If the qutnaity is zero, then RemoveItem will be
        // called instead

        global $dbServer, $dbUser, $dbPass, $dbName;

        // Get a connection to the database
        $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);
       
        if($qty == 0)
        {
            // Remove the item from the users cart
            RemoveItem($itemId);
        }
        else
        {
            mysql_query("update cart set qty = $qty where cookieId = '" . GetCartId() . "' and itemId = $itemId");
        }
    }
   
    function RemoveItem($itemId)
    {
        // Uses an SQL delete statement to remove an item from
        // the users cart

        global $dbServer, $dbUser, $dbPass, $dbName;

        // Get a connection to the database
        $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);
       
        mysql_query("delete from cart where cookieId = '" . GetCartId() . "' and itemId = $itemId");
    }
   
    function ShowCart()
    {
        // Gets each item from the cart table and display them in
        // a tabulated format, as well as a final total for the cart
       
        global $dbServer, $dbUser, $dbPass, $dbName;

        // Get a connection to the database
        $cxn = @ConnectToDb($dbServer, $dbUser, $dbPass, $dbName);
       
        $totalCost = 0;
        $result = mysql_query("select * from cart inner join items on cart.itemId = items.itemId where cart.cookieId = '" . GetCartId() . "' order by items.itemName asc");
        ?>
        <html>
        <head>
        <title> Your Shopping Cart </title>
        <script language="JavaScript">
       
            function UpdateQty(item)
            {
                itemId = item.name;
                newQty = item.options[item.selectedIndex].text;
               
                document.location.href = 'cart.php?action=update_item&id='+itemId+'&qty='+newQty;
            }
       
        </script>
        <style type="text/css">
<!--
.style6 {font-size: small}
.style8 {font-size: small; font-weight: bold; }
-->
        </style>
        </head>
        <body bgcolor="#ffffff">
        <h1>Din Indk&oslash;bskurv </h1>
        <form name="frmCart" method="get">
        <table width="100%" cellspacing="0" cellpadding="0" border="0">
            <tr>
                <td width="15%" height="25" bgcolor="red">
                    <font face="verdana" size="1" color="white">
                        &nbsp;&nbsp;<b>Antal</b></font>
                </td>
                <td width="55%" height="25" bgcolor="red">
                    <font face="verdana" size="1" color="white">
                        <b>Produkt</b></font>
                </td>
                <td width="20%" height="25" bgcolor="red">
                    <font face="verdana" size="1" color="white">
                        <b>stk pris </b>
                    </font>
                </td>
                <td width="10%" height="25" bgcolor="red">
                    <font face="verdana" size="1" color="white">
                        <b>fjern?</b>
                    </font>
                </td>
            </tr>
            <?php

            $order_lines = "";

            while($row = mysql_fetch_array($result))
            {
                // Increment the total cost of all items

                $order_lines .= $row["qty"]."  ".$row["itemName"]."  ".number_format($row["itemPrice"], 2, ".", ",")."\n";
               
                $totalCost += ($row["qty"] * $row["itemPrice"]);
                ?>
                    <tr>
                        <td width="15%" height="25">
                            <font face="verdana" size="1" color="black">
                                <select name="<?php echo $row["itemId"]; ?>" onChange="UpdateQty(this)">
                                <?php
                               
                                    for($i = 1; $i <= 20; $i++)
                                    {
                                        echo "<option ";
                                        if($row["qty"] == $i)
                                        {
                                            echo " SELECTED ";
                                        }
                                        echo ">" . $i . "</option>";
                                    }
                                ?>
                                </select>
                            </font>
                        </td>
                        <td width="55%" height="25">
                            <font face="verdana" size="1" color="black">
                                <?php echo $row["itemName"]; ?>
                            </font>
                        </td>
                        <td width="20%" height="25">
                            <font face="verdana" size="1" color="black">
                            <?php echo number_format($row["itemPrice"], 2, ".", ","); ?> kr
                            </font>
                        </td>
                        <td width="10%" height="25">
                            <font face="verdana" size="1" color="black">
                                <a href="cart.php?action=remove_item&id=<?php echo $row["itemId"]; ?>">fjern</a>
                            </font>
                        </td>
                    </tr>
                <?php
            }
           
            // Display the total
            ?>
                    <tr>
                        <td width="100%" colspan="4">
                            <hr size="1" color="red" NOSHADE>
                        </td>
                    </tr>
                    <tr>
                        <td width="70%" colspan="2">
                            <font face="verdana" size="1" color="black">
                                <a href="products.php">&lt;&lt; Tilbage til butik </a></font>
                        </td>
                        <td width="30%" colspan="2">
                            <font face="verdana" size="2" color="black">
                                <b>Total: <?php echo number_format($totalCost, 2, ".", ","); ?> kr </b>
                            </font>
                        </td>
                    </tr>
          </table>
                <p>&nbsp;</p>
        </form>
            <p>
           
           
                <?PHP
if(isset($_POST['navn'])){

mail("DEW@DEWDEW.DEWDEW $_POST[email]", "DEW DEW DEW", "Bestilling fra DEW DEW DEW:

Navn og adresse:
\n navn: $_POST[navn]
\n adr: $_POST[adr]
\n by: $_POST[by]
\n postnr: $_POST[postnr]
\n total: $totalCost
\n e-mail: $_POST[email]
\n levering: $_POST[levering]
\n betaling: $_POST[betaling]
\n Orderlinier:\n
$order_lines

",

"From: dew@dew.dew

<$_POST[mail]>");
echo "Din bestilling er modtaget...";
}
?>
</p>
            <p><span class="style8">On-line bestilling: </span> </p>
            <form name="form1" method="post" action="">
              <p class="style6"> Navn og adresse:<br>
                  <input name="navn" type="text" id="navn" value="Navn" size="20">
                  <br>
                  <input name="adr" type="text" id="adr" value="Adresse" size="20">
                  <br>
                  <input name="by" type="text" id="by" value="By" size="20">
                  <br>
                  <input name="postnr" type="text" id="postnr" value="Postnr" size="10">
                  <br>
                  <br>
                  <input name="email" type="text" id="email" value="e-mail" size="20">
                  <br>
                  <br>
    Levering: <br>
    <label>
    <input type="radio" name="levering" value="postdanmark">
    postdanmark </label>
    <br>
    <label>
    <input type="radio" name="levering" value="afhenting">
    afhenting</label>
              </p>
              <p class="style6">Betaling:<br>
                  <label>
                  <input type="radio" name="betaling" value="bank">
    bankoverf&oslash;rsel</label>
                  <br>
                  <label>
                  <input type="radio" name="betaling" value="efterkrav">
    efterkrav</label>
                  <br>
                  <label>
                  <input type="radio" name="betaling" value="kontant">
    kontant ved afhentning</label>
                  <br>
              </p>
              <p> <span class="style6">
                <input type="submit" value="Bestil">
              </span></p>
        </form>
            <p>&nbsp;            </p>
        </body>
</html>
            <?php
    }

?>
Avatar billede trendt Nybegynder
19. oktober 2004 - 23:54 #2
har lige prøvet ... det virker helt perfekt ... 1000 tak :D
Avatar billede trendt Nybegynder
20. oktober 2004 - 00:20 #3
hvorfor magter jeg ikke at forstå hvodan man tildeler de åndsvage point :@ ... jeg kigger videre... argh
Avatar billede whatever Nybegynder
20. oktober 2004 - 20:06 #4
Har du gennemskuet det, eller kæmper du stadig?
Avatar billede trendt Nybegynder
28. januar 2009 - 09:53 #5
lukket
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