0

Am trying to validate these variables with an if statement,but it not working,any help will do.

if($navtype == "xxxx")
	 
 {


		 $com_name = $_POST['com_name'];
		 $loc = $_POST['loc'];
		 $name_mech = $_POST['name_mech'];
		 $vtype = $_POST['vtype'];
		 $s_veration = $_POST['s_veration'];
		 $remnder_ver = $_POST['remnder_ver'];
		 $vreg = $_POST['vreg'];
		 $last_startdate = $_POST['dy']."-".$_POST['dm']."-".$_POST['dd'];		 	 
		 $mileage = $_POST['mileage'];	
		 $current_mileage = $_POST['current_mileage'];	
		 $cur_date = date("F j, Y, g:i a");
									 

if($s_veration == $remnder_ver)
	 {
	echo" <strong>Specific Variation</strong> ought to have a value equal to <strong>Reminder Variation</strong>, please go back and alter your values";
	exit();
	}

elseif($s_veration >= $remnder_ver)
	 {
	echo" <strong>Specific Variation</strong> ought to have a value grater than <strong>Reminder Variation</strong>, please go back and alter your values";
	exit();
	}

	else{exit();}
	
	   $counter=0;
	   $query = "select count(*) As counter FROM sre_log WHERE vreg = '$vreg'";  
		 $routes_result = mysql_query($query);
		 $routes_num = 0;
		 //$routes_num = mysql_numrows($routes_result);
		 $routes_num = mysql_num_rows($routes_result);
		 $i = 0;
		//$x = 1
	    while($i < $routes_num) 
			
			{
		$counter = mysql_result($routes_result,$i,"counter");
                          $i++;
			}

			
		 if ($counter == 0 )
		 
		 {
			 
		
		$sql = "insert INTO xxx 
		
		(com_name, loc, name_mech, vtype, s_veration, remnder_ver, vreg, last_startdate, mileage, current_mileage, cur_date) 
		values('$com_name','$loc','$name_mech','$vtype','$s_veration','$remnder_ver','$vreg','$last_startdate','$mileage','$current_mileage','$cur_date')";
		 }else{
			 		
$sql = "UPDATE xxx SET 

mileage_out='$mileage',mileage_in='$current_mileage',vreg='$vreg',s_veration='$s_veration',remnder_ver='$remnder_ver' WHERE vreg='$vreg'";
		 }	  
		 	mysql_query($sql);
3
Contributors
6
Replies
7
Views
5 Years
Discussion Span
Last Post by simplypixie
0

Do your POST variables actually exist?

0

Do your POST variables actually exist?

Yes they do, when i echo them i can see them.

0

You don't say what happens. You exit on every condition, so the code will never progress beyond the conditional block.

Every conditional except the last one will give you a message. WHy haven't you given the 'else' an echo before exiting?

echo "sver: " . $s_veration . " and remn: " . $remnder_ver;
if($s_veration == $remnder_ver)
	 {
	echo" <strong>Specific Variation</strong> ought to have a value equal to <strong>Reminder Variation</strong>, please go back and alter your values";
	exit();
	}
 
elseif($s_veration >= $remnder_ver)
	 {
	echo" <strong>Specific Variation</strong> ought to have a value grater than <strong>Reminder Variation</strong>, please go back and alter your values";
	exit();
	}
 
	else{exit();}
0

These conditionals don't make sense

if($s_veration == $remnder_ver)
	 {
	echo" <strong>Specific Variation</strong> ought to have a value equal to <strong>Reminder Variation</strong>, please go back and alter your values";
	exit();
	}

elseif($s_veration >= $remnder_ver)
	 {
	echo" <strong>Specific Variation</strong> ought to have a value grater than <strong>Reminder Variation</strong>, please go back and alter your values";
	exit();
	}

In the first you are saying if $s_veration is equal $remnder_ver then it is incorrect yet your echo says that they should equal.

The second says if $s_veration is greater than or equal to $remnder_ver then it is incorrect yet your echo statement says that $s_veration SHOULD be greater than $remnder_ver.

To match your errors you need to change to

if($s_veration != $remnder_ver)
	 {
	echo" <strong>Specific Variation</strong> ought to have a value equal to <strong>Reminder Variation</strong>, please go back and alter your values";
	exit();
	}

elseif($s_veration <= $remnder_ver)
	 {
	echo" <strong>Specific Variation</strong> ought to have a value grater than <strong>Reminder Variation</strong>, please go back and alter your values";
	exit();
	}

However if the first conditional says they should be equal then your 2nd will always fail as one is not greater than the other

0

thank for your time simplypixie,in my application,

$remnder_ver

should never be = or grater than

$s_veration

.

$s_veration

should always be grater than this

$remnder_ver

.

tell me,is the if statement correct?

ardav wants to know what happens, it is not working, it behaves as though there is no if statement there.

Edited by accra: n/a

1

In this case you just need one IF statement to check

if ($s_veration <= $remnder_ver) {
echo" <strong>Specific Variation</strong> ought to have a value grater than <strong>Reminder Variation</strong>, please go back and alter your values";
}

You shouldn't be exiting either so leave that out

This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.