使用php将json编码数据(pinterest api oauth)中的数据插入mysql

使用php将json编码数据(pinterest api oauth)中的数据插入mysql,php,mysql,json,oauth,pinterest,Php,Mysql,Json,Oauth,Pinterest,我有从pinterest api(oauth)检索到的json格式的用户信息 当我使用json解码打印(echo)数据时 $array_data = json_decode($me); echo "<pre/>";print_r($array_data); foreach ($array_data as $key=>$value){ if($key == 'image'){ echo $key. " url is=" . $value->la

我有从pinterest api(oauth)检索到的json格式的用户信息

当我使用json解码打印(echo)数据时

$array_data = json_decode($me); 
echo "<pre/>";print_r($array_data);

foreach ($array_data as $key=>$value){

    if($key == 'image'){
        echo $key. " url is=" . $value->large->url .'<br/>';
    }else{

        echo $key. "=" . $value .'<br/>';
    }
}
}
现在我想将这些数据插入MySQL。怎么做。 我试过:

$query = "INSERT INTO pinterest(pin_id) VALUES" .$value;
 $query_signup = mysqli_query($MySQLi_CON, $query);
但它显示出错误:

可捕获的致命错误:stdClass类的对象无法转换为第38行G:\XAMPP\htdocs\a\pinterestlogin\callback.php中的字符串


帮帮我。

$value
是一个对象,当您迭代解码的pintrest内容数组时,它在索引为“image”的元素上运行。您的Mysql插入需要一个字符串,而不是一个对象

首先,我建议使用true调用json_decode,将所有内容转换为关联数组,除非您需要将身体中的某些内容视为对象

$array_data = json_decode($me, true);`
然后检查
$value
何时为对象或数组,以及在插入mysql之前:

  • 将images对象转换为json字符串,并存储
    $value=json\u encode($value)
  • 序列化图像对象
    $value=Serialize($value)
    
$value
是一个对象,当您迭代解码的pintrest内容数组时,它在使用索引“image”命中元素时。您的Mysql插入需要一个字符串,而不是一个对象

首先,我建议使用true调用json_decode,将所有内容转换为关联数组,除非您需要将身体中的某些内容视为对象

$array_data = json_decode($me, true);`
然后检查
$value
何时为对象或数组,以及在插入mysql之前:

  • 将images对象转换为json字符串,并存储
    $value=json\u encode($value)
  • 序列化图像对象
    $value=Serialize($value)
    
您应该将API中的数据视为用户提交的数据,并进行验证,然后使用准备好的声明。未经验证,不得将用户提交的数据或第三方数据放在数据库附近,然后使用准备好的语句。您应将API中的数据视为用户提交的数据,进行验证,然后使用准备好的语句。未经验证并使用事先准备好的声明,任何用户提交的数据或第三方数据都不得靠近您的数据库
$array_data = json_decode($me, true);`