Едно въпросче

mitko666

Registered
Здравей те на всички.Това кодът ми

Код:
<?php
session_start();
include "config.php";
$username = $_SESSION['username'];
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<?php
if ($username) {
$sql = "SELECT * FROM users WHERE username='$username'";
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);
if ($_POST['submit']) {

	$gold = htmlspecialchars($_POST['gold']);
	$zaqvka = "UPDATE users SET Gold='$gold' ,mineral='$mineral' WHERE username='$username'";
	mysql_query($zaqvka) or die (mysql_error());
	echo "Успешно ги размени <a href='index.php'>начало</a>";
	}
	else {
	echo "
	<form method='post' action='resursi.php'>
	You Gold: $row[gold] <br />
	You Mineral: $row[mineral]<br />
	Gold: <input type='text' name='email' value='$row[gold1]'/><br />
	<input type='submit' name='submit' value='Zapazi' />
	</form>";
	}
}
else 
echo "logni se <a href='login.php'>Login</a>";


?>

Интересувам се как като напиша във полето Gold примерно 100 и дам на Zapazi да ми дава Mineral и примерно за 100 Gold да ми дава 10 Mineral.
 
Пробвай така.
П.П. На променливата $gold по-добре вместо htmlspecialchars сложи (int), защото предполагам, че очакваш само числа. :)
Код:
 <?php
session_start();
include "config.php";
$username = $_SESSION['username'];
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<?php
if ($username) {
$sql = "SELECT * FROM users WHERE username='$username'";
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);
if ($_POST['submit']) {

   $gold = htmlspecialchars($_POST['gold']);
	if ($gold >= 100) {
   $zaqvka = "UPDATE users SET Gold='$gold', mineral=mineral+10 WHERE username='$username'";
   mysql_query($zaqvka) or die (mysql_error());
   echo "Успешно ги размени <a href='index.php'>начало</a>";
   }
   else {
   echo "
   <form method='post' action='resursi.php'>
   You Gold: $row[gold] <br />
   You Mineral: $row[mineral]<br />
   Gold: <input type='text' name='email' value='$row[gold1]'/><br />
   <input type='submit' name='submit' value='Zapazi' />
   </form>";
   }
}
else {
echo "logni se <a href='login.php'>Login</a>";
}
}
?>
 
Код:
 <?php
session_start();
include "config.php";
$username = $_SESSION['username'];
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<?php
if ($username) {
$sql = "SELECT * FROM users WHERE username='$username'";
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);
if ($_POST['submit']) {

   $gold = htmlspecialchars($_POST['gold']);
   if ($gold == 100)
   {
   $mineral=$mineral+10;
   }
   else
   {
   $mineral=$mineral;
   }
   $zaqvka = "UPDATE users SET Gold='$gold' ,mineral='$mineral' WHERE username='$username'";
   mysql_query($zaqvka) or die (mysql_error());
   echo "Успешно ги размени <a href='index.php'>начало</a>";
   }
   else {
   echo "
   <form method='post' action='resursi.php'>
   You Gold: $row[gold] <br />
   You Mineral: $row[mineral]<br />
   Gold: <input type='text' name='email' value='$row[gold1]'/><br />
   <input type='submit' name='submit' value='Zapazi' />
   </form>";
   }
}
else
echo "logni se <a href='login.php'>Login</a>";


?>
 
Написах 100 голд дадох запази и после гокато влязох голд и минерал бяха на нула а си ги бях нагласил от phpmyadmin и двете да са по 200.
 
Код:
<?php
session_start();
include "config.php";
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<?php
if ($_SESSION['username']) {
$username = $_SESSION['username'];
$sql = mysql_query("SELECT * FROM `users` WHERE `username` = '$username'") or die(mysql_error());
$row = mysql_fetch_array($sql);
if ($_POST['submit']) {

   $gold = htmlspecialchars($_POST['gold']);
   if ($gold == 100)
   {
   $newmineral=$mineral+10;
   }
   else
   {
   $newmineral=$mineral;
   }
   $zaqvka = mysql_query("UPDATE `users` SET `Gold` = '$gold', `mineral`='$newmineral' WHERE `username` = '$username'") or die(mysql_error());
   if ($zaqvka)
   {
   echo "Успешно ги размени <a href='index.php'>начало</a>";
   }
   else
   {
   echo "Възникна някаква грешка !";
   }
   }
   else {
   echo "
   <form method='post' action='resursi.php'>
   You Gold: $row[gold] <br />
   You Mineral: $row[mineral]<br />
   Gold: <input type='text' name='email' value='$row[gold1]'/><br />
   <input type='submit' name='submit' value='Zapazi' />
   </form>";
   }
}
else
echo "logni se <a href='login.php'>Login</a>";


?>
 
Всъщност това е файла resursi.php.Стойностите си ги правя ръчно през phpmyadmin ако не трябва да е така би ли ми написал кодa за този файл какъв трябва да е.
 
Виш този код, в самото поле, пиши колко голд искаш, в случая пиши 100, за да ти даде и минерали, виш дали всичко работи така :)

Код:
	<?php
session_start();
include "config.php";
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<?php
if ($_SESSION['username']) {
$username = $_SESSION['username'];
$sql = mysql_query("SELECT * FROM `users` WHERE `username` = '$username'") or die(mysql_error());
$row = mysql_fetch_array($sql);
if ($_POST['submit']) {

   $gold = htmlspecialchars($_POST['gold']);
   if ($gold == 100)
   {
   $newmineral=$mineral+10;
   }
   else
   {
   $newmineral=$mineral;
   }
   $zaqvka = mysql_query("UPDATE `users` SET `Gold` = '$gold', `mineral`='$newmineral' WHERE `username` = '$username'") or die(mysql_error());
   if ($zaqvka)
   {
   echo "Успешно ги размени <a href='index.php'>начало</a>";
   }
   else
   {
   echo "Възникна някаква грешка !";
   }
   }
   else 
   {
   echo '
   <form method="post" action="">
   Gold : <input type="text" name="gold"><br />
   <input type="submit" name="submit" value="Готово"/>
   </form>
   ';
   }
}
else
echo "logni se <a href='login.php'>Login</a>";


?>
 
Така става и мисля че ще ми свърши работа.Но така не ми ги запазва.В смисъл когато вляза и напиша 100 голд ми дава 10 минерал.Искам всеки пат като пиша по 100 голд минерала да се увеличава а не винаги да стои на десет.И ако може златато да не се променя в смисал то да си ми е примерно 1000 и когато напиша 100 голд и да ми става 900 а минерала да се увеличава с 10.
 
Ето така голда несе променя, и все път когато се напиеш gold да е равно на 100, към сегашната стойност на mineral ще се прибавя 10

Код:
 <?php
session_start();
include "config.php";
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<?php
if ($_SESSION['username']) {
$username = $_SESSION['username'];
$sql = mysql_query("SELECT * FROM `users` WHERE `username` = '$username'") or die(mysql_error());
$row = mysql_fetch_array($sql);
$mineral=$row['mineral'];
if ($_POST['submit']) {

   $gold = htmlspecialchars($_POST['gold']);
   if ($gold == 100)
   {
   $newmineral=$mineral+10;
   }
   else
   {
   $newmineral=$mineral;
   }
   $zaqvka = mysql_query("UPDATE `users` SET `mineral`='$newmineral' WHERE `username` = '$username'") or die(mysql_error());
   if ($zaqvka)
   {
   echo "Успешно ги размени <a href='index.php'>начало</a>";
   }
   else
   {
   echo "Възникна някаква грешка !";
   }
   }
   else
   {
   echo '
   <form method="post" action="">
   Gold : <input type="text" name="gold"><br />
   <input type="submit" name="submit" value="Готово"/>
   </form>
   ';
   }
}
else
echo "logni se <a href='login.php'>Login</a>";


?>
 
Ок така всичко е точно но как до го направя така че да ми взима и от златото не винаги да стои едно и също.
 
Код:
	  <?php
session_start();
include "config.php";
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<?php
if ($_SESSION['username']) {
$username = $_SESSION['username'];
$sql = mysql_query("SELECT * FROM `users` WHERE `username` = '$username'") or die(mysql_error());
$row = mysql_fetch_array($sql);
$mineral=$row['mineral'];
$g=$row['gold'];
if ($_POST['submit']) {

   $gold = htmlspecialchars($_POST['gold']);
   if ($gold == 100)
   {
   $gold=$g-100;
   $newmineral=$mineral+10;
   }
   else
   {
   $gold=$g;
   $newmineral=$mineral;
   }
   $zaqvka = mysql_query("UPDATE `users` SET `mineral`='$newmineral', `gold` = '$gold' WHERE `username` = '$username'") or die(mysql_error());
   if ($zaqvka)
   {
   echo "Успешно ги размени <a href='index.php'>начало</a>";
   }
   else
   {
   echo "Възникна някаква грешка !";
   }
   }
   else
   {
   echo '
   <form method="post" action="">
   Gold : <input type="text" name="gold"><br />
   <input type="submit" name="submit" value="Готово"/>
   </form>
   ';
   }
}
else
echo "logni se <a href='login.php'>Login</a>";


?>
 
Мерси много но само едно последно въпросче.Как да стане така че примерно голд като е на нула да спре да взима повече всисал да не става на минус и да изписва нямате злато.Мерси предварително.
 
Направих го така, че ако голд е по-малко от 100 да изписва, че няма достатъчно, защото при всеки трансфер, ти взима по 100 голд, ако нямаш толкова ще стане отрицателна стойност, а ти неискаш това

Код:
	      	      <?php
session_start();
include "config.php";
?>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<?php
if ($_SESSION['username']) {
$username = $_SESSION['username'];
$sql = mysql_query("SELECT * FROM `users` WHERE `username` = '$username'") or die(mysql_error());
$row = mysql_fetch_array($sql);
$mineral=$row['mineral'];
$g=$row['gold'];
if ($_POST['submit']) {

   $gold = htmlspecialchars($_POST['gold']);
   if ($g < 100)
   {
   echo "Нямате достатъчно голд<br />";
   }
   else
   {

   if ($gold == 100)
   {
   $gold=$g-100;
   $newmineral=$mineral+10;
   }
   else
   {
   $gold=$g;
   $newmineral=$mineral;
   }
   $zaqvka = mysql_query("UPDATE `users` SET `mineral`='$newmineral', `gold` = '$gold' WHERE `username` = '$username'") or die(mysql_error());
   if ($zaqvka)
   {
   echo "Успешно ги размени <a href='index.php'>начало</a>";
   }
   else
   {
   echo "Възникна някаква грешка !";
   }
   }
   }
   else
   {
   echo '
   <form method="post" action="">
   Gold : <input type="text" name="gold"><br />
   <input type="submit" name="submit" value="Готово"/>
   </form>
   ';
   }
}
else
echo "logni se <a href='login.php'>Login</a>";


?>
:?:
 

Back
Горе