Jump to content

como valido un dato de mi base de datos?


Recommended Posts

saludos, tengo un pequeño problema espero que alguien me pueda orientar

 

tengo una pagina que muestra los productos y cantidades respectivas de 2 bodegas

 

y un formulario para transferir productos de una bodega a otra (solo cantidades)

 

el formulario contiene 2 select para que el usuario escoja 'desde' y 'hacia' donde va la cantidad y el material seleccionado

 

y aqui nace el problema, no puedo transferir 6 productos desde la bodega 1 si esta tiene solo 5 productos, ademas de que no se puede transferir desde la misma bodega hacia la misma bodega.

 

para el segundo problema se me ocurrio comparar las bodegas y que cuando fuesen iguales muestre un alert en javascript, ok funciona pero cuando le agrego la redireccion (index.php) al final del IF , el alert no se muestra.

 

entonces se me ocurrio hacer la validacion con jquery dinamicamente, de modo que el usuario no tenga que ser redireccionado cuando haya un error, pero aun asi el alert no aparece.

 

aqui parte de mi codigo:

 

 

 

procesar_agregar_stock.php

<?php

// ejemplo de datos recibidos ( [desde] => 130 [hacia] => 130 [id_material] => 1254 [cantidad] => 6) 

require_once("conexion.php");

if($_POST['desde'] == $_POST['hacia'])
{
    echo "<script language='javascript' type='text/javascript'> alert('error, selecciono la misma bodega')</script>";
    
}

?>

 

 

y mi codigo jquery

 

<script type="text/javascript" src="js/jquery.js"></script>
        <script type="text/javascript">
            $(document).ready(function(){
                $('#form').submit(function(){
                    $.ajax({
                        type:'POST',
                        url:'procesar_transferir_stock.php',
                        data:$('#form').serialize(),
                    })
                    return false;
                })
            })
        </script>

 

pd, el id de mi formulario es "form"

Link to comment
Share on other sites

Yo personalmente creo que lo estas planteando mal, deberias hacer algo como esto:

 

en php:

 

 

[hide]

<?php

<?php

// ejemplo de datos recibidos ( [desde] => 130 [hacia] => 130 [id_material] => 1254 [cantidad] => 6)

require_once("conexion.php");

if($_POST['desde'] == $_POST['hacia'])
{
//aqui cambia, devuelvo un valor, podria ser true, 1, 0,false, etc
echo 1;
}



?>


[/hide]

 

 

 

luego en javascript/ajax:

 

 

[hide]

//incluyes libreria jquery

<script type="text/javascript">

$(document).ready(function(){


$('#campohasta').change(function(){

valorconsultado='desde='+$('#campodesde').attr('value')+'&hasta='+$('#campohasta').attr('value');;
$.ajax({
                        type:'POST',
                        url:'procesar_transferir_stock.php',
                        data: valorconsultado,

                      complete: function(respuesta){

                    if(respuesta.responseText==1){
   alert('NO FUNCIONAAAA SON IGUALEEEES!!!!');
}
}


});



});




</script>


[/hide]

 

 

Esa es la idea, primero, creo que tienes 2 errores:

 

1. te recomiendo que uses un evento, en este caso, el evento change del campo hasta, no tiene sentido hacerlo en el submit, ahora si lo quieres seguir haciendo en el submit, podrias cambiar el submit por button, y en el evento onClick, validar, y llamar la funcion, en el caso que todo sea valido, enviar el formulario con:

document.getElementById('formulario').submit();

 

 

2.No generes el alert con ajax, eso no tendría sentido, lo que tienes que hacer es dar una respuesta que te haga diferenciar entre si es correcto o invalido, y luego en la misma funcion ajax puedes hacer un alert, no con php

 

Te recomiendo que estudies un poco más la teoría de ajax y php, ya que al parecer aun no tienes muy claro en concepto

bueno, saludos :)

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...