Jump to content

PHP - MySQL Fail


Cetanu

Recommended Posts

My PHP code will only execute the first part of my code...

 

<?php 

session_start(); 

?> 

<html> 

<head> 

<title> Create a Character</title> 

<style type="text/css"> 

body{ 

background-color: #000; 

font-family: Arial, Tahoma; 

font-size: .78em; 

} 

fieldset{ 

padding: 10px; 

margin: 10px; 

border: 1px solid #57626B; 

width: 70%; 

float: left;

} 

legend{ 

background-color: #6A8CA5; 

border: 1px solid #000; 

padding: 5px; 

}

input{ 

font-style: italic; 
-moz-border-radius: 5px; 
-webkit-border-radius: 5px;

}


#tester{ 

background-color: #333; 

margin: 0 auto; 

padding: 10px; 

width: 70%; 

height: 80%;

} 

#stats{ 

float: left; 

width: 25%; 

font-style: italic; 

color: #000; 

padding: 5px; 

border: 1px dashed #999; 

}

</style>



</head> 

<body> 

<div id="tester"> 



<?php 

//Creation script designed by Cetanu of http://mythscape.freezoka.com and http://tehfreerpg.proboards.com

//This script is licensed by the Creative Commons for: Sharing, Attribution, Non-derivative, and non-commercial. 

//You MUST leave these notices in for LEGAL use of this script. YOU MAY NOT EDIT THIS SCRIPT LEGALLY.  

//For more: http://creativecommons.org/licenses/by-nc-nd/3.0/us/



if(empty($_SESSION['user_id'])){ 

die("<strong>You are not logged in. Please do so to access the RPG Sector.</strong>"); 

}

if(empty($_POST['cont'])){



echo " Time to create your character!<br/> 

<form action='create.php' method='post'> 

<fieldset> 

<legend>Create Character for <strong>".$_SESSION['user_id']."</strong></i></u></legend> 

<p>Please choose a species.</p>



<input type='radio' name='Species' id='pred' value='Predator'/>Predator (Yautja)<br/>

<input type='radio' name='Species' id='alien' value='Alien'/>Alien (Xenomorph)<br/> 

<input type='radio' name='Species' id='human' value='Marine'/>Marine<br/>  <br/> 



<label for='name'>Character Name</label>

<input type='text' maxlength='25' id='name' name='name'/><br/> 



<input type='hidden' maxlength='30' value='{$_SESSION['user_id']}' id='player' name='player' readonly='readonly'/><br/> 





<input type='submit' name='cont' id='cont' value='Continue On'/>



</fieldset> 

</form>";

} 

echo "<br/>";

if(!empty($_POST['cont'])){ 

$species = $_POST['species'];
include "db.php"; 

if(empty($_POST['name']) || empty($_POST['Species'])){ 

echo "<script>document.write('You must input a species and a name!'); setTimeout(\"window.location.reload()\", 350);</script>";

} 



if ($species== "Predator" || "Alien" || "Marine" && !empty($_POST['name'])){


mysql_query("INSERT INTO rpg (name, species, player) VALUES ('{$_POST['name']}' , '{$_POST['Species']}' , '{$_POST['player']}')")

or die(mysql_error());  
}


elseif($species=="Predator"){ 

mysql_query("UPDATE rpg SET max_health=25, health=25, attack=25, defense=25, honor=20 WHERE player='{$_POST['player']}')");

}

elseif($species=="Alien"){ 

mysql_query("UPDATE rpg SET health=20, max_health=20, attack=20 , defense=20 , stealth=20 WHERE player='{$_POST['player']}"); 

}

elseif($species=="Marine"){ 

mysql_query("UPDATE rpg SET health=15, max_health=15 , attack=20 , defense=20 , melee=20 WHERE player='{$_POST['player']}"); 

}

else{ 

echo "Invalid Species. Try again!"; 

}
mysql_query("INSERT INTO bank (player , amount) VALUES('{$_SESSION['user_id']}' , 5)"); 



header('Location: statadd.php');




}



?>





</div>  





</body> 



</html> 

 

The part starts here...When it gets to the three elseif statements, they are the only things that won't execute. Everything else works. I don't get errors.

<?php

if(!empty($_POST['cont'])){ 

$species = $_POST['species'];
include "db.php"; 

if(empty($_POST['name']) || empty($_POST['Species'])){ 

echo "<script>document.write('You must input a species and a name!'); setTimeout(\"window.location.reload()\", 350);</script>";

} 



if ($species== "Predator" || "Alien" || "Marine" && !empty($_POST['name'])){


mysql_query("INSERT INTO rpg (name, species, player) VALUES ('{$_POST['name']}' , '{$_POST['Species']}' , '{$_POST['player']}')")

or die(mysql_error());  
}


elseif($species=="Predator"){ 

mysql_query("UPDATE rpg SET max_health=25, health=25, attack=25, defense=25, honor=20 WHERE player='{$_POST['player']}')");

}

elseif($species=="Alien"){ 

mysql_query("UPDATE rpg SET health=20, max_health=20, attack=20 , defense=20 , stealth=20 WHERE player='{$_POST['player']}"); 

}

elseif($species=="Marine"){ 

mysql_query("UPDATE rpg SET health=15, max_health=15 , attack=20 , defense=20 , melee=20 WHERE player='{$_POST['player']}"); 

}

else{ 

echo "Invalid Species. Try again!"; 

}
mysql_query("INSERT INTO bank (player , amount) VALUES('{$_SESSION['user_id']}' , 5)"); 



header('Location: statadd.php');




}
?>

 

 

 

Link to comment
https://forums.phpfreaks.com/topic/177377-php-mysql-fail/
Share on other sites

Try this... Hope it works!

 

<?php

if(!empty($_POST['cont'])){ 

$species = $_POST['species'];
include "db.php"; 

if(empty($_POST['name']) || empty($_POST['Species'])){ 
echo "<script>document.write('You must input a species and a name!'); setTimeout(\"window.location.reload()\", 350);</script>";
} 

if ($species== "Predator" || "Alien" || "Marine" && !empty($_POST['name'])){
/////////////////////////// I have placed your else $species within the first if
if($species=="Predator"){ 
mysql_query("UPDATE rpg SET max_health=25, health=25, attack=25, defense=25, honor=20 WHERE player='{$_POST['player']}')");
}
elseif($species=="Alien"){ 
mysql_query("UPDATE rpg SET health=20, max_health=20, attack=20 , defense=20 , stealth=20 WHERE player='{$_POST['player']}"); 
}
elseif($species=="Marine"){ 
mysql_query("UPDATE rpg SET health=15, max_health=15 , attack=20 , defense=20 , melee=20 WHERE player='{$_POST['player']}"); 
}
////////////////////////////////////////////////////////////////////////////////
mysql_query("INSERT INTO rpg (name, species, player) VALUES ('{$_POST['name']}' , '{$_POST['Species']}' , '{$_POST['player']}')")
or die(mysql_error());  
}

else{ 
echo "Invalid Species. Try again!"; 
}
mysql_query("INSERT INTO bank (player , amount) VALUES('{$_SESSION['user_id']}' , 5)"); 

header('Location: statadd.php');
}
?>

Link to comment
https://forums.phpfreaks.com/topic/177377-php-mysql-fail/#findComment-935239
Share on other sites

Try this code and let me know if any errors appear.

<?php
ini_set('display_errors', 1);
if(!empty($_POST['cont']))
{
	$species = $_POST['species'];
	include "db.php";

if(empty($_POST['name']) || empty($_POST['Species']))
{
	echo "<script>document.write('You must input a species and a name!'); setTimeout(\"window.location.reload()\", 350);</script>";
}

if($species == "Predator" || $species == "Alien" || $species == "Marine" && !empty($_POST['name']))
{
	mysql_query("INSERT INTO `rpg` (`name`, `species`, `player`) VALUES ('{$_POST['name']}', '{$_POST['Species']}', '{$_POST['player']}')") OR die(mysql_error());
}

elseif($species == "Predator")
{
	mysql_query("UPDATE `rpg` SET `max_health` = 25, `health` = 25, `attack` = 25, `defense` = 25, `honor` = 20 WHERE `player` = '{$_POST['player']}')") OR die(mysql_error());
}

elseif($species == "Alien")
{
	mysql_query("UPDATE `rpg` SET `health` = 20, `max_health` = 20, `attack` = 20 , `defense` = 20, `stealth` = 20 WHERE `player` = '{$_POST['player']}')") OR die(mysql_error());
}

elseif($species == "Marine")
{
	mysql_query("UPDATE `rpg` SET `health` = 15, `max_health` = 15, `attack` = 20, `defense` = 20, `melee` = 20 WHERE `player` = '{$_POST['player']}')") OR die(mysql_error());
} else {
	echo "Invalid Species. Try again!"; 
}
mysql_query("INSERT INTO `bank` (`player`, `amount`) VALUES('{$_SESSION['user_id']}', 5)") OR die(mysql_error());

header('Location: statadd.php');
}
?>

Link to comment
https://forums.phpfreaks.com/topic/177377-php-mysql-fail/#findComment-935262
Share on other sites

No errors appeared, but the max_health, health, attack, defense, stealth, etc. have not been inserted into...

This executes.

 
if($species == "Predator" || $species == "Alien" || $species == "Marine" && !empty($_POST['name']))
{
	mysql_query("INSERT INTO `rpg` (`name`, `species`, `player`) VALUES ('{$_POST['name']}', '{$_POST['Species']}', '{$_POST['player']}')") OR die(mysql_error());	}

 

These do not...

 elseif($species == "Predator")
{
	mysql_query("UPDATE `rpg` SET `max_health` = 25, `health` = 25, `attack` = 25, `defense` = 25, `honor` = 20 WHERE `player` = '{$_POST['player']}')") OR die(mysql_error());
}

 

 elseif($species == "Alien")
{
	mysql_query("UPDATE `rpg` SET `health` = 20, `max_health` = 20, `attack` = 20 , `defense` = 20, `stealth` = 20 WHERE `player` = '{$_POST['player']}')") OR die(mysql_error());
}

 

elseif($species == "Marine")
{
	mysql_query("UPDATE `rpg` SET `health` = 15, `max_health` = 15, `attack` = 20, `defense` = 20, `melee` = 20 WHERE `player` = '{$_POST['player']}')") OR die(mysql_error());
} 

 

 

Link to comment
https://forums.phpfreaks.com/topic/177377-php-mysql-fail/#findComment-935790
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.