为什么我在cart.php
"致命错误:调用未定义的函数money_format()in 第112行和第34行的C:\ xampp \ htdocs \ link \ onlinestore \ cart.php;
cart.php:
<?php
session_start();
error_reporting(E_ALL); ini_set('display_errors', '1'); include
"storescripts/connect_to_mysql.php"; ?> <?php
if (isset($_POST['pid'])) {
$pid = $_POST['pid']; $wasFound = false; $i = 0;
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
if (isset($_GET['cmd']) && $_GET['cmd'] == "emptycart") {
unset($_SESSION["cart_array"]); }
?>
<?php
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
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
$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="chowdhurym79@gmail.com">'; // 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 = 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="custom" value="' . $product_id_array . '"> <input
type="hidden" name="notify_url"
value="https://www.yoursite.com/storescripts/my_ipn.php"> <input
type="hidden" name="return"
value="https://www.yoursite.com/checkout_complete.php"> <input
type="hidden" name="rm" value="2"> <input type="hidden" name="cbt"
value="Return to The Store"> <input type="hidden"
name="cancel_return"
value="https://www.yoursite.com/paypal_cancel.php"> <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"> <?php include_once("template_header.php");?>
<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 /> <?php //echo $pp_checkout_btn; ?>
<br />
<br />
<a href="cart.php?cmd=emptycart">Click Here to Empty Your Shopping Cart</a>
</div> <br /> </div> <?php include_once("template_footer.php");?> </div>
</body>
</html>
答案 0 :(得分:1)
来自http://php.net/manual/en/function.money-format.php注释:
函数money_format()仅在系统具有strfmon时定义 能力。例如,Windows没有,所以money_format()就是 在Windows中未定义。
您可能需要检查该Windows服务器上的PHP配置。