如果有人可以跟我说话,也许会指出我的方向。如果我有一个了解它的人指导我,我可以与之交谈,我的工作会更好。我不是要求它为我做。谢谢
下面的数组表示小公司库存商品的商品编号。
$inventory = array ("ABC123X","TWX325R","NPR779N","PUY343S","MIS394A","RSE874W","WER343P");
形式:
编写一个HTML表单,接受库存号的单个文本输入。
(ALREADY DONE:将在脚本中使用$item = $_POST["item"];
PHP脚本:编写一个搜索数组的PHP脚本。
如果物品有库存(在阵列中),请在库存消息中打印该项目。
如果商品没有库存(不在数组中),请打印不在库存消息中的商品。
提示:
使用foreach循环在阵列中搜索用户发送给您的数据。使用顺序搜索。 (例如:比较第一项,然后是下一项,然后是下一项,直到找到您正在寻找的项目。)
您需要在循环中嵌套if语句,因为不是每个项都匹配。
创建一个标记变量,用于跟踪是否找到某个项目。在程序开头设置$ flag = false。仅在找到项目时才将$ flag设置为true。在程序结束时,测试$ flag以确定是否需要显示不在库存消息中的项目。
我有以下是比特和peices,但我想弄清楚如何将它们放在一起。我基本上是靠自己做的,只提供很少的信息,并尝试使用谷歌搜索
<?php
$item = $_POST["item"];
$inventory = array("ABC123X","TWX325R","NPR779N","PUY343S","MIS394A","RSE874W","WER343P")
$flag = false
foreach ($item as $inventory)
if ($flag == true)
print "<font size=+3><b>ACME Hardware Store</b></font><br><br>";
print "We have item $item in stock! Feel free to contact us for more info.";
else
if ($flag == false)
print "<font size=+3><b>ACME Hardware Store</b></font><br><br>";
print "That item not in inventory! Please contact us if you would like to special order it.";
?>
答案 0 :(得分:2)
如果需要检查的是库存数组中是否有物品,请尝试。或者如果您应该使用foreach
检查php手册中的语法
if(in_array($item,$inventory)){
print "<font size=+3><b>ACME Hardware Store</b></font><br><br>";
print "We have item $item in stock! Feel free to contact us for more info.";
}
else
{
print "<font size=+3><b>ACME Hardware Store</b></font><br><br>";
print "That item not in inventory! Please contact us if you would like to special order it.";
}
答案 1 :(得分:1)
这听起来太简单了,但我相信你只是在寻找in_array函数。
http://us3.php.net/manual/en/function.in-array.php
但如果你真的想按照自己的方式去做,我相信这将是正确的方法:
foreach( $inventory as $inv_item ){
if( $inv_item == $item ){
$flag = true;
break;
}
}
if( $flag == true ) {
...
} else {
...
}