} try { $fila = obtener_socio($numero); ?> <h4>Subtotal: <?php echo $subtotal; ?> </h4><?php $socio_id = $fila['id']; pendientes_de_socio($socio_id, $numero); pedir_codigo_copia($codigo); no_vacio($codigo); $fila = obtener_copia($codigo); mostrar_copia($fila); $copia_id = $fila['id']; copia_disponible($copia_id); boton_alquilar($socio_id, $copia_id); } catch (Exception $e) { $msg = $e->getMessage(); if ($msg != "") { ?> <h3>Error: <?php echo $msg; ?> </h3><?php } } ?> </body> </html>
function alquilar($socio_id, $copia_id) { try { $res = pg_query("begin"); $res = pg_query("lock table alquileres in share mode"); copia_disponible($copia_id); $res = pg_query_params("insert into alquileres (socio_id,\n copia_id)\n values (\$1, \$2)", array($socio_id, $copia_id)); $res = pg_query("commit"); } catch (Exception $e) { $res = pg_query("rollback"); throw new Exception("la película ya ha sido alquilada"); } }