Hola, en primer lugar no puedes llamar a una función PHP desde JavaScript sin usar un vehículo para ello. Ese vehículo es AJAX, pero eso es otra historia.
Lo que debes hacer es lo siguiente, para llamar a la funcion cuando pulses el boton deberás crear un formulario especifico para cada producto, le das un nombre comun y le añades mediante PHP el id del producto, asai tendrás un nombre único para tu formulario: name="formPedidos_
2345".
Luego añades un campo tipo oculto para almacenar y enviar el id del producto para poder manejarlo: <input type='hidden' name='id_producto' value='".$id_producto."' />
Luego el boton llamará a la funcion Submit de javascript
:
<input name='pedido' type='button' lang='es Spanish (Spain)' value='Pedir 5' onclick='document.formPedidos_".$id.".Submit()])'/>
Esto lo que hace es mandar el valor del campo oculto, con el id del producto cuando el usuario pulse en el botón del producto.
Código PHP:
...
...
while($datos=mysql_fetch_assoc($resultado)){
echo "<form name="formPedidos_id" method="POST" action="actualizar.php"><tr><td><a href = ./detalle.php?id=".$datos["codigo"]." target=mainFrame>".$datos["nombre"]."</td><td>".$datos["marca"]."</td><td>".$datos["precio"]."</td><td>".$datos["stock"]."</td>";
echo "<td>
<input type='hidden' name='id_producto' value='$id_producto' />
<input name='pedido' type='button' lang='es Spanish (Spain)' value='Pedir 5' onclick='document.formPedidos_$id.Submit()])." /></td></tr></form>";
}
Luego hay que recoger y procesar esto:
Código PHP:
function Actualizar($cod, $sto){
$stock_actual = $sto + 5;
$update = "update producto set stock = '".$stock_actual."' where codigo ='".$cod."' ";
$res_update = mysql_query($update);
echo "<script>window.alert('Se ha actualizado correctamente')</script>";
}
Actualizar($_POST['id_producto']); //Llamada a tu función
Ahora le podrias pasar todos los parámetros que quisieras. Tendras que hacer una rutina para volver atras, o bien usando el header() o otros métodos para volver al volcado de la BD.
Suerte