Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Veja o seguinte código:
$item = array(
"title" => $mtitulo,
"category_id" => "MLB1730",
"price" => $mvalor,
"currency_id" => "BRL",
"available_quantity" => 10,
"buying_mode" => "buy_it_now",
"listing_type_id" => "bronze",
"condition" => "new",
"description" => $mdescricao,
"warranty" => "Garantia de Originalidade",
"pictures" => array(
array(
"source" => $mimagem
Que pega os dados dessas string:
$mvalor = $_SESSION['mvalor'];
$mtitulo = $_SESSION['titulo'];
$mimagem = $_SESSION['img'];
Coloque nas sessions os seguintes valores:
$_SESSION['mvalor'] = "10";
$_SESSION['titulo'] = "teste";
$_SESSION['img'] = "http://sitequalquer/imagem.png"
Mas dá erro código acima.
Agora se eu pegar as string colocar os valores sem a session funciona:
$mvalor = "10";
$mtitulo = "teste";
$mimagem = "http://sitequalquer/imagem.png";
Alguém pode me ajudar?
Eu dei echos em todas as session e os valores aparecem certinho.
Ou senha o resultado de:
echo $mvalor; // Vai ser 10 usando $mvalor = "10"; ou $mvalor = $_SESSION['mvalor'];
Mas com session dar erro.
Você está executando o session_start() em todos os scripts que manipulam sessões?
Boa tarde, sim coloque session_start(), o problema não é isso, já que eu tenho o valor da session normalmente, mas o script não aceita esse valor.
Exemplo echo $mvalor; // Vai ser 10 usando tanto o $mvalor = "10"; quanto o $mvalor = $_SESSION['mvalor'];
Mas esse valor 10 vindo de $_SESSION['mvalor']; da error.
É como se o script entendesse que o 10 do $_SESSION['mvalor'] não vale nada.
O erro é esse.
Array
(
[body] => stdClass Object
(
[message] => Item without price is not allowed for category MLB1730
[error] => item.price.invalid
[status] => 400
[cause] => Array
(
)
)
[httpCode] => 400
)Acho que achei o erro, eu estou passando o ID pelo $_GET, quando não tem o ID os dados da session são perdidos.
session_start();
$id= $_GET["id"];
$_SESSION['id'] = $id;
$site = "http://site.com/".$_SESSION['id'];
$_SESSION['site'] = $site;
echo $_SESSION['site'];
Ou seja seu acessar o site http://qualquersite.com/index.php?id=122345
A saída do echo é: http://site.com/123456
Mas se eu acessa a página sem o id http://qualquersite.com/index.php a resposta do echo:
Ou seja ele perde a session do id, e eu preciso que segure mesmo que não coloque, claro que chamando pelo ID antes para gerar as session.
Faça uma verificação, se o id não for definido, faça algo ou defina um valor default.
$id = ( isset( $_GET[ 'id' ] ) ) ? $_GET[ 'id' ] : 1;
Qual o erro que aparece?