Foros del Web » Programando para Internet » PHP »

Problemas con variable array

Estas en el tema de Problemas con variable array en el foro de PHP en Foros del Web. Hola chicos como estan, tengo un problema haber si alguien me puede ayudar. Tengo ese codigo en php $preference_data = array( "items" => array( array( ...
  #1 (permalink)  
Antiguo 09/11/2017, 08:34
 
Fecha de Ingreso: febrero-2007
Mensajes: 12
Antigüedad: 17 años, 2 meses
Puntos: 0
Problemas con variable array

Hola chicos como estan, tengo un problema haber si alguien me puede ayudar.
Tengo ese codigo en php

$preference_data = array(
"items" => array(
array(
"title" => "Pago de Producto",
"currency_id" => "ARG",
"category_id" => "Category",
"quantity" => 1,
"unit_price" => 590)
//"unit_price" => $PrecioItem )
)
);

necesito que donde dice 590 sea una variable y no me lo toma de ninguna manera, alguien sabe como hacer para que en unit_price me tome una variable.

Gracias
  #2 (permalink)  
Antiguo 09/11/2017, 09:39
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problemas con variable array

590 es una constante, justamente lo que dejaste como comentario debe ser la variable, digo ya que ese comentario hace referencia a la misma key

Código PHP:
Ver original
  1. $preference_data = array(
  2. "items" => array(
  3.         array(
  4.         "title" => "Pago de Producto",
  5.         "currency_id" => "ARG",
  6.         "category_id" => "Category",
  7.         "quantity" => 1,
  8.         // "unit_price" => 590)
  9.         "unit_price" => $PrecioItem)
  10.     )
  11. );

Disculpa por entrometerme en tu trabajo, pero es necesario ese doble array?. No sería mejor solo 1

Código PHP:
Ver original
  1. $preference_data = array(
  2. "items" =>
  3.     array(
  4.     "title" => "Pago de Producto",
  5.     "currency_id" => "ARG",
  6.     "category_id" => "Category",
  7.     "quantity" => 1,
  8.     //"unit_price" => 590)
  9.     "unit_price" => $PrecioItem)
  10. );

Saludos
  #3 (permalink)  
Antiguo 09/11/2017, 09:44
 
Fecha de Ingreso: febrero-2007
Mensajes: 12
Antigüedad: 17 años, 2 meses
Puntos: 0
Respuesta: Problemas con variable array

Gracias por responder, ese es el problema cuando habilito la variable me salta el error, ese array viene de una clase de mercado pago, no se si se puede hacer uno solo. Ese es el error que me sale cuando pongo una variable en el lugar del numero.

Fatal error: Uncaught exception 'Exception' with message 'unit_price needed' in /home/mass2014mass/public_html/mercadopago/mercadopago.php:419 Stack trace: #0 /home/mass2014mass/public_html/mercadopago/mercadopago.php(432): MPRestClient::exec('POST', '/checkout/prefe...', Array, 'application/jso...') #1 /home/mass2014mass/public_html/mercadopago/mercadopago.php(177): MPRestClient::post('/checkout/prefe...', Array) #2 /home/mass2014mass/public_html/mercadopago/button.php(20): MP->create_preference(Array) #3 {main} thrown in /home/mass2014mass/public_html/mercadopago/mercadopago.php on line 419

Gracias de antemano, cualquier sugerencia sera bienvenida.
  #4 (permalink)  
Antiguo 09/11/2017, 10:25
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problemas con variable array

Ahh ok entonces está bien ese doble array, hay que dejarlo como está.

El error dice: 'unit_price needed' es decir que es necesario, lo más seguro es que $PrecioItem sea nulo, revisa que esa variable tenga algún valor

Saludos
  #5 (permalink)  
Antiguo 09/11/2017, 10:34
 
Fecha de Ingreso: febrero-2007
Mensajes: 12
Antigüedad: 17 años, 2 meses
Puntos: 0
Respuesta: Problemas con variable array

Gracias voy a probar de otra manera haber que pasa
  #6 (permalink)  
Antiguo 09/11/2017, 10:38
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problemas con variable array

Lo que está pasando estimado es que cuando haces esto:

Código PHP:
Ver original
  1. unit_price" => 590

Va bien, pero cuando haces esto

Código PHP:
Ver original
  1. "unit_price" => $PrecioItem

Deja de funcionar, y además te salta esa noticia de necesario, por descarte, lo más seguro es que esté nulo, revisa en tu código que $PrecioItem tenga algún valor, eso sería todo
  #7 (permalink)  
Antiguo 09/11/2017, 10:56
 
Fecha de Ingreso: febrero-2007
Mensajes: 12
Antigüedad: 17 años, 2 meses
Puntos: 0
Respuesta: Problemas con variable array

Gracias voy a ver como hago porque el formulario es raro es un codigo de mercado pago que quiero modificar
  #8 (permalink)  
Antiguo 10/11/2017, 09:48
 
Fecha de Ingreso: febrero-2007
Mensajes: 12
Antigüedad: 17 años, 2 meses
Puntos: 0
Respuesta: Problemas con variable array

Hola chicos, aca les dejo el codigo completo por si alguien me puede ayudar, ese es todo el codigo, no me permite la variable $PrecioItem en unit_price ya se me quemaron los libros.

<?php
require_once "mercadopago.php";

$mp = new MP("8423900065991950", "89flWUaGyUe5CE6PlQMX7smNLVWqCuNz");
$PrecioItem=$_GET['PrecioItem'];
//$PrecioItem = isset($_POST['PrecioItem']) ? $_POST['PrecioItem'] : NULL;


$preference_data = array(
"items" => array(
array(
"title" => "Pago de Producto",
"currency_id" => "ARG",
"category_id" => "Category",
"quantity" => 1,
//"unit_price" => 590)
"unit_price" => $PrecioItem)
)
);
$preference = $mp->create_preference($preference_data);
echo $PrecioItem;
?>
<!doctype html>
<html>
<head>
<title>MercadoPago SDK - Create Preference and Show Checkout Example</title>
</head>
<body>


<form name="form1" method="post" action="">

<input name="PrecioItem" type="text" id="PrecioItem" />
<a href="<?php echo $preference["response"]["init_point"]; ?>" name="MP-Checkout" class="orange-ar-m-sq-arall">Pagar</a>
<script type="text/javascript" src="http://mp-tools.mlstatic.com/buttons/render.js"></script>
</form>


</body>
</html>

sale el error:
Fatal error: Uncaught exception 'Exception' with message 'unit_price needed' in /home/mass2014mass/public_html/mercadopago/mercadopago.php:419 Stack trace: #0 /home/mass2014mass/public_html/mercadopago/mercadopago.php(432): MPRestClient::exec('POST', '/checkout/prefe...', Array, 'application/jso...') #1 /home/mass2014mass/public_html/mercadopago/mercadopago.php(177): MPRestClient::post('/checkout/prefe...', Array) #2 /home/mass2014mass/public_html/mercadopago/button.php(20): MP->create_preference(Array) #3 {main} thrown in /home/mass2014mass/public_html/mercadopago/mercadopago.php on line 419

Sin embargo yo hago una comprobacion con la variable $PrecioItem y si me trae el valor.

Gracias a todos de antemano
  #9 (permalink)  
Antiguo 10/11/2017, 11:19
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problemas con variable array

Que extraño, uhm.... talvez nececista que sea numerico y/o entero, prueba con

$PrecioItem= intval($_GET['PrecioItem']);

Si queda bien, te recomiendo darle valor absoluto abs(), ya que un usuario mal intensionado podría agregar un numero negativo y creo que eso es malo.
  #10 (permalink)  
Antiguo 10/11/2017, 12:43
 
Fecha de Ingreso: febrero-2007
Mensajes: 12
Antigüedad: 17 años, 2 meses
Puntos: 0
Respuesta: Problemas con variable array

ahi me funciono, graciasssssssssssss


pero tengo que hacer una index.php con un input para poder tomar el valor.

desde ahi mismo no me lo toma.
  #11 (permalink)  
Antiguo 13/11/2017, 13:29
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Problemas con variable array

Creo que eso depende de si usas get o post,a cualquiera de los dos, usa intval

Etiquetas: variable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:29.