Buena tarde, tengo un problema desde la mañana y es que me dice que la variable esta indefinida pero no entiendo el porque si ya la tengo definida.
Este es codigo
Código PHP:
<?php
require ("../Conexion/conexion.php");
if ($_POST){
$contrato=$_POST["contrato"];
$factura=$_POST["nf"];
$valorfactura=$_POST["vf"];
$fecha=$_POST["fecha"];
$sql= "select valor_contrato from contratos where numero_contrato='$contrato'"; //se hace la consulta del valor del contrato para almacenarla despues con un while
$sql2= "select saldo from facturas where contrato= '$contrato'; "; // se hace la consulta del saldo para tambien almacenarla despues
$datos2 = mysqli_query($con,$sql); //se conecta y se hace la consulta del contrato
$datos3 = mysqli_query($con,$sql2); //se conecta y se hace la consulta del saldo
while ($reg = mysqli_fetch_array($datos2)) //traer el valor del contrato para despues comparar
{
$valor= $reg["valor_contrato"]; //variable que contiene el valor del contrato
}
while ($reg2 = mysqli_fetch_array($datos3)) //trae el valor del saldo para comparar
{
$saldo= $reg2["saldo"]; //variable con el valor del saldo
}
?>
<?php
if ($saldo>0)
{ //si el saldo es mayor que 0 entonces
$resto= $saldo-$valorfactura; //se resta del saldo el valor de la factura
//una alerta en js
$inserccion="insert into facturas (numero_factura,fecha_factura,contrato,valor_factura,saldo)
values ('$factura','$fecha','$contrato','$valorfactura','$resto')"; // Se inserta en la tabla facturas
$datos = mysqli_query($con,$inserccion); //conexion e inserccion de la consulta
if ($datos==0){
echo "<script> alert ('Error') </script>";
}
if ($datos==1){
echo "<script> alert ('El contrato tiene un saldo de ".$resto."') </script>";
}
}
elseif (empty($saldo))
{
$resto2= $valor-$valorfactura; //se resta del valor del contrato el valor de la factura
$inserccion2="insert into facturas (numero_factura,fecha_factura,contrato,valor_factura,saldo)
values ('$factura','$fecha','$contrato','$valorfactura','$resto2')"; //se inserta la consulta
echo "estoy aqui";
if ($resto2>$saldo and $saldo==0)
{
echo "Soy un error, ¡Buu!";
exit;
}
$datos4 = mysqli_query($con,$inserccion2);
}
}
?>
Estos son los errores que me tira :
Notice: Undefined variable: saldo in C:\xampp\htdocs\facturas\facturas\validacion.php on line 54
estoy aqui
Notice: Undefined variable: saldo in C:\xampp\htdocs\facturas\facturas\validacion.php on line 99
Notice: Undefined variable: saldo in C:\xampp\htdocs\facturas\facturas\validacion.php on line 99
Soy un error, ¡Buu!
Pero como pueden notar la variable $saldo no solo la uso en esas 3 lineas si no por ejemplo en la linea 60 donde esta asi : $resto=$saldo-$valorfactura; y anda bien, pero en las comparaciones con if me arroja eso. Ayuda por favor