login  Naam:   Wachtwoord: 
Registreer je!
 Forum

beslastingen bij leden

Offline stijnhau - 05/04/2006 09:38 (laatste wijziging 05/04/2006 10:00)
Avatar van stijnhauOnbekend hallo,
de leden betalen belastingen en daar gaat het mis.
ze betalen hyet bedrag dat het hoogste in de db staat bij steden.
  1. <?
  2. $dbres = mysql_query("SELECT belastingen FROM steden");
  3. $dat = mysql_fetch_assoc($dbres);
  4. $dbrees = mysql_query("SELECT cash, bank, stad FROM leden");
  5. $data = mysql_fetch_assoc($dbrees);
  6. if($dat[belastingen] > $data['cash']){
  7. mysql_query("UPDATE leden SET cash=cash-$dat[belastingen] WHERE ".$dat[belastingen]." < ".$data['cash']."");
  8. }
  9. if($dat[belastingen] > $data['cash']){
  10. mysql_query("UPDATE leden SET bank=bank-$dat[belastingen] WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." < ".$data['bank']."");
  11. }
  12. if($dat[belastingen] > $data['cash'] AND $dat[belastingen] > $data['bank']){
  13. mysql_query("UPDATE leden SET cash=0 WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." > ".$data['bank']."");
  14. mysql_query("UPDATE leden SET bank=0 WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." > ".$data['bank']."");
  15. mysql_query("UPDATE leden SET soldaten=0 WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." > ".$data['bank']."");
  16. }
  17. if (date ('D') == Sun){
  18. mysql_query("UPDATE `leden` SET `stadsbeheer`='0'");
  19. $q = mysql_query("SELECT COUNT(stem) AS aantal_stemmen, stem FROM verkiezing WHERE stad=".$data[stad]." GROUP BY stem ORDER BY aantal_stemmen DESC LIMIT 1") or die(mysql_error());
  20. mysql_query("UPDATE `leden` SET `stadsbeheer`='1' WHERE login='".mysql_result($q,0,'stem')."' AND `stad`=".$dat[stad]."")or die(mysql_error());
  21. mysql_query("INSERT INTO verkozen (land, datum, verkozen) VALUES ('".$dat['stad']."', NOW(), '".mysql_result($q,0,'stem')."')")or die(mysql_error());
  22. }elseif (date ('D') == Mon){
  23. mysql_query("TRUNCATE TABLE `verkiezing`");
  24. }
  25. mysql_query("UPDATE steden SET geld=geld+(belastingen*inwoners)");
  26. mysql_query("UPDATE cron SET time=NOW() WHERE name='dag'");
  27. mysql_query("UPDATE leden SET bank=round(bank*1.04)");
  28. mysql_query("UPDATE kogelfabrieken SET vooraad=vooraad+productie");
  29. ?>

11 antwoorden

Gesponsorde links
Offline Simon - 05/04/2006 10:57 (laatste wijziging 05/04/2006 11:08)
Avatar van Simon PHP expert Je zou best ook es beginnen met variabelen buiten quotes halen.
En haakje voor arrays, dat vind ik duidelijker
--> $dat[belasting] wordt $dat['belasting']
Ik heb ook zo'n systeem gemaakt, het ziet er als volgt uit:
Ik bekijk de datum dat het laatst opgehaald werd, verschilt dit van dag, doe ik een actie enzovoort
(ik werk met classes, maar dat stoort niet echt; ik hoop dat je er iets van opsteekt)
  1. <?php
  2. $result2 = $mysql->query("SELECT * FROM land", "SELECT Query2 Index");
  3. if($mysql->num_rows($result2) > 0) {
  4. while($array = $mysql->fetch_assoc($result2)) {
  5. $dag = date("d", $array['bel_datum']); // bel_datum is laatste maal dat belasting werd opgehaald
  6. $dag_nu = date("d", time());
  7. if($dag == $dag_nu) {
  8. /*
  9. niks doen
  10. dagen zijn gelijk
  11. slechts 1 maal per dag ophalen
  12. */
  13. }
  14. else {
  15. /*
  16. dagen zijn niet gelijk
  17. belasting ophalen + datum overschrijven
  18. */
  19. $koning = $array['koning'];
  20. $belast = $array['belasting'];
  21. $belasting = $array['belasting'] * ($array['inwoners']-1);
  22. $result3 = $mysql->query("SELECT * FROM chars WHERE land = '".$array['id']."'", "SELECT Query3 Index");
  23. $rows3 = $mysql->num_rows($result3);
  24. while($array2 = $mysql->fetch_assoc($result3)) {
  25. $mysql->query("UPDATE chars SET cash=cash-".$belast." WHERE username='".$array2['username']."' AND username!='".$koning."'", "UPDATE Query1 Index");
  26. }
  27. $mysql->query("UPDATE chars SET cash=cash+".$belasting." WHERE username='".$koning."'", "UPDATE Query1 Index");
  28. $mysql->query("UPDATE land SET bel_datum='".time()."' WHERE land_naam='".$array['land_naam']."'", "UPDATE Query1 Index");
  29. }
  30. }
  31. }
  32. ?>
Offline marten - 05/04/2006 11:05
Avatar van marten Beheerder Simon het zijn niet 2 dezelfde tabellen he ;)
Offline Simon - 05/04/2006 11:09 (laatste wijziging 05/04/2006 11:25)
Avatar van Simon PHP expert Idd, die opmerking heb is dus ook verwijderd 
Offline stijnhau - 05/04/2006 15:07 (laatste wijziging 05/04/2006 15:18)
Avatar van stijnhau Onbekend ik snap er niks van.
tabel shars in script heb ik ni een sin de db of zo dus.
enkel leden en steden.
bij leden moet er $dat[belasting] af.
die $dat belastingen is b.v. 100 belgie en 200 nederland.
dus moet er 200 afgaan bij het goede lid en die 100 ook.
dus niet 200 bij de leden in belgie

de code in beginpost doet hij al dagelijks door een code in config maar die moeten julllie niet hebben.

vinTage edit : WATTÛH ?
Offline Mart3n - 05/04/2006 15:26 (laatste wijziging 05/04/2006 15:26)
Avatar van Mart3n Nieuw lid oke, ik heb het ff geprobeerd, ik snapte er geen ene fuck van maarja

  1. <?
  2. $dbres = mysql_query("SELECT belastingen FROM steden");
  3. $dat = mysql_fetch_assoc($dbres);
  4. // Eerst query
  5.  
  6. $dbrees = mysql_query("SELECT cash, bank, stad FROM leden");
  7. $data = mysql_fetch_assoc($dbrees);
  8. // Tweede query
  9.  
  10. if($dat['belastingen'] > $data['cash'])
  11. {
  12. mysql_query("UPDATE leden SET cash = 'cash - " . $dat['belastingen'] . "' WHERE " . $dat['belastingen'] . " < " . $data['cash'] );
  13. // Volgens mij is deze WHERE fout ?!
  14. }
  15. else
  16. {
  17. }
  18.  
  19. if($dat['belastingen'] > $data['cash'])
  20. {
  21. mysql_query("UPDATE leden SET bank = 'bank - " . $dat['belastingen'] . "' WHERE " . $dat['belastingen'] . " > " . $data['cash'] . " AND " . $dat[belastingen] . " < " . $data['bank']);
  22. // En weer snap ik niks van die WHERE
  23. }
  24. else
  25. {
  26. }
  27.  
  28. if($dat['belastingen'] > $data['cash'] AND $dat['belastingen'] > $data['bank'])
  29. {
  30. mysql_query("UPDATE leden SET cash = '0' WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." > ".$data['bank']."");
  31. mysql_query("UPDATE leden SET bank = '0' WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." > ".$data['bank']."");
  32. mysql_query("UPDATE leden SET soldaten = '0' WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." > ".$data['bank']."");
  33. // Volgens mij doe je egt iets fouts met die WHERE :S
  34. }
  35. else
  36. {
  37. }
  38.  
  39.  
  40. if (date ('D') == 'Sun')
  41. {
  42. mysql_query("UPDATE `leden` SET `stadsbeheer`='0'");
  43. $q = mysql_query("SELECT COUNT(stem) AS aantal_stemmen, stem FROM verkiezing WHERE stad=".$data['stad']." GROUP BY stem ORDER BY aantal_stemmen DESC LIMIT 1") or die(mysql_error());
  44. mysql_query("UPDATE `leden` SET `stadsbeheer`='1' WHERE login='".mysql_result($q,0,'stem')."' AND `stad`=".$dat[stad]."")or die(mysql_error());
  45. mysql_query("INSERT INTO verkozen (land, datum, verkozen) VALUES ('".$dat['stad']."', NOW(), '".mysql_result($q,0,'stem')."')")or die(mysql_error());
  46. }
  47. elseif (date ('D') == 'Mon')
  48. {
  49. mysql_query("TRUNCATE TABLE `verkiezing`");
  50. }
  51. else
  52. {
  53. // Altijd een else inzetten lijkt me ?
  54. }
  55. mysql_query("UPDATE steden SET geld = 'geld + (belastingen*inwoners)'");
  56. mysql_query("UPDATE cron SET time = 'NOW()' WHERE name='dag'");
  57. mysql_query("UPDATE leden SET bank = 'round(bank*1.04)'");
  58. mysql_query("UPDATE kogelfabrieken SET vooraad = 'vooraad + productie'");
  59. ?>


volgens mij heb je sommige delen niet zelf gescript, ik zie 2 verschillende soorten query's, en gebruik altijd een else() of anders een exit(); erbij
Offline stijnhau - 05/04/2006 16:51
Avatar van stijnhau Onbekend alles own made.
else is niet altijd nodig
en nee dat is juist.
anders update hij ook de verkeerde leden.
Offline Simon - 05/04/2006 18:19
Avatar van Simon PHP expert stijnhau, wat denk je van eens moeite te doen om mijn script te begrijpen?
chars -> characters -> leden
land -> steden

als je het naar jou dinges omvormt, dan redeneer je gewoon logisch
dat van $koning heb je mss niet nodig, dat kan wel zijn, maar doe tpch es moeite
Offline stijnhau - 05/04/2006 18:19 (laatste wijziging 06/04/2006 20:48)
Avatar van stijnhau Onbekend chars had ik geen idee.
ik ga straks zien of het werkt.
update:
werkt niet hoor.
en die code in beginpost doet hij al om de dag.
Offline timo - 06/04/2006 21:06
Avatar van timo PHP ver gevorderde je fetch data en dat maar je gebruikt 2x dat... precies dezelfde if... lijkt mij niet te kloppen?
Offline stijnhau - 07/04/2006 08:12
Avatar van stijnhau Onbekend jawel hoor.
want alls ze ni van contant kunne betalengaat haet af van bank.
kunne ze zo ook ni betatalen word er vanalles op 0 gezet.
maar hoe kan ik zorge dat het juiste bedrag er af gaat.
Offline Simon - 07/04/2006 09:36 (laatste wijziging 07/04/2006 09:41)
Avatar van Simon PHP expert waar check je eigenlijk in welke stad ze zitten?

ik had nu wel ff geen zin om al die variabelen buiten quotes te halen
  1. <?
  2. $dbres = mysql_query("SELECT belastingen FROM steden");
  3. while($dat = mysql_fetch_assoc($dbres)) {
  4. $dbrees = mysql_query("SELECT cash, bank, stad FROM leden WHERE stad = '".$dat['stad']."'");
  5. while($data = mysql_fetch_assoc($dbrees)) {
  6. if($dat[belastingen] > $data['cash']){
  7. mysql_query("UPDATE leden SET cash=cash-$dat[belastingen] WHERE ".$dat[belastingen]." < ".$data['cash']."");
  8. }
  9. if($dat[belastingen] > $data['cash']){
  10. mysql_query("UPDATE leden SET bank=bank-$dat[belastingen] WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." < ".$data['bank']."");
  11. }
  12. if($dat[belastingen] > $data['cash'] AND $dat[belastingen] > $data['bank']){
  13. mysql_query("UPDATE leden SET cash=0 WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." > ".$data['bank']."");
  14. mysql_query("UPDATE leden SET bank=0 WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." > ".$data['bank']."");
  15. mysql_query("UPDATE leden SET soldaten=0 WHERE ".$dat[belastingen]." > ".$data['cash']." AND ".$dat[belastingen]." > ".$data['bank']."");
  16. }
  17. if (date ('D') == "Sun"){
  18. mysql_query("UPDATE `leden` SET `stadsbeheer`='0'");
  19. $q = mysql_query("SELECT COUNT(stem) AS aantal_stemmen, stem FROM verkiezing WHERE stad=".$data[stad]." GROUP BY stem ORDER BY aantal_stemmen DESC LIMIT 1") or die(mysql_error());
  20. mysql_query("UPDATE `leden` SET `stadsbeheer`='1' WHERE login='".mysql_result($q,0,'stem')."' AND `stad`=".$dat[stad]."")or die(mysql_error());
  21. mysql_query("INSERT INTO verkozen (land, datum, verkozen) VALUES ('".$dat['stad']."', NOW(), '".mysql_result($q,0,'stem')."')")or die(mysql_error());
  22. }
  23. elseif (date ('D') == "Mon"){
  24. mysql_query("TRUNCATE TABLE `verkiezing`");
  25. }
  26. mysql_query("UPDATE steden SET geld=geld+(belastingen*inwoners)");
  27. mysql_query("UPDATE cron SET time=NOW() WHERE name='dag'");
  28. mysql_query("UPDATE leden SET bank=round(bank*1.04)");
  29. mysql_query("UPDATE kogelfabrieken SET vooraad=vooraad+productie");
  30. }
  31. }
  32. ?>

Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2025 Sitemasters.be - Regels - Laadtijd: 0.241s