Jump to content

Need help with 3rd party cart integration with paypal pdt


jfunchio

Recommended Posts

I have a site with a shopping cart that uses a paypal buy now button.  The button seems to work fine, when I click it everything in my cart on my site shows up how its suppose to in the paypal checkout page.  Then problem is when I try to log into my buyer sandbox account.  It's telling me its the wrong email or password when I know for a fact it is correct.  I know I need to be logged in to the sandbox developer account while using it, but it still wont let me log in.  My site tried to do multiple items using the value _cart for the cmd hidden paypal input and upload.  However when I use another example that only does one item at a time and has preset variables my sandbox paypal accoung logs in fine.  This makes me think there is something wrong with my code.

 

Here is the code to build my paypal button for my site

$cartOutput = "";
$cartTotal = "";
$pp_checkout_btn = '';
$product_id_array = '';
if (!isset($_SESSION["cart_array"]) || count($_SESSION["cart_array"]) < 1) {
    $cartOutput = "<h2 align='center'>Your shopping cart is empty</h2>";
} else {
        // Start PayPal Checkout Button
        $pp_checkout_btn .= '<form action="https://www.paypal.com/cgi-bin/webscr" method="post"  accept-charset="utf-8">
    <input type="hidden" name="cmd" value="_cart">
    <input type="hidden" name="upload" value="1">
    <input type="hidden" name="business" value="pwang@sofpower.com">';
        // Start the For Each loop
        $i = 0;
    foreach ($_SESSION["cart_array"] as $each_item) {
                $item_id = $each_item['item_id'];
                $query = "SELECT * FROM product WHERE id='$item_id' LIMIT 1";
                $result = $db_obj->query($query);
        if($db_obj->error) exit ($db_obj->error);
                //$sql = mysql_query("SELECT * FROM products WHERE id='$item_id' LIMIT 1");
                while ($row = $result->fetch_array(MYSQLI_ASSOC)) {
                        $product_name = $row["product_name"];
                        $price = $row["price"];
                        $details = $row["details"];
                }
                $pricetotal = $price * $each_item['quantity'];
                $cartTotal = $pricetotal + $cartTotal;
                $_SESSION["cart"] = $cartTotal;
                setlocale(LC_MONETARY, "en_US");
        //$pricetotal = money_format("%10.2n", $pricetotal);
                // Dynamic Checkout Btn Assembly
                $x = $i + 1;
                $pp_checkout_btn .= '<input type="hidden" name="item_name_' . $x . '" value="' . $product_name . '">
        <input type="hidden" name="amount_'. $x . '" value="' . $price . '">
        <input type="hidden" name="quantity_' . $x . '" value="' . $each_item['quantity'] . '">  ';
                // Create the product array variable
                $product_id_array .= "$item_id-".$each_item['quantity'].",";
                // Dynamic table row assembly
                $cartOutput .= "<tr>";
                $cartOutput .= '<td><a href="product.php?id=' . $item_id . '">' . $product_name . '</a><br /><img src="inventory_images/' . $item_id . '.jpg" alt="' . $product_name. '" width="40" height="52" border="1" /></td>';
                $cartOutput .= '<td>' . $details . '</td>';
                $cartOutput .= '<td>$' . $price . '</td>';
                $cartOutput .= '<td><form action="cart.php" method="post">
                <input name="quantity" type="text" value="' . $each_item['quantity'] . '" size="1" maxlength="2" />
                <input name="adjustBtn' . $item_id . '" type="submit" value="change" />
                <input name="item_to_adjust" type="hidden" value="' . $item_id . '" />
                </form></td>';
                //$cartOutput .= '<td>' . $each_item['quantity'] . '</td>';
                $cartOutput .= '<td>' . $pricetotal . '</td>';
                 $cartOutput .= '<td><form action="cart.php" method="post"><input name="deleteBtn' . $item_id . '" type="submit" value="X" /><input name="index_to_remove" type="hidden" value="' . $i . '" /></form></td>';
                $cartOutput .= '</tr>';
                $i++;
    }
        setlocale(LC_MONETARY, "en_US");
    //$cartTotal = money_format("%10.2n", $cartTotal);
        $cartTotal = "<div style='font-size:18px; margin-top:12px;' align='right'>Cart Total : ".$cartTotal." USD</div>";

  // Finish the Paypal Checkout Btn
        $pp_checkout_btn .= '

        <input type="hidden" name="return" value="http://webdev.cs.kent.edu/~jfunchio/wp2/HW2/checkout_complete.php">
        <input type="hidden" name="cancel_return" value="http://webdev.cs.kent.edu/~jfunchio/wp2/HW2/paypal_cancel.php">
        <input type="image" src="https://www.paypal.com/images/x-click-butcc.gif" name="submit" alt="Make payments with PayPal - its fast, free and secure!">
        </form>';
}

 

 

Here is the example that works

 

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
<head>
<meta charset="utf-8"/>
<title>SuperStore.Com</title></head>
<body style="margin: 50px">
<h2>Purchase Our Product Online</h2>
<p><img src="hammer.jpeg" alt="Hammer" style="vertical-align: middle" />
   Hammer for $4.49.</p>

<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" accept-charset="utf-8">
<input type="hidden" name="cmd" value="_xclick" />
<input type="hidden" name="business" value="jfunchio@kent.edu" />
<input type="hidden" name="item_name" value="Hammer" />
<input type="hidden" name="amount" value="4.49" />
<input id="tt" type="hidden" name="return" value="success return URL" />
<input id="ff" type="hidden" name="cancel_return" value="failure return URL" />
<!-- company logo for PayPal page -->
<input type="hidden" name="image_url"
       value="http://www.sofpower.com/images/sofppal.gif" />
<input type="hidden" name="cn" value="Special Instructions (optional)" />
<table style="background-color: #ddffee">
<tr><td> </td></tr>
<tr><td>Customer Full Name</td><td>
<input type="text" name="cnm"  size="30" maxlength="50" /></td></tr>
<tr><td><input type="hidden" name="on0" value="customer email address" />
Customer email</td>
<td><input type="text" name="os0" size="30" maxlength="100" /></td></tr>
<tr><td><input type="hidden" name="on1" value="customer institution" />
Customer institution</td>
<td><input type="text" name="os1" size="30" maxlength="100" /></td></tr>
<tr><td> </td></tr>
</table><br />
<input type="image" src="https://www.paypal.com/images/x-click-butcc.gif"
border="0" name="submit"
alt="Make payments with PayPal - it's fast, free and secure!" />
</form>
<p>When payment has been received, we will
also send a confirmation to you by email.<br />
After ordering, if you need to get in touch with us, please
send email to<br />
<tt>customer-service@superstore.com</tt>.</p>
<pre>

</pre>
</body></html>

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.