Parece que es mas simple el hacer lo que tu haces que lo que imaginas.
De hecho con lo mismo que tienes puedes hacerlo...
Aca con unas pequeñas modificaciones voy a dejar tu codigo mas una porcion de agregarventa.php
Código PHP:
<?php
include('_control.php');
include("_conec.php");
conectarse();
$sql_c="select * from clientes";
$registro_c=mysql_query($sql_c);
/*si es la misma consulta
no hay para que hacerla dos veces*/
$sql_p1="select * from productos";
$registro_p1=mysql_query($sql_p1);
$fecha = date("Y/m/d");
/*Ahora con la pagina*/
/*Aca voy a implementar 2 funciones en javascript
que al momento de seleccionar una lista me guarde el "value"*/
$html = '
<script type="Javascript">
function cargaCliente(valor){
document.form1.cliente_id.value = valor;
}
function cargaProducto(valor,identificador){
document.form1.identificador.value = valor;
}
</script>
<body>
<form name="form1" method="post" action="agregarventa.php">
<table width="50%" border="1" align="center">
<tr>
<td class="arial11">Cliente</td>
<td><select name="cliente" class="arial11" OnChange="cargaCliente(this.options[selectedIndex].value)">';
while($fila_c=mysql_fetch_array($registro_c)){
//esto para nuestro primer select
$html .= '<option value="'.$fila_c1["cliente_id"].'">'.$fila_c["cliente_pa"].' '.$fila_c["cliente_ma"].' '.$fila_c["cliente_no"]'. </option>';
}
$html .= '
</select><input type="hidden" name="cliente_id"></td>
</tr>
<tr>
<td class="arial11">Producto 1</td>
<td><select name="producto1" class="arial11" OnChange="cargaProducto(this.options[selectedIndex].value,producto_id1)">';
while($fila_p1=mysql_fetch_array($registro_p1)) {
$html .= '<option value="'.$fila_p1["prod_id"]].'">'.$fila_p1["prod_de"].' -- \$'.$fila_p1["prod_pr"]'. </option>';
}
$html .= '
</select><input type="hidden" name="producto_id1"></td>
</tr>
<tr>
<td class="arial11">Producto 2</td>
<td><select name="producto2" class="arial11" OnChange="cargaProducto(this.options[selectedIndex].value,producto_id2)"> ';
while($fila_p1=mysql_fetch_array($registro_p1)) {
$html .= '<option value="'.$fila_p1["prod_id"]].'">'.$fila_p1["prod_de"].' -- \$'.$fila_p1["prod_pr"]'. </option>';
}
$html = '
</select><input type="hidden" name="producto_id2"></td>
</tr>
<tr>
<td class="arial11">Fecha Venta</td>
<td><input name="fecha" type="text" class="arial11" value="'.$fecha.'"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="Submit" value="Realizar Venta"></td>
</tr>
</table>
</form>
</body>';
print $html;
Ok... luego de tener ese archivo procedemos a recibir los valores (que es ahi donde haces la lista para verlo asi: idventa | appaterno | apmaterno| nombre| detalleproducto| precio).
Código PHP:
<?php
/*funciona tener esta lista para llamar lo necesario
idventa: autonumero
appaterno: $_POST['cliente']
apmaterno: $_POST['cliente']
nombre: $_POST['cliente']
detalleproducto: $_POST['producto1'], $_POST['producto2']
precio: $_POST['producto1'], $_POST['producto2']
ok... ahora te voy a mostrar esa lista.
(lo hare en bruto y tu despues lo ordenas)
*/
//variable para id de venta
$x; //como es un ejemplo esta variable sera uno
//debes cambiarla por el ultimo valor de ventas + 1
$y = 2; //esta sera nuestro señalador
//si hay mas productos no se incrementa
$datoCliente = trim(" ",$_POST['cliente']);
$datoProducto = trim(" ",$_POST['producto1']);
for($x=1;$x<$y;$x++){
$html = '
ID de Venta: '.$x.'<br>
Apellido Paterno: '.$datoCliente[0].'<br>
Apellido Materno: '.$datoCliente[1].'<br>
Nombre: '.$datoCliente[2].'<br>
Detalle Producto: '.$datoProducto[0].'<br>
Precio: '.$datoProducto[1].'<br>';
if($_POST['producto2'] <> ""){
$datoProducto = trim(" ",$_POST['producto2']);
$y++;
}
}
print $html;
?>
Ahora... estoy viendo que solo sirve o servira para una compra de uno o dos productos... no mas.
Mientras satisfaga lo que necesitas :D
Saludos!