function creaFormularioProductos() { $productos = BD::obtieneProductos(); $uri = "http://localhost/tienda/recursos_u5/TiendaOnlineOO/tienda"; $url = "{$uri}/servicio_sin_wdsl.php"; $cliente = new SoapClient(null, array('location' => $url, 'uri' => $uri, 'trace' => true)); foreach ($productos as $p) { echo "<p><form id='" . $p->getcodigo() . "' action='productos.php' method='post'>"; // Metemos ocultos los datos de los productos echo "<input type='hidden' name='cod' value='" . $p->getcodigo() . "'/>"; echo "<input type='submit' name='enviar' value='Añadir'/>"; echo $p->getnombrecorto() . ": "; echo $p->getPVP() . " euros."; echo "<input type='submit' name='detalle' value='Mostrar detalle'/>"; echo "</p>"; echo "</form>"; if (isset($_POST['detalle'])) { if ($_POST['cod'] == $p->getcodigo()) { try { //$unproducto=$cliente->obtieneProducto($p->getcodigo()); //echo $unproducto->getPVP(); $unprecio = $cliente->obtienePrecioProducto($p->getcodigo()); print "<p>Precio :" + $unprecio + "</p>"; } catch (Exception $e) { echo "Exception: " . $e->getMessage(); } // echo $p->getPVP(); echo "<p>" + $p->getcodigo() + "</p>"; echo "<p>" + $p->getnombre() + "</p>"; echo "<p>:" + $p->muestra() + "</p>"; } } } }
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title></title> </head> <body> <?php require_once 'include/Producto.php'; $uri = "http://localhost/tienda/recursos_u5/TiendaOnlineOO/tienda"; $url = "{$uri}/servicio_sin_wdsl.php"; $cliente = new SoapClient(null, array('location' => $url, 'uri' => $uri)); $producto = $cliente->obtieneProducto("3DSNG"); //lo hace bien $otro_precio = $producto->getPVP(); //no funciona por no soportar el serv esta clase. $precio = $cliente->obtienePrecioProducto("3DSNG"); //correcto echo "precio " + $precio; // funciona correctamente. echo "precio de producto " + $otro_precio; ?> </body> </html>