Ayuda con Código.
Hola xpert ditman !
Mi duda es que en este código ¿qué tengo mal? Por más que busco no encuentro y quisiera ver si me puedes ayudar para resolverlo, te explico:
Se reciben estos datos:
?
if($_POST)
{
$folio_venta = $_POST['miusuarioml'];
$articulos = $_POST['articulos'];
$fecha_compra = $_POST['mifecha'];
$cantidad = $_POST['cantidad'];
$envio = $_POST['envio'];
$usuarioml_art = $_POST['miusuarioml'];
En esta parte hago una consulta para saber cuáles ya están en la BD y cuáles no:
??????????????????
$conexion = mysql_connect("localhost","root","");
mysql_select_db("ventasml",$conexion);
$sql_query = "SELECT Articulos_Codigo FROM compra_articulos WHERE compra_articulos.FolioVenta = " . $_POST['miusuarioml'];
$tiene = mysql_query($sql_query);
$columna = mysql_fetch_array($tiene);
Aquí checo si es el 1er dato que entra en la BD:
??????????????????
if ($columna['Articulos_Codigo'] == "")
{
mysql_select_db("ventasml",$conexion);
$sql_query = "INSERT INTO compra_articulos values('$folio_venta','$articulos','$fecha_compra','$cantidad','$envio','$usuarioml_art')";
mysql_query($sql_query,$conexion);
}
else
Este es el 'else' por si no es el primer dato que se va a agregar y lo busca en la BD para que no se repita:
??????????????????
{
$busca = "SELECT Articulos_Codigo FROM compra_articulos WHERE compra_articulos.FolioVenta = " . $folio_venta;
if (mysql_query($busca))
{
$tienes = mysql_query($busca);
while ($col = mysql_fetch_array($tienes))
{
Si lo encuentra manda un ALERT diciendo que ya está en la BD:
??????????????????
if ($col['Articulos_Codigo'] == $_POST['articulos'])
{
echo "
<script>alert('Ya has comprado este articulo.')</script>
";
break;
}
else
Si no lo encuentra, lo guarda en la BD:
??????????????????
{
$conexion = mysql_connect("localhost","root","");
$sql_query3 = "INSERT INTO compra_articulos values('$folio_venta','$articulos','$fecha_compra','$cantidad','$envio','$usuarioml_art')";
mysql_query($sql_query3,$conexion);
break;
}
}
}
}
¿Qué es lo que pasa?
Que cuando agrego el 1er artículo todo va bien y también el 2o pero, si intento meter alguno de estos 2 de nuevo pues me da un ERRRRRRROOR grandísimo, ya que me permite meter un montón de artículos iguales, excepto el primero, por ejemplo:
Guardo Articulo USB ---- ok.
Guardo Articulo Teclado ----- ok.
Guardo Articulo Teclado(otra vez) ------ok.
Guardo Articulo Teclado(otra vez) ------ok.
...
...
Y azi me sigo agregando Teclados y cualquier otro tipo de Artículos y no me deshabilita el acceso a la BD por más repetidos que estén los artículos.
Pues si me pudieses ayudar mil gracias..
Un Saludo..!
L.I. Juan Carmona
Mi duda es que en este código ¿qué tengo mal? Por más que busco no encuentro y quisiera ver si me puedes ayudar para resolverlo, te explico:
Se reciben estos datos:
?
if($_POST)
{
$folio_venta = $_POST['miusuarioml'];
$articulos = $_POST['articulos'];
$fecha_compra = $_POST['mifecha'];
$cantidad = $_POST['cantidad'];
$envio = $_POST['envio'];
$usuarioml_art = $_POST['miusuarioml'];
En esta parte hago una consulta para saber cuáles ya están en la BD y cuáles no:
??????????????????
$conexion = mysql_connect("localhost","root","");
mysql_select_db("ventasml",$conexion);
$sql_query = "SELECT Articulos_Codigo FROM compra_articulos WHERE compra_articulos.FolioVenta = " . $_POST['miusuarioml'];
$tiene = mysql_query($sql_query);
$columna = mysql_fetch_array($tiene);
Aquí checo si es el 1er dato que entra en la BD:
??????????????????
if ($columna['Articulos_Codigo'] == "")
{
mysql_select_db("ventasml",$conexion);
$sql_query = "INSERT INTO compra_articulos values('$folio_venta','$articulos','$fecha_compra','$cantidad','$envio','$usuarioml_art')";
mysql_query($sql_query,$conexion);
}
else
Este es el 'else' por si no es el primer dato que se va a agregar y lo busca en la BD para que no se repita:
??????????????????
{
$busca = "SELECT Articulos_Codigo FROM compra_articulos WHERE compra_articulos.FolioVenta = " . $folio_venta;
if (mysql_query($busca))
{
$tienes = mysql_query($busca);
while ($col = mysql_fetch_array($tienes))
{
Si lo encuentra manda un ALERT diciendo que ya está en la BD:
??????????????????
if ($col['Articulos_Codigo'] == $_POST['articulos'])
{
echo "
<script>alert('Ya has comprado este articulo.')</script>
";
break;
}
else
Si no lo encuentra, lo guarda en la BD:
??????????????????
{
$conexion = mysql_connect("localhost","root","");
$sql_query3 = "INSERT INTO compra_articulos values('$folio_venta','$articulos','$fecha_compra','$cantidad','$envio','$usuarioml_art')";
mysql_query($sql_query3,$conexion);
break;
}
}
}
}
¿Qué es lo que pasa?
Que cuando agrego el 1er artículo todo va bien y también el 2o pero, si intento meter alguno de estos 2 de nuevo pues me da un ERRRRRRROOR grandísimo, ya que me permite meter un montón de artículos iguales, excepto el primero, por ejemplo:
Guardo Articulo USB ---- ok.
Guardo Articulo Teclado ----- ok.
Guardo Articulo Teclado(otra vez) ------ok.
Guardo Articulo Teclado(otra vez) ------ok.
...
...
Y azi me sigo agregando Teclados y cualquier otro tipo de Artículos y no me deshabilita el acceso a la BD por más repetidos que estén los artículos.
Pues si me pudieses ayudar mil gracias..
Un Saludo..!
L.I. Juan Carmona
1 respuesta
Respuesta de ditman
1