将数据从数组输入数据库

时间:2012-11-06 19:22:42

标签: php mysqli

我正在尝试将信息输入我的数据库并遇到一个问题,我确信我只是犯了一个简单的错误。要更新我正在使用的表:

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

2 个答案:

答案 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'] . "'");