- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我确实需要一些帮助。在我最感激的其他成员的帮助下,我成功地使用 PHP 代码在我的产品页面上显示了我的库存商品数量。
我对 PHP 很陌生,几天来一直在尝试解决这个问题。
我有一个数据库,其中设置了一个名为“items”的表,如果可能的话,我希望自动更新该表。我知道我可以手动执行此操作,但我想防止过度销售我没有的库存。
例如,当客户下订单时,我希望发生这种情况:
1) 获取“库存”下的库存商品数量,并将数量减 1。2) 用新的库存数量替换我的产品页面上显示的旧数量。
现在,我使用 Mals-e 作为我的购物车,并通过远程调用将所有订单发送到数据库。这工作正常,因此信息进入数据库没有问题。
这是我用来显示数量的代码:
<?php
include("config.php");
mysql_connect($DBhost,$DBuser,$DBpass) or die("Unable to connect to database $DBName");
mysql_select_db($DBName) or die("Unable to select database $DBName");
// Get a specific result from the "items" table
$result = mysql_query("SELECT * FROM items
WHERE Product='Baby Girls Sock Cupcake'");
while($row = mysql_fetch_array($result))
{
echo "Available Stock: ";
echo $row['inventory'] . " " . $row['Inventory'];
}
mysql_close();
?>
这是我的表单代码:
<?php
echo "<form action=\"http://ww6.aitsafe.com/cf/add.cfm\" method=\"post\">\n";
echo "<input type=\"hidden\" name=\"userid\" value=\"12345678\">\n";
echo "<input type=\"hidden\" name=\"id\" value=\"6\">\n";
echo "<input type=\"hidden\" name=\"scode\" value=\"ABCD123\">\n";
echo "<input type=\"hidden\" name=\"nocart\">\n";
echo "<input type=\"hidden\" name=\"return\" value=\"http://www.mysite.co.uk\">\n";
echo "<b>Qty:</b> <input type=\"text\" name=\"qty\" size=\"1\">\n";
echo "<input type=\"hidden\" name=\"product\" value=\"Socks\">\n";
echo "<input type=\"hidden\" name=\"price\" value=\"1.85\">\n";
echo "<input name=\"submit\" value=\"Add to Cart\" type=\"submit\">\n";
echo "</form>";
?>
这些是我认为我可能需要的其他代码,但我不知道如何处理它们,或者它们是否真的是我需要的:
<?php
$ud_id = $_POST['ud_id'];
$ud_scode = $_POST['ud_scode'];
$ud_product = $_POST['ud_product'];
$ud_price = $_POST['ud_price'];
$ud_inventory = $_POST['ud_inventory'];
// query update
$sql = "UPDATE items SET `items` (`ID`, `$ud_Scode`, `$ud_Product`, `$ud_Price`, `$ud_Inventory` WHERE inventory=`$ud_Inventory`)
VALUES (\'6\', \'ABC123\', \'Socks\', \'1.85\', \'2\');";
?>
我注意到这行代码:
echo "<form action=\"http://ww6.aitsafe.com/cf/add.cfm\" method=\"post\">\n";
其他人有一个 php 页面的链接:
echo "<form action=\"update.php\" method=\"post\">\n";
链接必须是 php 页面吗?
我也有这个:
<?php
include("config.php");
mysql_connect($DBhost,$DBuser,$DBpass) or die("Unable to connect to database $DBName");
mysql_select_db($DBName) or die("Unable to select database $DBName");
// Get a specific result from the "items" table
$result = mysql_query("SELECT * FROM items
WHERE inventory='$inventory'") or die(mysql_error());
while($row = mysql_fetch_array($result))
// check stock
if ($row !== false)
{
echo 'out of stock';
}
else if ($row['count'] == 0)
{
echo 'out of stock.';
}
// if there is stock decrease quantity
$sql = "UPDATE items SET inventory = (inventory -1) WHERE id = '6'";
$result = mysql_query;
}
mysql_close();
?>
我知道这是不对的,而且我完全错了。有人可以用我需要的代码示例为我指出正确的方向吗,因为我认为我需要的不仅仅是这个才能让它工作。
我的htm代码和php代码位于不同的页面上,我在htm页面中回显可用数量。
非常感谢。
这是在通过 mals-e 远程调用下订单时用于更新数据库的代码:
<?PHP
include("sbconf/config.php");
mysql_connect($DBhost,$DBuser,$DBpass) or die("Unable to connect to database $DBName");
mysql_select_db($DBName) or die("Unable to select database $DBName");
$order_date=time("m j y h:i");
// create varibles
$id = $_POST['id'];
$username = $_POST['username'];
$ip = $_POST['ip'];
$method = $_POST['method'];
$cart = $_POST['cart'];
$discount = $_POST['discount'];
$subtotal = $_POST['subtotal'];
$shipping = $_POST['shipping'];
$tax = $_POST['tax'];
$total = $_POST['total'];
$shipping_zone = $_POST['shipping_zone'];
$inv_name = $_POST['inv_name'];
$inv_company = $_POST['inv_company'];
$inv_addr1 = $_POST['inv_addr1'];
$inv_addr2 = $_POST['inv_addr2'];
$inv_state = $_POST['inv_state'];
$inv_zip = $_POST['inv_zip'];
$inv_country = $_POST['inv_country'];
$del_name = $_POST['del_name'];
$del_addr1 = $_POST['del_addr1'];
$del_addr2 = $_POST['del_addr2'];
$del_state = $_POST['del_state'];
$del_zip = $_POST['del_zip'];
$del_country = $_POST['del_country'];
$tel = $_POST['tel'];
$fax = $_POST['fax'];
$email = $_POST['email'];
$message = $_POST['message'];
$sd = $_POST['sd'];
// query insert
mysql_query("INSERT INTO orders (id,username,ip,date,method,cart,discount,subtotal,shipping,tax,total,shipping_zone,inv_name,inv_company,inv_addr1,inv_addr2,inv_state,inv_zip,inv_country,del_name,del_addr1,del_addr2,del_state,del_zip,del_country,tel,fax,email,message,sd)
VALUES
('$id','$username','$ip','$order_date','$method','$cart','$discount','$subtotal','$shipping','$tax','$total','$shipping_zone','$inv_name','$inv_company','$inv_addr1','$inv_addr2','$inv_state','$inv_zip','$inv_country','$del_name','$del_addr1','$del_addr2','$del_state','$del_zip','$del_country','$tel','$fax','$email','$message','$sd')");
?>
链接到 mals-e 我使用了 php_mals.zip 文件:
最佳答案
我不明白你到底想要什么。这是您给我们的最后一段代码的更正版本(我删除了您的评论并添加了我的评论):
<?php
include("config.php");
mysql_connect($DBhost,$DBuser,$DBpass) or die("Unable to connect to database $DBName");
mysql_select_db($DBName) or die("Unable to select database $DBName");
$result = mysql_query("SELECT * FROM items
WHERE inventory='$inventory'") or die(mysql_error());
while($row = mysql_fetch_array($result))
if ($row !== false)
{
echo 'out of stock';
}
else if ($row['count'] == 0)
{
echo 'out of stock.';
}
// only execute this request if there is stock
else
{
$sql = "UPDATE items SET inventory = (inventory -1) WHERE id = '6'";
}
//what is this ?
//$result = mysql_query;
}
顺便说一句?不要使用 mysql_ 函数,它们现在已被弃用。看看 mysqli (
http://fr.php.net/mysqli ) 或 pdo (
http://php.net/manual/fr/ref.pdo-mysql.php )。
并回答你的问题
<小时/>我注意到这行代码:
echo "<form action=\"http://ww6.aitsafe.com/cf/add.cfm\" method=\"post\">\n";
其他人有一个 php 页面的链接:
echo "<form action=\"update.php\" method=\"post\">\n";
链接必须是 php 页面吗?
<小时/>并非如此,此页面可以是任何内容。问题是,如果你想用 php 处理表单输入,你必须调用 php 解释的页面。默认情况下,apache 识别具有 php 扩展名的 php 文件(*.php、*.php5 ...),但您可以将其配置为能够处理您想要的所有扩展名(看看 https://stackoverflow.com/a/12021997/2806497 )
关于php - 自动更新数据库所需的代码 - 需要修复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19856259/
我有一个依赖于包 B 的包 A。当包 A 中的代码运行并访问包 B 中的类时,包 B 的状态将被解析 (4),而不是 Activity (32) 和包 B 的激活器也没跑好。我认为 bundle B
这个问题在这里已经有了答案: How to remove the space between inline/inline-block elements? (41 个回答) 关闭 7 年前。
我正在尝试使用 Java OpenAL 库。我在导入名为 libsoft_oal.so 的 native 库时遇到问题。 Java OpenAL 依赖于 OpenAL 软实现。我尝试根据他们在 git
我正在尝试启动我的应用程序。是一个 unicorn +工头+sinatra的应用。 这是我的 config.ru 文件: require "rubygems" require "sinatra" Bu
我有一个下拉列表,其中包含一些从数据库表中检索的值,我想要的是当单击按钮时它应该只获得选项标签的中间值,但只有那些类名为“get_this”的选项标签并离开那些选项,如果他们没有这个类 预期输出:值
我有一个index.php文件,需要一个通用的head.php文件,head.php文件中有几个Javascript文件,当这样尝试时,代码在源代码中看起来很好,但文件却不是实际上对文档做任何事情。
有人能帮帮我吗? 我已经像这样运行了 imsmod: $ insmod /data/mm/mmdev.ko epoll_rate=100 但是我得到一个错误: insmod: init_module
是否有键盘快捷键或插件可以在 Notepad++ 中打开 PHP 所需或包含的文件?我知道,在 Dreamweaver 中,执行此操作的命令是 Ctrl+D,但我似乎无法在 Notepad++ 中找到
我已经用 js 设置了一个显示/隐藏 div,但我很难弄清楚如何一次显示一个 div。目前发生的情况是,除非我再次单击原始链接来关闭该 div,否则每个 div 都会显示。 http://www.li
当我尝试将未分配的辅助分片分配给节点时出现错误。 { "error": { "root_cause": [ { "type": "remote_transpor
我正在构建一个 C++ 应用程序,使用 Netbeans 6.9 作为我的 IDE。我有一个 C++ 库,它是一个纯 C 库的包装器。 我已将文件正确添加到项目中(使用添加库文件选项)。这是 g++
我是一名优秀的程序员,十分优秀!