Jump to content

How to send to my database what other person order ..


nia_st210

Recommended Posts

 

Hello everyone , I am new to php  .. I am trying to make website that other people can order my books.So I saw video tutorial

about making shopping cart and everything works , until part when other person need to send me information what ordered.

With paypal it works , but in my country paypal is not available to use , so I want them to send me their details , and I will send them books .

I made database , it works to get their details , but can't get hidden parts , product_id , product_id_array and cartTotal so I can know what they ordered , and how much they need to pay me .. How to "grab" what they ordered , they shopping cart when have products .. Thanks in advance for help :)))

 

cart.php codes

 

  Quote

<?php

session_start(); // Start session first thing in script

// Script Error Reporting

error_reporting(E_ALL);

ini_set('display_errors', '1');

// Connect to the MySQL database 

include "storescripts/connect_to_mysql.php";

?>

<?php

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//      Section 1 (if user attempts to add something to the cart from the product page)

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

if (isset($_POST['pid'])) {

    $pid = $_POST['pid'];

$wasFound = false;

$i = 0;

// If the cart session variable is not set or cart array is empty

if (!isset($_SESSION["cart_array"]) || count($_SESSION["cart_array"]) < 1) {

    // RUN IF THE CART IS EMPTY OR NOT SET

$_SESSION["cart_array"] = array(0 => array("item_id" => $pid, "quantity" => 1));

} else {

// RUN IF THE CART HAS AT LEAST ONE ITEM IN IT

foreach ($_SESSION["cart_array"] as $each_item) {

      $i++;

      while (list($key, $value) = each($each_item)) {

  if ($key == "item_id" && $value == $pid) {

  // That item is in cart already so let's adjust its quantity using array_splice()

  array_splice($_SESSION["cart_array"], $i-1, 1, array(array("item_id" => $pid, "quantity" => $each_item['quantity'] + 1)));

  $wasFound = true;

  } // close if condition

      } // close while loop

      } // close foreach loop

  if ($wasFound == false) {

  array_push($_SESSION["cart_array"], array("item_id" => $pid, "quantity" => 1));

  }

}

header("location: cart.php");

    exit();

}

?>

<?php

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//      Section 2 (if user chooses to empty their shopping cart)

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

if (isset($_GET['cmd']) && $_GET['cmd'] == "emptycart") {

    unset($_SESSION["cart_array"]);

}

?>

<?php

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//      Section 3 (if user chooses to adjust item quantity)

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

if (isset($_POST['item_to_adjust']) && $_POST['item_to_adjust'] != "") {

    // execute some code

$item_to_adjust = $_POST['item_to_adjust'];

$quantity = $_POST['quantity'];

$quantity = preg_replace('#[^0-9]#i', '', $quantity); // filter everything but numbers

if ($quantity >= 100) { $quantity = 99; }

if ($quantity < 1) { $quantity = 1; }

if ($quantity == "") { $quantity = 1; }

$i = 0;

foreach ($_SESSION["cart_array"] as $each_item) {

      $i++;

      while (list($key, $value) = each($each_item)) {

  if ($key == "item_id" && $value == $item_to_adjust) {

  // That item is in cart already so let's adjust its quantity using array_splice()

  array_splice($_SESSION["cart_array"], $i-1, 1, array(array("item_id" => $item_to_adjust, "quantity" => $quantity)));

  } // close if condition

      } // close while loop

} // close foreach loop

}

?>

<?php

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//      Section 4 (if user wants to remove an item from cart)

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

if (isset($_POST['index_to_remove']) && $_POST['index_to_remove'] != "") {

    // Access the array and run code to remove that array index

$key_to_remove = $_POST['index_to_remove'];

if (count($_SESSION["cart_array"]) <= 1) {

unset($_SESSION["cart_array"]);

} else {

unset($_SESSION["cart_array"]["$key_to_remove"]);

sort($_SESSION["cart_array"]);

}

}

?>

 

 

<?php

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

//      Section 5  (render the cart for the user to view on the page)

/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

$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">

    <input type="hidden" name="cmd" value="_cart">

    <input type="hidden" name="upload" value="1">

    <input type="hidden" name="business" value="">';

// Start the For Each loop

$i = 0;

    foreach ($_SESSION["cart_array"] as $each_item) {

$item_id = $each_item['item_id'];

$sql = mysql_query("SELECT * FROM products WHERE id='$item_id' LIMIT 1");

while ($row = mysql_fetch_array($sql)) {

$product_name = $row["product_name"];

$price = $row["price"];

$details = $row["details"];

}

$pricetotal = $price * $each_item['quantity'];

$cartTotal = $pricetotal + $cartTotal;

setlocale(LC_MONETARY, "en_US");

        $pricetotal = number_format ($pricetotal , $decimals = 0);

// 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 = number_format ($cartTotal , $decimals = 0);

$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="custom" value="' . $product_id_array . '">

<input type="hidden" name="notify_url" value="http://mywebsite.com">

<input type="hidden" name="return" value="http://mywebsite.com">

<input type="hidden" name="rm" value="2">

<input type="hidden" name="cbt" value="Return to The Store">

<input type="hidden" name="cancel_return" value="http://mywebsite.com">

<input type="hidden" name="lc" value="US">

<input type="hidden" name="currency_code" value="USD">

<input type="image" src="http://www.paypal.com/en_US/i/btn/x-click-but01.gif" name="submit" alt="Make payments with PayPal - its fast, free and secure!">

</form>';

}

 

?>

 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>Your Cart</title>

<link rel="stylesheet" href="style/style.css" type="text/css" media="screen" />

</head>

<body>

<div align="center" id="mainWrapper">

  <div id="pageContent">

    <div style="margin:24px; text-align:left;">

 

    <br />

    <table width="100%" border="1" cellspacing="0" cellpadding="6">

      <tr>

        <td width="18%" bgcolor="#C5DFFA"><strong>Product</strong></td>

        <td width="45%" bgcolor="#C5DFFA"><strong>Product Description</strong></td>

        <td width="10%" bgcolor="#C5DFFA"><strong>Unit Price</strong></td>

        <td width="9%" bgcolor="#C5DFFA"><strong>Quantity</strong></td>

        <td width="9%" bgcolor="#C5DFFA"><strong>Total</strong></td>

        <td width="9%" bgcolor="#C5DFFA"><strong>Remove</strong></td>

      </tr>

    <?php echo $cartOutput; ?>

    <!-- <tr>

        <td> </td>

        <td> </td>

        <td> </td>

        <td> </td>

        <td> </td>

        <td> </td>

      </tr> -->

    </table>

    <?php echo $cartTotal; ?>

    <br />

<br />

<form action="create.php" method="post">

<input type="hidden" name="inputid" value="<?php echo $id; ?>">

<br/>

<input type="hidden" name="product_id" value="' . $product_id . '">

<br/>

<input type="text" name="inputPayer_email" value="" />

<br/>

<input type="text" name="inputFirst_name" value="" />

<br/>

<input type="text" name="inputLast_name" value="" />

<br/>

<input type="text" name="inputAddress_street" value="" />

<br/>

<input type="text" name="inputAddress_city"  value="" />

<br/>

<input type="text" name="inputAddress_state"  value="" />

<br/>

<input type="hidden" name="custom" value="' . $product_id_array . '">

<br/>

<input type="hidden" name="inputcartTotal" value="" />

 

<input type="submit" name="submit" />

</form>

 

<?php echo $pp_checkout_btn; ?>

    <br />

    <br />

    <a href="cart.php?cmd=emptycart">Click Here to Empty Your Shopping Cart</a>

    </div>

  <br />

  <a href="http://mywebsite.com">Home</a>

  <br/>

  <a href="http://mywebsite.com">Order</a>

  </div>

  <?php include_once("template_footer.php");?>

</div>

</body>

</html>

 

create.php codes

 

  Quote
<?php 

 

$id = $_POST['inputid'];

$product_id = $_POST['inputproduct_id'];

$Payer_email = $_POST['inputPayer_email'];

$First_name = $_POST['inputFirst_name'];

$Last_name = $_POST['inputLast_name'];

$Address_street = $_POST['inputAddress_street'];

$Address_city = $_POST['inputAddress_city'];

$Address_state = $_POST['inputAddress_state'];

$product_id_array = $_POST['inputproduct_id_array'];

$cartTotal = $_POST['inputcartTotal'];

 

if(!$_POST['submit']) {

echo "please fill out this form";

header('Location: index.php');

} else

{

mysql_query("INSERT INTO `transactions` (

`id` ,

`product_id` ,

`payer_email` ,

`first_name` ,

`last_name` ,

`address_street` ,

`address_city` ,

`address_state` ,

`product_id_array` ,

`cartTotal`

)

 

VALUES  (NULL , '$product_id', '$Payer_email', '$First_name', '$Last_name', '$Address_street', '$Address_city', '$Address_state', '$product_id_array', '$cartTotal')") or die(mysql_error());

 

echo "Added already";

header('Location: index.php');

 

}

 

 

?>

 

order form codes

 

  Quote

<form action="create.php" method="post">

<input type="hidden" name="inputid" value="<?php echo $id; ?>">

<br/>

<input type="hidden" name="product_id" value="' . $product_id . '">

<br/>

<input type="text" name="inputPayer_email" value="" />

<br/>

<input type="text" name="inputFirst_name" value="" />

<br/>

<input type="text" name="inputLast_name" value="" />

<br/>

<input type="text" name="inputAddress_street" value="" />

<br/>

<input type="text" name="inputAddress_city"  value="" />

<br/>

<input type="text" name="inputAddress_state"  value="" />

<br/>

<input type="hidden" name="custom" value="' . $product_id_array . '">

<br/>

<input type="hidden" name="inputcartTotal" value="" />

 

<input type="submit" name="submit" />

</form>

 

 

$sql = mysql_query("SELECT * FROM products WHERE id='$item_id' LIMIT 1");
      while ($row = mysql_fetch_array($sql)) {
         $product_name = $row["product_name"];
         $price = $row["price"];
         $details = $row["details"];
      }

 

$productid isn't assigned from what I could see so there is no value passed to:

<input type="hidden" name="product_id" value="' . $product_id . '">

in your form. Perhaps you forgot to assign it in your above query?

 

Your cartTotal:

 

      $pricetotal = $price * $each_item['quantity'];

      $cartTotal = $pricetotal + $cartTotal;

 

$cartTotal is assigned to "" blank. Then your getting your price total $price * $each_item['quantity']; try to echo out $pricetotal and see if it get's set. Also, $cartTotal is $pricetotal + $cartTotal and I'm not following why. Then you later do:

 

$cartTotal = number_format ($cartTotal , $decimals = 0);
   $cartTotal = "<div style='font-size:18px; margin-top:12px;' align='right'>Cart Total : ".$cartTotal." USD</div>";

 

I'm not certian you can do it like this.

 

 

  • 7 months later...

Perhaps you hadn't noticed, but this thread is over 7 months old. If you have a similar question, start a new thread and include your code and any error messages you're getting.

thank for reply !

 

it is the same code : my question ? :

 

" I would like to save the order and not go to paypal, I would like to know what and how to create table recover the value of my cart! it's been one week that I try I can not.

 

how to recover the variable cart and save?

 

sorry I made a translation from French (google)

Archived

This topic is now archived and is closed to further replies.

×
×
  • 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.