Submiting a Form with every fields blank (SOLVED)

C++, C#, Java, PHP, ect...
Post Reply
User avatar
vitinho444
Posts: 2819
Joined: Mon Mar 21, 2011 4:54 pm

Submiting a Form with every fields blank (SOLVED)

Post by vitinho444 »

SOLUTION:
Well, i followed Chris code and added to my page, it's working now.


Here's Chris's code:

Code: Select all

$defense1 = isset($_POST['defense1amount']) ? $_POST['defense1amount'] : 0; 
$defense2 = isset($_POST['defense2amount']) ? $_POST['defense2amount'] : 0; 
$defense3 = isset($_POST['defense3amount']) ? $_POST['defense3amount'] : 0; 
$defense4 = isset($_POST['defense4amount']) ? $_POST['defense4amount'] : 0;

//for debug:
echo $defense1 . ' ' . $defense2 . ' ' . $defense3 . ' ' . $defense4; 
Here's my page if you want (it's a recruit system)

Code: Select all

<center>

<title>Village Wars</title>
<?php
include 'config.php';
session_start();
require "languages/index.lang.php";
echo "<a href='index.php'><img src='images/banner.jpg'></a>"; //Banner



?>

<link href="style.css" rel="stylesheet" type="text/css"/> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<?php
echo "<div id='vwmain'>";
if (isset($_POST['LOGIN-NOW']))
{
  $player=$_POST['player'];
  $password=$_POST['password'];
  $player=strip_tags($player);
  $password=md5($password);
  

  $query = "select username,password from players where username='$player' and '$password'";
  $result = mysql_query($query) or die("Internal Error 432551 - Login Status: OFFLINE");
  $result2 = mysql_fetch_array($result);
  if ($result2)
  { 
    $_SESSION['player']= $player;
    echo '<meta http-equiv="refresh" content="0; URL=index.php"></center></div>';
  }
  else
  {
	if(isset($language))
	{
		echo "<h2>". $lang['LoginError1']['$language'] . "</h2>";
	}
  else 
  {
  echo "<h2>" . $lang['LoginError1']['en'] . "</h2>";
  }
  
    echo '<meta http-equiv="refresh" content="2; URL=index.php">';
  }
}
else
{
echo "</div>";

if (isset($_SESSION['player']))
{


  $player=$_SESSION['player'];
  $info=mysql_fetch_array(mysql_query("SELECT * from players where username='$player'"));
  $language = $info['language'];
  $gold = $info['gold'];
  
  $admin = $info['admin'];
  $username = $info['username'];
  include_once "runcron.php";  
  include_once "runcron2.php";  
  
}
else
{

include 'register.php';
include 'login.php';

exit;
}
}

include 'menu.php';

/*
ALL PAGES
*/

if(isset($_SESSION['player']))
{

echo '
<div id="playerinfotop"><center>
' . $lang["Username"][$language] . ' ' . $player . '     ' . $lang["Gold"][$language] . ' ' . $gold . '
</div></center>
';

include 'pub.php';


echo '
<div id="igactivemenu">';

if(isset($_POST['village_id'])) // se a pagina tem a informaçao da aldeia do player que vai atacar
{
	$id = $_POST['village_id'];
	$aldeia_info=mysql_fetch_array(mysql_query("SELECT * from aldeias where id='$id'"));
	
	$villageid = $id;
	$quartel_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='quartel'"));
	$palacio_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='palacio'"));
	$engenheiro_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='engenheiro'"));
	$capela_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='capela'"));
	$teatro_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='teatro'"));
	$pesquisas_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='pesquisas'"));
	$moinho_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='moinho'"));
	
	$admin = $info['admin'];
	
	$nome_da_village = $aldeia_info['nome'];
	
	$quartel =$aldeia_info['quartel'];
	$pontos = $aldeia_info['pontos'];
	$palacio = $aldeia_info['palacio'];
	$engenheiro = $aldeia_info['engenheiro'];
	$capela = $aldeia_info['capela'];
	$pesquisas = $aldeia_info['pesquisas'];
	$population = $aldeia_info['population'];
	$teatro = $aldeia_info['teatro'];
	$tempoc = $aldeia_info['tempoc'];
	
	
		
	echo $lang["engenheiro_FirstInfo"][$language];
	echo "<br><h4><u>" . $lang['Eng_Defenses'][$language] . " | ". $lang['Aldeias_population'][$language] . $population . " 
	</h4></u><center><table border='1'>";
	
	$defense1_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='1'"));
	$defense2_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='2'"));
	$defense3_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='3'"));
	$defense4_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='4'"));
	
	
	$defense1_time = $defense1_info['tempot'];
	$defense1_price = $defense1_info['price'];
	$defense1_ataque = $defense1_info['ataque'];
	$defense1_defesa = $defense1_info['defesa'];
	$defense1_nome = $defense1_info['nome'];
	$defense1_qlevel = $defense1_info['qlevel'];
	$defense1_engenheiro = $defense1_info['engenheiro'];
	$defense1_population = $defense1_info['population'];
	
	$defense2_time = $defense2_info['tempot'];
	$defense2_price = $defense2_info['price'];
	$defense2_ataque = $defense2_info['ataque'];
	$defense2_defesa = $defense2_info['defesa'];
	$defense2_nome = $defense2_info['nome'];
	$defense2_qlevel = $defense2_info['qlevel'];
	$defense2_engenheiro = $defense2_info['engenheiro'];
	$defense2_population = $defense2_info['population'];
	
	$defense3_time = $defense3_info['tempot'];
	$defense3_price = $defense3_info['price'];
	$defense3_ataque = $defense3_info['ataque'];
	$defense3_defesa = $defense3_info['defesa'];
	$defense3_nome = $defense3_info['nome'];
	$defense3_qlevel = $defense3_info['qlevel'];
	$defense3_engenheiro = $defense3_info['engenheiro'];
	$defense3_population = $defense3_info['population'];
	
	$defense4_time = $defense4_info['tempot'];
	$defense4_price = $defense4_info['price'];
	$defense4_ataque = $defense4_info['ataque'];
	$defense4_defesa = $defense4_info['defesa'];
	$defense4_nome = $defense4_info['nome'];
	$defense4_qlevel = $defense4_info['qlevel'];
	$defense4_engenheiro = $defense4_info['engenheiro'];
	$defense4_population = $defense4_info['population'];

	
	$current1 = $aldeia_info[$defense1_nome];
	$current2 = $aldeia_info[$defense2_nome];
	$current3 = $aldeia_info[$defense3_nome];
	$current4 = $aldeia_info[$defense4_nome];

	if($language == 'en')
		{
			$defense1_nome = "Wall";
			$defense2_nome = "Ground Traps";
			$defense3_nome = "Catapult";
			$defense4_nome = "Spear Canons";
		}
		
		
	
	
	echo "<form name='training' method='post' action='engenheiro.php'>";
	
	
	//***************************defense1**********************************
	echo '
	<tr><td><img src="images/common/engenheiro/defense1.jpg"></td>
	<td>' . $defense1_nome . '</td>
	<td>' . $lang['engenheiro_Current_defense'][$language] . $current1 . '   </td>
	<td>' . $lang['engenheiro_Price'][$language] . $defense1_price . '   </td>
	<td>' . $lang['engenheiro_population'][$language] . $defense1_population . '   </td>
	<td>' . $lang['engenheiro_Ataque'][$language] . $defense1_ataque . '<br>' . $lang['engenheiro_Defesa'][$language] . $defense1_defesa . '   </td>
	<td>';
	if($quartel >= $defense1_qlevel && $engenheiro >= $defense1_engenheiro) echo '<input type="text" name="defense1amount" size="5" MaxLenght=5 onKeyPress="return numbersonly(this, event)"></td>';
	else
	{		
		echo $lang['quartel_NotHigh'][$language] . $defense1_qlevel . '<br>';
		echo $lang['engenheiro_NotHigh'][$language] . $defense1_engenheiro .  '</td>';
	}	
	echo '</tr>
	';
	
	//*************************************************************
	
	//***************************defense2**********************************
	echo '
	<tr><td><img src="images/common/engenheiro/defense2.jpg"></td>
	<td>' . $defense2_nome . '</td>
	<td>' . $lang['engenheiro_Current_defense'][$language] . $current2 . '   </td>
	<td>' . $lang['engenheiro_Price'][$language] . $defense2_price . '   </td>
	<td>' . $lang['engenheiro_population'][$language] . $defense2_population . '   </td>
	<td>' . $lang['engenheiro_Ataque'][$language] . $defense2_ataque . '<br>' . $lang['engenheiro_Defesa'][$language] . $defense2_defesa . '   </td>
	<td>';
	if($quartel >= $defense2_qlevel && $engenheiro >= $defense2_engenheiro) echo '<input type="text" name="defense2amount" size="5" MaxLenght=5 onKeyPress="return numbersonly(this, event)"></td>';
	else
	{		
		echo $lang['quartel_NotHigh'][$language] . $defense2_qlevel . '<br>';
		echo $lang['engenheiro_NotHigh'][$language] . $defense2_engenheiro .  '</td>';
	}	
	echo '</tr>
	';
	
	//*************************************************************
	
	//***************************defense3**********************************
	echo '
	<tr><td><img src="images/common/engenheiro/defense3.jpg"></td>
	<td>' . $defense3_nome . '</td>
	<td>' . $lang['engenheiro_Current_defense'][$language] . $current3 . '   </td>
	<td>' . $lang['engenheiro_Price'][$language] . $defense3_price . '   </td>
	<td>' . $lang['engenheiro_population'][$language] . $defense3_population . '   </td>
	<td>' . $lang['engenheiro_Ataque'][$language] . $defense3_ataque . '<br>' . $lang['engenheiro_Defesa'][$language] . $defense3_defesa . '   </td>
	<td>';
	if($quartel >= $defense3_qlevel && $engenheiro >= $defense3_engenheiro) echo '<input type="text" name="defense3amount" size="5" MaxLenght=5 onKeyPress="return numbersonly(this, event)"></td>';
	else
	{		
		echo $lang['quartel_NotHigh'][$language] . $defense3_qlevel . '<br>';
		echo $lang['engenheiro_NotHigh'][$language] . $defense3_engenheiro .  '</td>';
	}	
	echo '</tr>
	';
	
	//*************************************************************
	
	//***************************defense4**********************************
	echo '
	<tr><td><img src="images/common/engenheiro/defense4.jpg"></td>
	<td>' . $defense4_nome . '</td>
	<td>' . $lang['engenheiro_Current_defense'][$language] . $current4 . '   </td>
	<td>' . $lang['engenheiro_Price'][$language] . $defense4_price . '   </td>
	<td>' . $lang['engenheiro_population'][$language] . $defense4_population . '   </td>
	<td>' . $lang['engenheiro_Ataque'][$language] . $defense4_ataque . '<br>' . $lang['engenheiro_Defesa'][$language] . $defense4_defesa . '   </td>
	<td>';
	if($quartel >= $defense4_qlevel && $engenheiro >= $defense4_engenheiro) echo '<input type="text" name="defense4amount" size="5" MaxLenght=5 onKeyPress="return numbersonly(this, event)"></td>';
	else
	{		
		echo $lang['quartel_NotHigh'][$language] . $defense4_qlevel . '<br>';
		echo $lang['engenheiro_NotHigh'][$language] . $defense4_engenheiro .  '</td>';
	}	
	echo '</tr>
	';
	
	//*************************************************************
	
	
	
	echo "</table>
	<input type='hidden' name='village__id' value='$villageid'>
	<input type='hidden' name='TRAIN' value=1>
	<input type='submit' value='". $lang['Quartel_Treinar'][$language] . "'></form></center>";
	
	/**************************
	END TRAINING DEFENSES
	*/
	echo "<br><h4>" . $lang['engenheiro_Recrutando'][$language] . "</h4><table border='0'>";
		$query=mysql_query("SELECT * from recruit_def where aldeia_id = '$villageid'");
		$result = mysql_fetch_array($query);
		$num = mysql_numrows($query);
		$i = 0;
		while ($i < $num ) {
		$tempo = mysql_result($query,$i,"time1");
		$finish = mysql_result($query,$i,"finish");
		$price = mysql_result($query,$i,"total_price");
		$date = mysql_result($query,$i,"time");
		if(time() > $finish)	echo "<tr><td>$date</td><td>". $lang['engenheiro_recruted'][$language] . "</td>";
		else
		{
			$rest = $finish - time();
			echo "<tr>
			<td>$date</td><td>" . $lang['engenheiro_price'][$language] . "$price</td><td>" . $lang['engenheiro_Restante'][$language] . "$rest</td>
			</tr>";
		}
		
		$i++;
}
if($num == 0)	echo "<center>" . $lang['eng_nothingtraining'][$language] . "<br><br></center>";
	
	echo "</table><center>";
	if($language == 'pt')		echo "<form method='GET' action='aldeia.php'><input type='hidden' name='village' value='$nome_da_village'><input type='image' src='" . $Back_to_Village_Image_pt . "' alt='Submit button'></form>";
	else if($language == 'en')	echo "<form method='GET' action='aldeia.php'><input type='hidden' name='village' value='$nome_da_village'><input type='image' src='" . $Back_to_Village_Image . "' alt='Submit button'></form></center>";

	
	
}
else if(isset($_POST['TRAIN']))
{

$defense1 = isset($_POST['defense1amount']) ? $_POST['defense1amount'] : 0; 
$defense2 = isset($_POST['defense2amount']) ? $_POST['defense2amount'] : 0; 
$defense3 = isset($_POST['defense3amount']) ? $_POST['defense3amount'] : 0; 
$defense4 = isset($_POST['defense4amount']) ? $_POST['defense4amount'] : 0;

echo $defense1 . ' ' . $defense2 . ' ' . $defense3 . ' ' . $defense4; 


	$vid = $_POST['village__id'];
	$aldeia_info=mysql_fetch_array(mysql_query("SELECT * from aldeias where id='$vid'"));
	
	$nome_da_village = $aldeia_info['nome'];
	
	$population = $aldeia_info['population'];
	
	
	$defense1_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='1'"));
	$defense2_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='2'"));
	$defense3_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='3'"));
	$defense4_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='4'"));
	
	
	$defense1_time = $defense1_info['tempot'];
	$defense1_price = $defense1_info['price'];
	$defense1_ataque = $defense1_info['ataque'];
	$defense1_defesa = $defense1_info['defesa'];
	$defense1_nome = $defense1_info['nome'];
	$defense1_qlevel = $defense1_info['qlevel'];
	$defense1_engenheiro = $defense1_info['engenheiro'];
	$defense1_population = $defense1_info['population'];
	
	$defense2_time = $defense2_info['tempot'];
	$defense2_price = $defense2_info['price'];
	$defense2_ataque = $defense2_info['ataque'];
	$defense2_defesa = $defense2_info['defesa'];
	$defense2_nome = $defense2_info['nome'];
	$defense2_qlevel = $defense2_info['qlevel'];
	$defense2_engenheiro = $defense2_info['engenheiro'];
	$defense2_population = $defense2_info['population'];
	
	$defense3_time = $defense3_info['tempot'];
	$defense3_price = $defense3_info['price'];
	$defense3_ataque = $defense3_info['ataque'];
	$defense3_defesa = $defense3_info['defesa'];
	$defense3_nome = $defense3_info['nome'];
	$defense3_qlevel = $defense3_info['qlevel'];
	$defense3_engenheiro = $defense3_info['engenheiro'];
	$defense3_population = $defense3_info['population'];
	
	$defense4_time = $defense4_info['tempot'];
	$defense4_price = $defense4_info['price'];
	$defense4_ataque = $defense4_info['ataque'];
	$defense4_defesa = $defense4_info['defesa'];
	$defense4_nome = $defense4_info['nome'];
	$defense4_qlevel = $defense4_info['qlevel'];
	$defense4_engenheiro = $defense4_info['engenheiro'];
	$defense4_population = $defense4_info['population'];

	
	$current1 = $aldeia_info[$defense1_nome];
	$current2 = $aldeia_info[$defense2_nome];
	$current3 = $aldeia_info[$defense3_nome];
	$current4 = $aldeia_info[$defense4_nome];
	
	
	$need_pop = $defense1 * $defense1_population + $defense2 * $defense2_population + $defense3 * $defense3_population + $defense4 * $defense4_population; 
		
	if($population < $need_pop)
	{
		echo "<center><h3>" . $lang['Not_Enough_Population'][$language] . "</h3>";
		if($language == 'pt')
		{
			echo "<form method='GET' action='aldeia.php'>
			<input type='hidden' name='village' value='$nome_da_village'>
			<input type='image' src='" . $Back_to_Village_Image_pt . "' alt='Submit button'>
			</form>";
		}
		else if($language == 'en')
		{
			echo "<form method='GET' action='aldeia.php'>
			<input type='hidden' name='village' value='$nome_da_village'>
			<input type='image' src='" . $Back_to_Village_Image . "' alt='Submit button'>
			</form></center>";
		}
	}
	else
	{
	
		//Can recruit
		
				
		$times1 = $defense1 * $defense1_time;
		$times2 = $defense2 * $defense2_time;
		$times3 = $defense3 * $defense3_time;
		$times4 = $defense4 * $defense4_time;
		$time = time();
		$finish = time() + $times1 +  $times2 +  $times3 +  $times4 ;
		
		$price1 = $defense1 * $defense1_price;
		$price2 = $defense2 * $defense2_price;
		$price3 = $defense3 * $defense3_price;
		$price4 = $defense4 * $defense4_price;
		
		$total = $price1 + $price2 + $price3 + $price4;
		
		if($gold >= $total)
		{
		
		$need = $need_pop;
		
		$vil_id = $aldeia_info['id'];
		
		$randid = rand(0,99999);
		
		if($defense1!=0 || $defense2!=0 || $defense3!=0 || $defense4!=0)
		{
		$recruit = "INSERT into recruit_def (aldeia_id, defense1, defense2, defense3, defense4, time1, finish, total_price, randid) VALUES 
		('$vil_id', '$defense1', '$defense2', '$defense3', '$defense4', '$time','$finish','$total', '$randid')" or die("" . mysql_error());
		
		
		mysql_query("UPDATE players SET `gold`=`gold`-'$total' where username='$username'");
		mysql_query("UPDATE aldeias SET `population`=`population`-'$need' where id='$vid'");
		mysql_query($recruit);
		}
		
		echo $lang['engenheiro_Began'][$language];
		
		if($language == 'pt')
		{
			echo "<form method='GET' action='aldeia.php'>
			<input type='hidden' name='village' value='$nome_da_village'>
			<input type='image' src='" . $Back_to_Village_Image_pt . "' alt='Submit button'>
			</form>";
		}
		else if($language == 'en')
		{
			echo "<form method='GET' action='aldeia.php'>
			<input type='hidden' name='village' value='$nome_da_village'>
			<input type='image' src='" . $Back_to_Village_Image . "' alt='Submit button'>
			</form></center>";
		}
		
		}
		else
		{
				echo $lang['Quartel_NotEnoughGold'][$language];
			
			if($language == 'pt')
			{
				echo "<form method='GET' action='aldeia.php'>
				<input type='hidden' name='village' value='$nome_da_village'>
				<input type='image' src='" . $Back_to_Village_Image_pt . "' alt='Submit button'>
				</form>";
			}
			else if($language == 'en')
			{
				echo "<form method='GET' action='aldeia.php'>
				<input type='hidden' name='village' value='$nome_da_village'>
				<input type='image' src='" . $Back_to_Village_Image . "' alt='Submit button'>
				</form></center>";
			}
			
		}
		
	}
	
	
		
	
}
else
{
	echo '<meta http-equiv="refresh" content="0; URL=aldeia.php">';
}


echo '
</div>';

}

?>


Original Post:
Hello all :D

Im having this annoying error -.- That i got a form to recruit like soldiers and stuff.. But if i didnt fill any textbox with the ammount i want, it begins recruting one of each :(

I have tried many things but cant make it work.
Oh and another problem, when i put a value, it does the same and recruits only 1 of each.

Here's the page actions:

Code: Select all

if(isset($_POST['village_id'])) // se a pagina tem a informaçao da aldeia do player que vai atacar
{
	$id = $_POST['village_id'];
	$aldeia_info=mysql_fetch_array(mysql_query("SELECT * from aldeias where id='$id'"));
	
	$villageid = $id;
	$quartel_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='quartel'"));
	$palacio_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='palacio'"));
	$engenheiro_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='engenheiro'"));
	$capela_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='capela'"));
	$teatro_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='teatro'"));
	$pesquisas_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='pesquisas'"));
	$moinho_info=mysql_fetch_array(mysql_query("SELECT * from buildings where name='moinho'"));
	
	$admin = $info['admin'];
	
	$nome_da_village = $aldeia_info['nome'];
	
	$quartel =$aldeia_info['quartel'];
	$pontos = $aldeia_info['pontos'];
	$palacio = $aldeia_info['palacio'];
	$engenheiro = $aldeia_info['engenheiro'];
	$capela = $aldeia_info['capela'];
	$pesquisas = $aldeia_info['pesquisas'];
	$population = $aldeia_info['population'];
	$teatro = $aldeia_info['teatro'];
	$tempoc = $aldeia_info['tempoc'];
	
	
		
	echo $lang["engenheiro_FirstInfo"][$language];
	echo "<br><h4><u>" . $lang['Eng_Defenses'][$language] . " | ". $lang['Aldeias_population'][$language] . $population . " 
	</h4></u><center><table border='1'>";
	
	$defense1_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='1'"));
	$defense2_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='2'"));
	$defense3_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='3'"));
	$defense4_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='4'"));
	
	
	$defense1_time = $defense1_info['tempot'];
	$defense1_price = $defense1_info['price'];
	$defense1_ataque = $defense1_info['ataque'];
	$defense1_defesa = $defense1_info['defesa'];
	$defense1_nome = $defense1_info['nome'];
	$defense1_qlevel = $defense1_info['qlevel'];
	$defense1_engenheiro = $defense1_info['engenheiro'];
	$defense1_population = $defense1_info['population'];
	
	$defense2_time = $defense2_info['tempot'];
	$defense2_price = $defense2_info['price'];
	$defense2_ataque = $defense2_info['ataque'];
	$defense2_defesa = $defense2_info['defesa'];
	$defense2_nome = $defense2_info['nome'];
	$defense2_qlevel = $defense2_info['qlevel'];
	$defense2_engenheiro = $defense2_info['engenheiro'];
	$defense2_population = $defense2_info['population'];
	
	$defense3_time = $defense3_info['tempot'];
	$defense3_price = $defense3_info['price'];
	$defense3_ataque = $defense3_info['ataque'];
	$defense3_defesa = $defense3_info['defesa'];
	$defense3_nome = $defense3_info['nome'];
	$defense3_qlevel = $defense3_info['qlevel'];
	$defense3_engenheiro = $defense3_info['engenheiro'];
	$defense3_population = $defense3_info['population'];
	
	$defense4_time = $defense4_info['tempot'];
	$defense4_price = $defense4_info['price'];
	$defense4_ataque = $defense4_info['ataque'];
	$defense4_defesa = $defense4_info['defesa'];
	$defense4_nome = $defense4_info['nome'];
	$defense4_qlevel = $defense4_info['qlevel'];
	$defense4_engenheiro = $defense4_info['engenheiro'];
	$defense4_population = $defense4_info['population'];

	
	$current1 = $aldeia_info[$defense1_nome];
	$current2 = $aldeia_info[$defense2_nome];
	$current3 = $aldeia_info[$defense3_nome];
	$current4 = $aldeia_info[$defense4_nome];

	if($language == 'en')
		{
			$defense1_nome = "Wall";
			$defense2_nome = "Ground Traps";
			$defense3_nome = "Catapult";
			$defense4_nome = "Spear Canons";
		}
		
		
	
	
	echo "<form name='training' method='post' action='engenheiro.php'>";
	
	
	//***************************defense1**********************************
	echo '
	<tr><td><img src="images/common/engenheiro/defense1.jpg"></td>
	<td>' . $defense1_nome . '</td>
	<td>' . $lang['engenheiro_Current_defense'][$language] . $current1 . '   </td>
	<td>' . $lang['engenheiro_Price'][$language] . $defense1_price . '   </td>
	<td>' . $lang['engenheiro_population'][$language] . $defense1_population . '   </td>
	<td>' . $lang['engenheiro_Ataque'][$language] . $defense1_ataque . '<br>' . $lang['engenheiro_Defesa'][$language] . $defense1_defesa . '   </td>
	<td>';
	if($quartel >= $defense1_qlevel && $engenheiro >= $defense1_engenheiro) echo '<input type="text" name="defense1amount" size="5" MaxLenght=5 onKeyPress="return numbersonly(this, event)"></td>';
	else
	{		
		echo $lang['quartel_NotHigh'][$language] . $defense1_qlevel . '<br>';
		echo $lang['engenheiro_NotHigh'][$language] . $defense1_engenheiro .  '</td>';
	}	
	echo '</tr>
	';
	
	//*************************************************************
	
	//***************************defense2**********************************
	echo '
	<tr><td><img src="images/common/engenheiro/defense2.jpg"></td>
	<td>' . $defense2_nome . '</td>
	<td>' . $lang['engenheiro_Current_defense'][$language] . $current2 . '   </td>
	<td>' . $lang['engenheiro_Price'][$language] . $defense2_price . '   </td>
	<td>' . $lang['engenheiro_population'][$language] . $defense2_population . '   </td>
	<td>' . $lang['engenheiro_Ataque'][$language] . $defense2_ataque . '<br>' . $lang['engenheiro_Defesa'][$language] . $defense2_defesa . '   </td>
	<td>';
	if($quartel >= $defense2_qlevel && $engenheiro >= $defense2_engenheiro) echo '<input type="text" name="defense2amount" size="5" MaxLenght=5 onKeyPress="return numbersonly(this, event)"></td>';
	else
	{		
		echo $lang['quartel_NotHigh'][$language] . $defense2_qlevel . '<br>';
		echo $lang['engenheiro_NotHigh'][$language] . $defense2_engenheiro .  '</td>';
	}	
	echo '</tr>
	';
	
	//*************************************************************
	
	//***************************defense3**********************************
	echo '
	<tr><td><img src="images/common/engenheiro/defense3.jpg"></td>
	<td>' . $defense3_nome . '</td>
	<td>' . $lang['engenheiro_Current_defense'][$language] . $current3 . '   </td>
	<td>' . $lang['engenheiro_Price'][$language] . $defense3_price . '   </td>
	<td>' . $lang['engenheiro_population'][$language] . $defense3_population . '   </td>
	<td>' . $lang['engenheiro_Ataque'][$language] . $defense3_ataque . '<br>' . $lang['engenheiro_Defesa'][$language] . $defense3_defesa . '   </td>
	<td>';
	if($quartel >= $defense3_qlevel && $engenheiro >= $defense3_engenheiro) echo '<input type="text" name="defense3amount" size="5" MaxLenght=5 onKeyPress="return numbersonly(this, event)"></td>';
	else
	{		
		echo $lang['quartel_NotHigh'][$language] . $defense3_qlevel . '<br>';
		echo $lang['engenheiro_NotHigh'][$language] . $defense3_engenheiro .  '</td>';
	}	
	echo '</tr>
	';
	
	//*************************************************************
	
	//***************************defense4**********************************
	echo '
	<tr><td><img src="images/common/engenheiro/defense4.jpg"></td>
	<td>' . $defense4_nome . '</td>
	<td>' . $lang['engenheiro_Current_defense'][$language] . $current4 . '   </td>
	<td>' . $lang['engenheiro_Price'][$language] . $defense4_price . '   </td>
	<td>' . $lang['engenheiro_population'][$language] . $defense4_population . '   </td>
	<td>' . $lang['engenheiro_Ataque'][$language] . $defense4_ataque . '<br>' . $lang['engenheiro_Defesa'][$language] . $defense4_defesa . '   </td>
	<td>';
	if($quartel >= $defense4_qlevel && $engenheiro >= $defense4_engenheiro) echo '<input type="text" name="defense4amount" size="5" MaxLenght=5 onKeyPress="return numbersonly(this, event)"></td>';
	else
	{		
		echo $lang['quartel_NotHigh'][$language] . $defense4_qlevel . '<br>';
		echo $lang['engenheiro_NotHigh'][$language] . $defense4_engenheiro .  '</td>';
	}	
	echo '</tr>
	';
	
	//*************************************************************
	
	
	
	echo "</table>
	<input type='hidden' name='village__id' value='$villageid'>
	<input type='hidden' name='TRAIN' value=1>
	<input type='submit' value='". $lang['Quartel_Treinar'][$language] . "'></form></center>";
	
	/**************************
	END TRAINING DEFENSES
	*/
	echo "<br><h4>" . $lang['engenheiro_Recrutando'][$language] . "</h4><table border='0'>";
		$query=mysql_query("SELECT * from recruit_def where aldeia_id = '$villageid'");
		$result = mysql_fetch_array($query);
		$num = mysql_numrows($query);
		$i = 0;
		while ($i < $num ) {
		$tempo = mysql_result($query,$i,"time1");
		$finish = mysql_result($query,$i,"finish");
		$price = mysql_result($query,$i,"total_price");
		$date = mysql_result($query,$i,"time");
		if(time() > $finish)	echo "<tr><td>$date</td><td>". $lang['engenheiro_recruted'][$language] . "</td>";
		else
		{
			$rest = $finish - time();
			echo "<tr>
			<td>$date</td><td>" . $lang['engenheiro_price'][$language] . "$price</td><td>" . $lang['engenheiro_Restante'][$language] . "$rest</td>
			</tr>";
		}
		
		$i++;
}
if($num == 0)	echo "<center>" . $lang['eng_nothingtraining'][$language] . "<br><br></center>";
	
	echo "</table><center>";
	if($language == 'pt')		echo "<form method='GET' action='aldeia.php'><input type='hidden' name='village' value='$nome_da_village'><input type='image' src='" . $Back_to_Village_Image_pt . "' alt='Submit button'></form>";
	else if($language == 'en')	echo "<form method='GET' action='aldeia.php'><input type='hidden' name='village' value='$nome_da_village'><input type='image' src='" . $Back_to_Village_Image . "' alt='Submit button'></form></center>";

	
	
}
else if(isset($_POST['TRAIN']))
{
	
	$vid = $_POST['village__id'];
	$aldeia_info=mysql_fetch_array(mysql_query("SELECT * from aldeias where id='$vid'"));
	
	$nome_da_village = $aldeia_info['nome'];
	
	$population = $aldeia_info['population'];
	$defense1 = mysql_real_escape_string(isset($_POST['defense1amount'])); // 
	$defense2 = mysql_real_escape_string(isset($_POST['defense2amount'])); // 
	$defense3 = mysql_real_escape_string(isset($_POST['defense3amount'])); //
	$defense4 = mysql_real_escape_string(isset($_POST['defense4amount'])); //
	
	if(isset($_POST['defense1amount']) == "" || isset($_POST['defense1amount']) == 1) $defense1 = 0;
	if(isset($_POST['defense2amount']) == ""  || isset($_POST['defense2amount']) == 1) $defense2 = 0;
	if(isset($_POST['defense3amount']) == ""  || isset($_POST['defense3amount']) == 1) $defense3 = 0;
	if(isset($_POST['defense4amount']) == ""  || isset($_POST['defense4amount']) == 1) $defense4 = 0;
	
	
	
	
	//estou a começar a ficar farto disto ...
	
	if($defense1 || $defense2 || $defense3 || $defense4)
	{
	
	
	$defense1_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='1'"));
	$defense2_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='2'"));
	$defense3_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='3'"));
	$defense4_info = mysql_fetch_array(mysql_query("SELECT * from defense where id='4'"));
	
	
	$defense1_time = $defense1_info['tempot'];
	$defense1_price = $defense1_info['price'];
	$defense1_ataque = $defense1_info['ataque'];
	$defense1_defesa = $defense1_info['defesa'];
	$defense1_nome = $defense1_info['nome'];
	$defense1_qlevel = $defense1_info['qlevel'];
	$defense1_engenheiro = $defense1_info['engenheiro'];
	$defense1_population = $defense1_info['population'];
	
	$defense2_time = $defense2_info['tempot'];
	$defense2_price = $defense2_info['price'];
	$defense2_ataque = $defense2_info['ataque'];
	$defense2_defesa = $defense2_info['defesa'];
	$defense2_nome = $defense2_info['nome'];
	$defense2_qlevel = $defense2_info['qlevel'];
	$defense2_engenheiro = $defense2_info['engenheiro'];
	$defense2_population = $defense2_info['population'];
	
	$defense3_time = $defense3_info['tempot'];
	$defense3_price = $defense3_info['price'];
	$defense3_ataque = $defense3_info['ataque'];
	$defense3_defesa = $defense3_info['defesa'];
	$defense3_nome = $defense3_info['nome'];
	$defense3_qlevel = $defense3_info['qlevel'];
	$defense3_engenheiro = $defense3_info['engenheiro'];
	$defense3_population = $defense3_info['population'];
	
	$defense4_time = $defense4_info['tempot'];
	$defense4_price = $defense4_info['price'];
	$defense4_ataque = $defense4_info['ataque'];
	$defense4_defesa = $defense4_info['defesa'];
	$defense4_nome = $defense4_info['nome'];
	$defense4_qlevel = $defense4_info['qlevel'];
	$defense4_engenheiro = $defense4_info['engenheiro'];
	$defense4_population = $defense4_info['population'];

	
	$current1 = $aldeia_info[$defense1_nome];
	$current2 = $aldeia_info[$defense2_nome];
	$current3 = $aldeia_info[$defense3_nome];
	$current4 = $aldeia_info[$defense4_nome];
	
	
	$need_pop = $defense1 * $defense1_population + $defense2 * $defense2_population + $defense3 * $defense3_population + $defense4 * $defense4_population; 
		
	if($population < $need_pop)
	{
		echo "<center><h3>" . $lang['Not_Enough_Population'][$language] . "</h3>";
		if($language == 'pt')
		{
			echo "<form method='GET' action='aldeia.php'>
			<input type='hidden' name='village' value='$nome_da_village'>
			<input type='image' src='" . $Back_to_Village_Image_pt . "' alt='Submit button'>
			</form>";
		}
		else if($language == 'en')
		{
			echo "<form method='GET' action='aldeia.php'>
			<input type='hidden' name='village' value='$nome_da_village'>
			<input type='image' src='" . $Back_to_Village_Image . "' alt='Submit button'>
			</form></center>";
		}
	}
	else
	{
	
		//Can recruit
		
				
		$times1 = $defense1 * $defense1_time;
		$times2 = $defense2 * $defense2_time;
		$times3 = $defense3 * $defense3_time;
		$times4 = $defense4 * $defense4_time;
		$time = time();
		$finish = time() + $times1 +  $times2 +  $times3 +  $times4 ;
		
		$price1 = $defense1 * $defense1_price;
		$price2 = $defense2 * $defense2_price;
		$price3 = $defense3 * $defense3_price;
		$price4 = $defense4 * $defense4_price;
		
		$total = $price1 + $price2 + $price3 + $price4;
		
		if($gold >= $total)
		{
		
		$need = $need_pop;
		
		$vil_id = $aldeia_info['id'];
		
		$randid = rand(0,99999);
		
		if($defense1==1 || $defense2==1 || $defense3!=1 || $defense4==1)
		{
		$recruit = "INSERT into recruit_def (aldeia_id, defense1, defense2, defense3, defense4, time1, finish, total_price, randid) VALUES 
		('$vil_id', '$defense1', '$defense2', '$defense3', '$defense4', '$time','$finish','$total', '$randid')" or die("" . mysql_error());
		
		
		mysql_query("UPDATE players SET `gold`=`gold`-'$total' where username='$username'");
		mysql_query("UPDATE aldeias SET `population`=`population`-'$need' where id='$vid'");
		mysql_query($recruit);
		}
		
		echo $lang['engenheiro_Began'][$language];
		
		if($language == 'pt')
		{
			echo "<form method='GET' action='aldeia.php'>
			<input type='hidden' name='village' value='$nome_da_village'>
			<input type='image' src='" . $Back_to_Village_Image_pt . "' alt='Submit button'>
			</form>";
		}
		else if($language == 'en')
		{
			echo "<form method='GET' action='aldeia.php'>
			<input type='hidden' name='village' value='$nome_da_village'>
			<input type='image' src='" . $Back_to_Village_Image . "' alt='Submit button'>
			</form></center>";
		}
		
		}
		else
		{
				echo $lang['Quartel_NotEnoughGold'][$language];
			
			if($language == 'pt')
			{
				echo "<form method='GET' action='aldeia.php'>
				<input type='hidden' name='village' value='$nome_da_village'>
				<input type='image' src='" . $Back_to_Village_Image_pt . "' alt='Submit button'>
				</form>";
			}
			else if($language == 'en')
			{
				echo "<form method='GET' action='aldeia.php'>
				<input type='hidden' name='village' value='$nome_da_village'>
				<input type='image' src='" . $Back_to_Village_Image . "' alt='Submit button'>
				</form></center>";
			}
			
		}
		
	}
	
	}
	else
	{
		echo '<meta http-equiv="refresh" content="0; URL=aldeia.php">';
	}
	
	
}

Anybody knows how to fix this?
Last edited by vitinho444 on Tue Mar 27, 2012 9:50 am, edited 1 time in total.
My Company Website: http://www.oryzhon.com

Skype: vpegas1234
User avatar
Zak Zillion
Posts: 112
Joined: Thu Apr 07, 2011 12:55 am

Re: Submiting a Form with every fields blank

Post by Zak Zillion »

I didn't read all of your code but if your having that problem then you might want to try something like this.

Code: Select all

if($yourVariable == '') { $yourVariable = '0'; }
It will add 0 to the current amount.
"Any intelligent fool can make things bigger, more complex, and more violent. It takes a touch of genius -- and a lot of courage -- to move in the opposite direction." - Albert Einstein

Old Project(s):
The Dark Flame
User avatar
vitinho444
Posts: 2819
Joined: Mon Mar 21, 2011 4:54 pm

Re: Submiting a Form with every fields blank

Post by vitinho444 »

same thing, i did it but it still uses 1 for every field..

here's the part checking for that:

Code: Select all

$defense1 = $defense2 = $defense3 = $defense4 = 0;
	
	if(isset($_POST['defense1amount']) == "" || isset($_POST['defense1amount']) == 1) $defense1 = 0;
	if(isset($_POST['defense2amount']) == "" || isset($_POST['defense2amount']) == 1) $defense2 = 0;
	if(isset($_POST['defense3amount']) == "" || isset($_POST['defense3amount']) == 1) $defense3 = 0;
	if(isset($_POST['defense4amount']) == "" || isset($_POST['defense4amount']) == 1) $defense4 = 0;
	


	//check if there's any value
	if($defense1 || $defense2 || $defense3 || $defense4)
	{
//do stuff
}



It works for non input but if i put a value it does the same thing :(
My Company Website: http://www.oryzhon.com

Skype: vpegas1234
User avatar
Foofighter
Posts: 121
Joined: Sun Mar 04, 2012 1:52 pm

Re: Submiting a Form with every fields blank

Post by Foofighter »

Hi,

i do it like this with every input value:

if (($_POST['rakete']) == ""){$rakete = 0;}
else{$rakete = protect($_POST['rakete']);}

looks like this in your case:


Code: Select all

       if(isset($_POST['defense1amount']) == "") {$defense1 = 0;}
                else{$defense1 = ($_POST['defense1amount']);}
       if(isset($_POST['defense2amount']) == "") {$defense2 = 0;}
                else{$defense2 = ($_POST['defense2amount']);}
       if(isset($_POST['defense3amount']) == "") {$defense3 = 0;}
                else{$defense3 = ($_POST['defense3amount']);}
       if(isset($_POST['defense4amount']) == "") {$defense4 = 0;}
                else{$defense4 = ($_POST['defense4amount']);}


       //check if there's any value
       if(($defense1 || $defense2 || $defense3 || $defense4) = THE VALUE YOU WANNA CHECK)
       {
    //do stuff
    } 
but there is the value missing you want to check down here..

greetz
Foo
User avatar
Chris
Posts: 1580
Joined: Wed Sep 30, 2009 7:22 pm

Re: Submiting a Form with every fields blank

Post by Chris »

Isset returns a boolean (true or false), not a string. So doing this:

Code: Select all

if(isset($_POST['defense1amount']) == "") 
should not work.

doing this might:

Code: Select all

if( isset($_POST['defense1amount']) == 1 ) 
But it will be comparing 1 to true or false (1 or 0).


You could write this as a shorthand if statement:

Code: Select all

$defense1 = isset($_POST['defense1amount']) ? $_POST['defense1amount'] : 0; 
Which is a shorter way of doing:

Code: Select all

$defense1 = 0;
if( isset($_POST['defence1amount']) )
{
    $defense1 = $_POST['defence1amount'];
} 
Line 228:

Code: Select all

$defense1 = mysql_real_escape_string(isset($_POST['defense1amount'])); 
That would be turning it into true or false. You want to get rid of the isset function.
Fighting for peace is declaring war on war. If you want peace be peaceful.
User avatar
vitinho444
Posts: 2819
Joined: Mon Mar 21, 2011 4:54 pm

Re: Submiting a Form with every fields blank

Post by vitinho444 »

i made a output if there's no fields being filled and its showing it.

i used this:

Code: Select all

$defense1 = 0;
	$defense2 = 0;
	$defense3 = 0;
	$defense4 = 0;
	
	if( isset($_POST['defence1amount']) )
	{
		$defense1 = $_POST['defence1amount'];
	}
	if( isset($_POST['defence2amount']) )
	{
		$defense2 = $_POST['defence2amount'];
	}
	if( isset($_POST['defence3amount']) )
	{
		$defense3 = $_POST['defence3amount'];
	}
	if( isset($_POST['defence4amount']) )
	{
		$defense4 = $_POST['defence4amount'];
	} 
"by chris"

But it seems not working... the not filling any fields is working right, but when i try to actually fill like 1 of them with a number it gives the same as everything is blank...

:S

@EDIT

My form is a table, and i use the textfields like this:
<input type="text" name="defense4amount" size="5" MaxLenght=5 onKeyPress="return numbersonly(this, event)">

numbersonly is a javascript function to only let the player input numbers.

Can it be the problem?
My Company Website: http://www.oryzhon.com

Skype: vpegas1234
User avatar
Chris
Posts: 1580
Joined: Wed Sep 30, 2009 7:22 pm

Re: Submiting a Form with every fields blank

Post by Chris »

defence1amount should be defense1amount, my bad from the previous example.

JavaScript has very little to do with PHP.

Try this:

Code: Select all

$defense1 = isset($_POST['defense1amount']) ? $_POST['defense1amount'] : 0; 
$defense2 = isset($_POST['defense2amount']) ? $_POST['defense2amount'] : 0; 
$defense3 = isset($_POST['defense3amount']) ? $_POST['defense3amount'] : 0; 
$defense4 = isset($_POST['defense4amount']) ? $_POST['defense4amount'] : 0;

echo $defense1 . ' ' . $defense2 . ' ' . $defense3 . ' ' . $defense4; 
Fighting for peace is declaring war on war. If you want peace be peaceful.
User avatar
vitinho444
Posts: 2819
Joined: Mon Mar 21, 2011 4:54 pm

Re: Submiting a Form with every fields blank

Post by vitinho444 »

Well, Chris that worked, it gives me the correct values...
IT WORKED IT WORKED OMG IT WORKED

I LOVE INDIE-RESOURCE.COM COMMUNITY YOU ARE THE BEST DUDES OVER THE INTERNET
My Company Website: http://www.oryzhon.com

Skype: vpegas1234
Post Reply

Return to “Coding”