ik heb ooit een keer een heel mooi boekhoudscript gemaakt en deze moet nu een beetje aangepast worden
eigelijk heel veel
het is van jaren allemaal hardcoded in elkaar gezet en eigenlijk bijna geen gebruik van functies
ik heb dus op heel veel paginas 1 en dezelfde code staan die eigenlijk gewoon in een functie zouden moeten
maar op 1 of andere manier weet ik niet meer hoe ik meerdere outputs krijg
input is datum, accountid, userid
output is een hele waslijst
die ik dus individueel moet kunnen opvragen indien dit zou kunnen met een functie
ik zal hier ff een voorbeeld geven van 1 van de codes die er nu in staan
$sqldranken = "SELECT * FROM systeem_invoertotaal WHERE account='$accountid' AND id_user='$userid' AND soort='dranken' AND invoer_over='$datum' ORDER BY id ASC";
$resultaatdranken = $db->sql_query($sqldranken) or die(mysqli_error());
$eindtotaaldrankenbtwlaagafgerond = '0';
$eindtotaaldrankenbtwhoogafgerond = '0';
while($omzetdranken = mysqli_fetch_assoc($resultaatdranken)){
$btwsoort = ''.$omzetdranken['btwhoogte'].'';
if($btwsoort == btwlaag) {
$omzetdrankenbtwlaag = mysqli_fetch_array($db->sql_query("SELECT * FROM systeem_invoertotaal WHERE account='$accountid' AND id='$omzetdranken[id]' AND id_dame='$userid' AND soort='dranken' AND btwhoogte='btwlaag' AND invoer_over='$datum';"));
$totaaldrankenbtwlaagafgerond = $omzetdrankenbtwlaag[aantal] * $omzetdrankenbtwlaag[bedrag]; $totaaldrankenbtwhoogafgerond = '0';
}
elseif($btwsoort == btwhoog) {
$omzetdrankenbtwhoog = mysqli_fetch_array($db->sql_query("SELECT * FROM systeem_invoertotaal WHERE account='$accountid' AND id='$omzetdranken[id]' AND id_dame='$userid' AND soort='dranken' AND btwhoogte='btwhoog' AND invoer_over='$datum';"));
$totaaldrankenbtwhoogafgerond = $omzetdrankenbtwhoog[aantal] * $omzetdrankenbtwhoog[bedrag];
$totaaldrankenbtwlaagafgerond = '0';
}
else {
$totaaldrankenbtwlaagafgerond = '0';
$totaaldrankenbtwhoogafgerond = '0';
}
$eindtotaaldrankenbtwlaagafgerond = $eindtotaaldrankenbtwlaagafgerond + $totaaldrankenbtwlaagafgerond;
$eindtotaaldrankenbtwhoogafgerond = $eindtotaaldrankenbtwhoogafgerond + $totaaldrankenbtwhoogafgerond;
}
dit is maar een klein stukje maar ik moet gewoon weer ff snappen hoe ik 2 outputs uit een functie krijg
of meerdere
:)
mag ook iets anders zijn als ik het maar op verschillende plekken kan gebruiken
Je hebt immers een bedrijf en inkomsten! Desnoods een lening of een extra potje opentrekken?
wel bedrijf maar dit bedrijf heeft nog geen winst en dus geen inkomsten
de inkomsten die ik heb dekken mijn kosten
door verleden ga ik nooit en tennimmer meer een lening aan
bestaande klanten raak ik niet kwijt want er is niks beters te vinden op dit moment en ik ben daar ook niet bang voor dat dit in toekomst er wel zou zijn, omdat niemand so gek is om dit te maken :P
het doel is inderdaad ook indien alles verder perfect visueel werkt er een systeem naast te bouwen die helemaal van begin tot eind goed is
echter zolang mijn systeem nog niet is hoe ik het wil, en mijn klanten soms nog kleine dingen willen
dan zorg ik eerst dat dat werkt voordat ik ernaast aan een beter systeem ga werken
5 jaar geleden had ik dat ook gedaan daar is dit uit ontstaan
toen had ik 5 klanten wet elk een eigen database en eigen wensen enz
ik werd helemaal gek
ik heb toen 1 dynamish systeem gemaakt zodat ik maar 1 plek hoefde te veranderen
eventuele aanpassingen voor specifieke klant doe ik doormiddel van apparte modules
ik ben ooit begonnen met alleen 1 pagina waar een uitbetalings overzicht op stond
dit is uitgegroeit tot dit
daar ben ik best trots op
zolang de developer die ik nodig heb duizenden euros kost doe ik het lekker zelf,
onderuitgaan kan ik niet ik zou hooguit over 10 jaar een sterkere server nodig hebben als ik op zelfde toer blijf
Misschien loop je wel tegen limieten van de applicaties aan, zoals MySQL (die niet gebouwd is voor applicaties bestaande uit plakband-constructies. En dat verhelp je niet altijd met zwaardere servers.
Doe me liever een lol, neem het serieus op, en maak een plan van aanpak.
Maar goed.... ik verlaat dit deel van de discussie maar, met de hoop dat het op termijn goed zal komen :-)
Als je belooft om hier wat minder enters en wat meer interpuncties te plaatsen, dan ben ik sowieso blij ;-)
ik ben niet goed met enorme verhalen te schrijven in netjes nederlands om mensen uit teleggen dat ik hulp zoek voor functie
en dat ik niet rijk ben om iemand in te huren waar iedereen steeds op terug komt
ik hou er niet van myzelf steeds te moeten herhalen.
ik ben niet rijk dus klaar hierover .!!!!!
ik leer door te zien
enige nuttige dat ik heb gezien waar ik nu op dit moment iets mee kan is van eerste reply
ik heb al aantal keren mijn aanpassingen/ vorderingen getoont, maar daar hoor ik niemand over
ik zal straks maar een nieuwe topic openen met andere titel misschien dat iemand dan wel iets over het onderwerp zegt
[size=xsmall]Toevoeging op 17/03/2020 18:53:53:[/size]
Maar goed.... ik verlaat dit deel van de discussie maar, met de hoop dat het op termijn goed zal komen :-)
bedankt :)
[size=xsmall]Toevoeging op 17/03/2020 18:57:03:[/size]
neem het serieus op, en maak een plan van aanpak.
dit doe ik zeker wel ik kan er alleen niks mee
plan van aanpak en dit is voor mij enigste manier,
maak script zo goed als ik kan met mijn kennis,
krijg klanten zodat ik geld heb en inkomsten
indien inkomsten goed, en indien dit nodig zal zijn, iemand inhuren die samen met mij versie 3 ontwikkelt
[size=xsmall]Toevoeging op 17/03/2020 22:32:03:[/size]
ik wou eigenlijk een nieuw topic maken omdat deze een beetje vol begint te lopen, maar ik zet het toch maar hier erbij.
Ik heb na aanleiding van wat tips en voorbeelden die ik in dit topic heb gevonden, het volgende gemaakt.
een functie pagina en op mijn uitvoer pagina een een while loop deze code
waarom die dubbele codes?
Omdat mijn bestaande code die enorm groot is deze variabelen op dit moment nog zoekt.
Dit wordt uiteraard allemaal indien alles goed werkt verbeterd zodat die onnodige delen er niet in hoeven.
wat ik mij afvroeg is of ik het zo goed had gedaan?
want ik vond ($page_dag_cache,$accountid,$row[id_dame]); overal een beetje overbodig maar weet even niet zo snel hoe ik dit kan verbeteren
Het ligt eraan waar $page_dag_cache,$accountid vandaan komen. Is het een global ($_SESSION, $_POST, $_GET bijv.), dan hoef je het niet eens mee te geven aan een parameter, tenzij het niet zeker is of een een global is.
op deze specifieke pagina haald hij de $row[id_dame] uit een select deel
en voor gebruiker wordt doormiddel van een while verschillende id's opgehaald
de $page_dag_cache wordt gehaald uit een functie die ervoor zorgt dat ik alle dagen van een hele maand krijg
de accountid is een global dan denk ik
deze is al veel eerder opgehaald uit andere geladen functies
dit is het accountnummer van het bedrijf waar de berekeningen voor zijn
staat volgens mij ook ergens in een session maar dan zou ik deze zeker in de functie bij een global moeten zetten net zoals ik nu heb moeten doen om mijn database te krijgen
global $db;
dit zou dan worden
global $db, $accountid;
doe een cursus php. (of programmeren in het algemeen.)
En dan niet eentje die stopt na uitleg hoe je substr() en echo gebruikt, maar een die in elk geval classes aanstipt.
Die kun je online zelfs vinden. En dat hoeft niet veel te kosten.
En stel dat die cursus je iets leert dat je oplevert dat je een dag of 2 minder hoeft te knoeien aan je code, dan heb je die cursus misschien al terugverdiend.
Je klinkt nu als iemand die een week lang "elektriciteit" heeft gehad bij het vak techniek op de middelbare school en nu de energievoorziening in een fabriek aanlegt.
Je code is doorspekt van rare constructies.
En ik vraag me af of je query's verder komen dan SELECT * FROM 1tabel.
Gebruik je joins?
Gebruik je functies als SUM() of COUNT() in de query's.
Ik heb namelijk het idee dat gebrek aan kennis nu opgelost wordt met 100-en regels php code, om iets dat een slimme query had kunnen doen in 1 keer.
** quoteknip**
haha je zit er niet ver naast
ja ik gebruik joins en counts indien ik dat kan gebruiken in hetgeen dat ik moet hebben
echter op deze specifieke pagina moet ik echt elk deeltje los pakken om 100% garantie te hebben dat alle bedragen perfect berekent zijn volgens belasting regels
met het doel dat ik alle bedragen per dag per gebruiker in een cache bestand kan opslaan
in deze cache staan dan dezelfde, al voor berekende variabelen
in de functie die mijn cache maakt staat zoiets als if cache aanwezig, include cache
else
open gehele berekening en maak cache
ik had in het begin allemaal kleine stukjes code om berekeningen te maken
maar in mijn grootste som stonden meestal ook alle kleine bedragen
dus waren voor mij die kleine scriptjes eigenlijk overbodig want hij moest het toch bijna allemaal inladen
om deze reden lijkt het dus heel veel maar kleiner kan niet vanwege de complexiteit van het berekenen
delen die ik los kan trekken heb ik uiteraard los staan
ik wil ook een aantal cursusen volgen
ik heb er zelfs al een paar via udemy
maar meeste hiervan heb ik niet veel aan
en voor een echte goede cursus heb ik geen geld
er is niks met udemy,
maar de cursus die ik toen had, hadden niet hetgeen dat ik zoek
er blijkt dus geen betere manier te zijn voor die enorme berekening die ik nodig hebt
dus als het nieuwe iets niet kan dan blijf je bij het oude
tuurlijk leren die cursussen je ook andere dingen die je nodig zou kunnen hebben enz
en deze ga ik ook zeker leren
maar aangezien ik niet veel tijd heb en mijn scripts, wilt verbeteren
ga ik niet dingen leren waar ik nu even niets aan hebt
dit gaat wel gebeuren als alles werkt en ik me ga verdiepen in een mogelijke v3