我正在尝试将信息输入我的数据库并遇到一个问题,我确信我只是犯了一个简单的错误。要更新我正在使用的表:
$conn->query("update webPrice set price= " . $amazonResult['price'] . " where asin = '" . $amazonResult['asin'] . "'");
$ conn是我的联系。价格一直输入0.我知道那里有信息,因为当我做print_r($ amazonResult)时,我看到了我想要插入数据库的所有内容。获取亚马逊信息的代码是:
foreach($parsed_xml->GetMyPriceForASINResult as $item ) {
$asin2 =$item->attributes()->ASIN;
$current = $item->Product;
$status = $item->attributes()->status;
if (stristr($status, "Success") == true)
{
$amazonResult = array(
'asin' => $asin2,
'price' => $current->Offers->Offer->BuyingPrice->ListingPrice,//AttributeSets->children('ns2', true)->
);
我认为问题在于我的更新声明,但我不确定它是什么。正确输入了asin信息。字段是price = double和asin = varchar。
编辑:这是print_r的结果($ amazonResult);
Array ( [asin] => SimpleXMLElement Object ( [0] => 0176055452 ) [price] => SimpleXMLElement Object ( [CurrencyCode] => USD [Amount] => 10.11 ) )
答案 0 :(得分:1)
尝试在'
$amazonResult['price']
$conn->query("update webPrice set price= '" . $amazonResult['price'] . "' where asin = '" . $amazonResult['asin'] . "'");
修改:根据您的修改,因为值在对象中,
$conn->query("update webPrice set price= '" . $amazonResult['price']->Amount . "' where asin = '" . $amazonResult['asin']->0 . "'");
答案 1 :(得分:1)
您必须将表格和字段的名称放在以下两个符号之间:`并且您必须使用'符号表示值。 (就像coder1984所说的那样)
$conn->query("update `webPrice` set `price` = '" . $amazonResult['price'] . "' where `asin` = '" . $amazonResult['asin'] . "'");