Jump to content
php.lv forumi

elseif ($from_money_check < 1999999999)


Recommended Posts

Posted (edited)

Sedeju daudz stundas un neka neizdodas man uzrakstit kodu...

 

<?
function do_money()
{
if ((isset($_SESSION['pass'])) && (isset($_SESSION['user']))); {
require("config.php"); 

$login = stripslashes($_SESSION['user']);
$fromname = stripslashes($_POST['from_character_money']);
$toname = stripslashes($_POST['to_character_money']);

$sql_online_check = mssql_query("SELECT Name,Money from Charecter where Name='$fromname'");
$fromrow = mssql_fetch_row($sql_online_check);

$sql_online_check2 = mssql_query("SELECT Name,Money from Charecter where Name='$toname'");
$torow = mssql_fetch_row($sql_online_check2);

$from_money_check=$fromrow[1];
$to_money_check=$torow[1];

if (empty($fromname) || empty($toname)) { echo "izvelaties speletajus!"; }
elseif ($from_money_check < 1999999999){ echo "$fromname pietruk naudas!"; }
elseif ($to_money_check > 100000000){ echo "$toname parak daudz naudas lai parmest vel 2000000000 naudas"; }
else { $msquery = "
UPDATE dbo.Character SET Money = Money-2000000000 WHERE Name='$fromname'
UPDATE dbo.Character SET Money = Money+2000000000 WHERE Name ='$toname'
"; 
$msresults= mssql_query($msquery);
echo "Viss ok! 2000000000 naudas parmesti no $fromname uz $toname"; }
}
}
?>

 

ka es tikaj netaisiju... bet visu laiku rad so kljudu elseif ($from_money_check < 1999999999){ echo "$fromname pietruk naudas!"; }

 

rakstiju gad ta: elseif ($from_money_check<1999999999){ echo "$fromname pietruk naudas!"; }

gan ta: elseif ($from_money_check<'1999999999'){ echo "$fromname pietruk naudas!"; }

gan ta: elseif ($fromrow[1]<'1999999999'){ echo "$fromname pietruk naudas!"; }

gan ta: elseif ($fromrow['1']<'1999999999'){ echo "$fromname pietruk naudas!"; }

gan ta: elseif ($fromrow[1] < 1999999999){ echo "$fromname pietruk naudas!"; }

 

visu laiku rada kljudu, bet nauda ir! viss oki

 

ka var uzrakstit laj kods skatijas cik naudas ir speletajem?

Edited by Undeaded
Posted

mjā.. mūsdienu skripteri - nemāk pareizi pielietot datu tipus. Nevajag randomā miksēt integerus un stringus. Labums no tā nekāds.

Kodu arī derētu pareizāk identēt, citādi grūti lasās.

 

Bet par tēmu - kā tu zini, ka "nauda ir! viss oki"?

Izvadi lūdzu naudu uz ekrāna un pasaki mums cik tur rāda.

echo $from_money_check;

Posted

Lūdzu nevajag taisīt bezjēdzīgas QUOTEs

 

ja rakstit $from_money_check; tad viņš neko nerad

databaze ir nauda 2 milliardi, tad sanak ka te ir kļuda???

 

$sql_online_check = mssql_query("SELECT Name,Money from Charecter where Name='$fromname'");

$fromrow = mssql_fetch_row($sql_online_check);

Posted (edited)

1. Neiesaku datubāzē glabāt tādus ciparus ! Tā vietā var money fieldā glabāt 200 un brīdī, kad tiek veikta datu sūknēšana no db - pareizināt to ar 100000 ( tikai piemērs ).

2. Tas viss ir baigi forši, bet - es neredzu nevienu include, kas norādītu uz mysql konfirgurāciju .. Kam tad tas php fails vienojas klāt ? Kalkulatoram .. ?

 

Apdomā šos abus punktus un dod ziņu vai kaut kas ir mainījies :)

Edited by NoSound
Posted

bubu : /UPDATE/ nav saistīts ar MySQL ? Ja taisa kaut kādu mysql_close() kaut kur pa vidu, to neatjaunojot - loģiski ka rodas problēmas ( tas tikai bija tā .. starp citu, ieteikums uz priekšdienām tieši saistībā ar WBGD ) !

Posted

Dažu cilvēku padomi vienkārši gāž no kājām. :) Vēl varēji ieteikt, lai pārbauda vai datorā vispār ir PHP.

 

NoSound, btw, autors izmanto mssql nevis mysql.

Posted (edited)
2. Tas viss ir baigi forši, bet - es neredzu nevienu include, kas norādītu uz mysql konfirgurāciju .. Kam tad tas php fails vienojas klāt ? Kalkulatoram .. ?

require("config.php");

 

tur ir:

 

error_reporting(0);

$dbhost = "127.0.0.1";

$dbuser = "login";

$dbpasswd = "pass";

$dbname = "databazesnosaukums";

$msconnect = mssql_connect($dbhost, $dbuser, $dbpasswd);

$msdb = mssql_select_db($dbname,$msconnect);

 

databaze table Character column Money: data type: int, length: 4

Edited by Undeaded
Posted (edited)
Parādi, ko rāda uz:

print_r($fromrow);

nestrada vispar... neko nerada...

 

es te visu kodu nerakstiju... man vel ir tur:

 

$sql_online_check3 = mssql_query("SELECT * FROM MEMB_STAT WHERE ConnectStat=0 AND memb___id='$login'");

$online_check = mssql_num_rows($sql_online_check3);

 

$online_check rada (echo un print), bet $fromrow nerada

 

probeju gan mssql_fetch_row gan mssql_num_row

 

pats kods strada, bet man vajag šos divus elseif... laj nebutu kļudas

Edited by Undeaded
Posted

Ja print_r tev neko nerāda, tad $fromrow ir NULL vai false, vai kautkas tml. Pamēģini ar vardump($fromrow).

Un vai esi pārliecināts, ka SELECT kverijs atgriež kaut vienu rezultātu? Ja jau mssql_fetch_row atgriež false, tad selekts neko neizselektē. Tā rakstīts manuālī.

 

Uzreiz pēc kverija kļūdas pārbaudīt mēģināji?

if (!$sql_online_check)
{
die('MSSQL error: ' . mssql_get_last_message());
}

×
×
  • Create New...