Temos pavadinimas: WordPress, Shopify ir PHPFusion programuotojų bendruomenė :: IF atskyrimas vienas nuo kito

Parašė Calvin· 2014 Kov. 23 19:03:17
#1

Pavadinimo nelabai žinojau, kaip parašyt, bet turiu tokį klausimą.

Turiu kodą:


 
					}
					else
					{
						if($_POST['newkey'] == "Teorija"){$teises = 1;}
						mysql_query("UPDATE `$mysql_table` SET `Kreditai`=Kreditai-20 WHERE `$nick_row`='".mysql_real_escape_string($_SESSION['Name'])."'") or exit('mysql_error');
						mysql_query("UPDATE `$mysql_table` SET `Teorija`='".$teises."' WHERE `$nick_row`='".mysql_real_escape_string($_SESSION['Name'])."'") or exit('mysql_error');
 
 
						if($_POST['newkey'] == "A kategorija"){$kategorija = 1;}
						mysql_query("UPDATE `$mysql_table` SET `Kreditai`=Kreditai-30 WHERE `$nick_row`='".mysql_real_escape_string($_SESSION['Name'])."'") or exit('mysql_error');
						mysql_query("UPDATE `$mysql_table` SET `TeisesA`='".$kategorija."' WHERE `$nick_row`='".mysql_real_escape_string($_SESSION['Name'])."'") or exit('mysql_error');
 
 


Ir man reikia atskirt kažkaip juos vieną nuo kito, nes kai atliekama funkcija, nuskaičiuoja kreditų skaičių abu kartu sudėjus, gal čia yra išminčių ir turinčių minčių kaip juos atskirti?

Parašė Creatium· 2014 Kov. 23 20:03:33
#2

Nuskaičiuoja, nes if'as prasideda ir užsibaigia ties $teises ir $kategorija nustatymo. Reikėtų praplėsti if'o galiojimo ribas iki tau reikiamų vietų (pvz. iki pirmojo "exit").

Parašė Pakartoti slaptažodį· 2014 Kov. 23 20:03:37
#3

nu tai pirmą span porą kiši po vienu ifu, kitą po kitu, toks ir atskyrimas, nelabai suprantu ką tu nori padaryti.

Parašė Calvin· 2014 Kov. 23 20:03:48
#4

Aš noriu tuos kodus atskirt, kad jų nesumuotų, nes dabar juos sumuoja abu kartu ir jau galva nebedirba, kaip juos atskirt, kad nesumuotų jų abiejų. Kad vis paspaudžiant ant kurio nors iš jų užsidėtų tas ir nuskaičiuotų kreditus, nes dabar tai kreditus kartu sudeda, o nusipirkus Teorija, antrą (A kategorija) perkant pakeičia Teorija į 0 arba atvirkščiai.

Parašė Pakartoti slaptažodį· 2014 Kov. 23 21:03:09
#5

ką reiškia atskirt? nereikėjo jų sumalt į vieną. žinok niekas nesupras ko tu čia nori, tiesiai per aplinkui vaikštai ir tiek.

if (perku teorija) {
mysql: alia islaikiau teorija
mysql: -20 kreditu
}

if (laikau a kategorija) {
mysql: prisideda dar ir a kategorija
mysql: dar -30 kreditu
}

kažkas tokio?

Parašė Calvin· 2014 Kov. 23 21:03:33
#6

Čia turi būt taip:

if (perku teorija) {
mysql: nusiperka teorija
mysql: -20 kreditu
}

if (perku a kategorija) {
mysql: nusiperka a kategorija
mysql: -30 kreditu
}

ir t.t visi šitie turi būti atskiri, kad perkant teoriją nuskaičiuotų 20 kreditų ir mysql bazėj uždėtų "Teorija = 1 ", paskui jeigu nori pirkt A kategorija nuskaičiuotų 30 kreditų ir uždėtų prie kategorijos = 1. Nes dabar tai viską kartu sumuoja. Ir tarkim dabar, kai nusiperku teorija uždeda duombazėj "Teorija = 1 " viskas atrodo gerai, bet nuskaičiuoja 50 kreditų. Paskui kai būnų nusipirkęs teoriją, noriu pirkt A kategoriją, paspaudžiu pirkti ir A kategorija vėl nuskaičiuoja 50 kreditų, o turėtų nuskaičiuot 30 ir uždeda =1, o Teorija vėl padaro = 0. Va kame bėda yra..

Parašė Pakartoti slaptažodį· 2014 Kov. 23 22:03:16
#7

na tu pats atsakei į savo klausimą, nejaugi taip sunku pažvelgt į kodą? beje, kodėl
<span style="border-bottom: 1px dotted black;">mysql</span>_query

juk turėtų būt tiesiog
mysql_query

kam tu formatuoji užklausas???

if ($_POST['newkey'] == 'Teorija') {
$teises = 1;
mysql_query("UPDATE `$mysql_table` SET `Kreditai`=Kreditai-20 WHERE `$nick_row`='".mysql_real_escape_string($_SESSION['Name'])."'") or exit('mysql_error');
mysql_query("UPDATE `$mysql_table` SET `Teorija`='".$teises."' WHERE `$nick_row`='".mysql_real_escape_string($_SESSION['Name'])."'") or exit('mysql_error');
}
if ($_POST['newkey'] == 'A kategorija') {
$kategorija = 1;
mysql_query("UPDATE `$mysql_table` SET `Kreditai`=Kreditai-30 WHERE `$nick_row`='".mysql_real_escape_string($_SESSION['Name'])."'") or exit('mysql_error');
mysql_query("UPDATE `$mysql_table` SET `TeisesA`='".$kategorija."' WHERE `$nick_row`='".mysql_real_escape_string($_SESSION['Name'])."'") or exit('mysql_error'); 

Redagavo Pakartoti slaptažodį· 2014 Kov. 23 22:03:51

Parašė Calvin· 2014 Kov. 23 22:03:48
#8

Koks žioplas buvau :D . Dėkui tau labai, be to pas mane kode šito:


<span style="border-bottom: 1px dotted black;">mysql</span>_query


tai nėra, nežinau čia kažkaip suformatavo.

Dėkui tau labai. Va kaip būna kai galva visai nebedirba. Galit rakinti temą.

Parašė Pakartoti slaptažodį· 2014 Kov. 23 22:03:30
#9

viskas tvarkoj, klaidos tai žmogiška, tiesiog man rimtai net per lengva tai atrodė :D
o kas čia dėl dotted black tai nesuk galvos, ne tavo klaida čia, viso labo forumo bugas laikinas pasirodo, dėl naujų funkcijų diegiamų