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
Wat je volgens mij zou moeten doen is het programma op zij leggen. Gewoon alle plannen even in de koelkast, bureau en computerscherm opschonen en dan eerst eens gaan bijleren over programmeren. Begin eens te lezen op http://www.phptuts.nl/home/ het is een website waar je in een halve dag doorheen kunt. Tijdens het lezen zul je hoofdstukken tegenkomen waarin nieuwe dingen staan zoals ook het gebruik van Functies. Ook zou je voor zo een serieus project als waar je mee bezig bent moeten kijken naar en je verdiepen in een aantal dingen zoals OOP, Database normalisatie, versiebeheer en php frameworks. Als bonus is er dan nog responsive webdesign, jQuery met ajax en json.

Een andere mogelijkheid zou kunnen zijn om je project op te zetten met één of twee personen erbij waarbij er in ieder geval één php programmeur aanschuift. Een ieder werkt dan vrijwillig aan het project en je probeert er dan een verdienmodel aan te hangen waarmee je hoopt dat er later wel inkomsten uit voortvloeien. Als je hier iets in ziet dan is het uittekenen van functionaliteiten op papier zoals Thomas al aangeeft nog veel belangrijker. Je moet dan namelijk gaan communiceren met elkaar, hetgeen opzich echt geen probleem hoeft te zijn evenmin het een probleem hoeft te zijn dat een programmeur minder kennis heeft over salaris administraties bijvoorbeeld, Zolang er maar een project begeleider is die hem weet aan te sturen kan daar een prachtig plaatje uitkomen.

Zie je iets in het bovenstaande dan ben ik ook wel geïnteresseerd om daarover mee te denken.
thanks voor de link ik zal deze zeker eens doorkijken.
pc enzo opschonen is helaas niet mogelijk omdat ik met teveel belangrijke dingen bezig ben
maar ben wel een het sparen voor een nieuwe pc enz om inderdaad het hele geheel schoon te beginnen op een backup

ik wil mij zeker gaan verdiepen in de wat gevorderde manieren van php scripting

ik zoek al jaren naar iemand die goed kan scripten en kan luisteren
maar dat luisteren is nogal moeilijk te vinden

want als ik vraag om 1 2 3
dan zegt scripter 2 is niet nodig,

en dan moet ik weer een hele uitleg gaan geven over wetgeving, avg wet belastingdienst enz

daarnaast willen scripters altijd een bijdragen, meestal niet klein voor hetgeen dat ik vraag

ik moet een heel gesprek/ contract geven mbt tot AVG wet

mijn systeem die dus al meer dan 8 jaar draait.
is een online CMS/POS systeem waar op dit moment een aantal bedrijven mee draaien

all deze bedrijven zitten bij elkaar in 1 sql database en 1 geheel script,
sql info enz wordt dynamisch gesorteerd doormiddel van hun domein naam

deze bedrijven hebben een website/ met fotos van gebruikers en info
agenda en nog veel meer

daarnaast kunnen deze bedrijven gebruikmaken van een soort POS systeem
waarin onder andere de producten worden bijgehouden die per gebruiker verkocht worden

waarna een loonstrook gemaakt wordt per dag en deze is ook uitprintbaar
hieraan zit een geheel boekhoudsysteem gekoppeld die weer gelinkt staat aan een apparte inlog voor boekhouders
de boekhouding zelf moet verplicht 7 jaar worden bewaard

alle berekeningen zijn, en moeten zonder cent fouten

exact online stelt niks voor in vergelijking met mijn boekhoud systeem
dus dan begrijp je ongeveer hoe groot het is

echter omdat sommige dingen nog niet perfect draaien of er nog dingen bij moeten/verandert kan ik dus niet veel vragen als abbonament


als ik iemand kan vinden die via mijn regels vrijwillig wilt helpen, zonder op korte termijn geld te willen hebben,
dan zou ik dol blij zijn

deze persoon moet 400% rekening houden met het feit dat het systeem live is en er dus geen fout kan en mag ontstaan

gegevens weg .....
dan kost dat mij minimaal 100.000+- per bedrijf want al deze bedrijven staan dan stil
het is dus niet zo dat ik even een scripter er zomaar in kan laten en dan hopen dat het goed komt

ik test nu ook mijn gehele nieuwe berekening pagina's uit via een apparte cache files
zodat mijn klanten mijn berekenings errors niet zien

Ben je bekend met OTAP? Het spreekt voor zich dat je een ontwikkelingsomgeving hebt waarin je alle wijzigingen uittest voordat je ze live naar je klanten (in productie) brengt. In dat geval kan je prima een, of meerdere programmeurs mee laten helpen. Echter vrees ik dat vrijwillige input lastig zal gaan. Dus zorg voor een goed verdienmodel. Ik neem aan dat je klanten een licentie afnemen bij jouw voor een bepaald bedrag, zodat jij uiteindelijk kan zorgen voor updates, een goede ontwikkelingsafdeling en een makkelijke flow voor de ontwikkelaars.



O: Een programma of component wordt eerst ontwikkeld in de ontwikkelomgeving, hierin bevindt zich veelal een of meerdere personen in een ontwikkelteam die ieder op een ontwikkelwerkplek werken aan 1 gezamenlijke versie, die aan het einde van elke dag wordt gekopieerd ofwel 'ingecheckt' in het versiebeheerprogramma op de ontwikkelserver.

T: Deze gezamenlijke versie wordt dan 's nachts ([color=red]Aar edit: Of bijv. einde van de werkdag, zoals het bij mij op het werk ging.[/color]) automatisch van programmacode naar een draaibaar programma omgezet, ofwel 'gebuild' ([color=red]Edit: of 'gecommit'[/color]) en eventueel doorgezet naar de testserver. Op de testserver kan er met deeltest, ofwel ´unittests´ automatisch technisch en functioneel getest worden, waarvan de resultaten de volgende dag klaarliggen voor het ontwikkelteam. Als er na een ontwikkelperiode een functionele samengestelde versie ofwel een ´release´ wordt gestabiliseerd, kan deze release volledig doorgetest worden met alle voor de software gekozen testgevallen door alle betrokken partijen, personen en gebruikers.

A: Na goedkeuring kan de versie worden geïnstalleerd in de acceptatieomgeving. Het installatieproces wordt gedocumenteerd in een productiegang draaiboek. De acceptatie-omgeving is qua software en hardware zo veel mogelijk gelijk aan de productieomgeving. De klant kan hier alvast zien hoe de release er functioneel en qua performance uit gaat zien in productie. Dit, zonder dat de dagelijkse productie onderbroken wordt.

P: Indien de klant accepteert in de acceptatie-omgeving, wordt het programma geïnstalleerd op de productieomgeving, zoals gedocumenteerd toen de release naar de acceptatie-omgeving ging. Tevens moet er een terugdraaiplan zijn om bij verrassingen toch de productie-installatie ongedaan te maken en door te gaan in productie met de oude versie. ([color=red]Edit: Op dit punt werkten we op het bedrijf met de hoofdbestanden buiten de webroot. Dus uiteindelijk was het voornamelijk het overzetten van de applicatiecode in een nieuwe versie-directory en de versienummer in de configuratie aanpassen. En uiteraard een rollback klaar hebben liggen om de databaseveranderingen terug te draaien. Natuurlijk hielden we de klanten op de hoogte van nieuwe versies, en lieten we ze regelmatig meegluren op Acceptatie-omgeving. Updaten deden we op gezette tijden, vaak op een donderdag zodat er op vrijdag nog wat gefixxed kon worden als het nodig is, met de vrij-mi-bo en het weekend voor de deur.[/color])


Wat zeker dus niet overbodig is, is hierbij het gebruik van een versiebeheersysteem. Git is hiervan 'een veelgebruikte. Zo voorkom je dat anderen werken aan een code, waarbij de werkzaamheden van een ander verstoord worden. Wat ook erg handig is, is een BugTracker systeem zoals Jira, of goedkoper: Mantis BT (gebruik ik). Hierin kan je alle changes, features en bugs rapporteren en afhandelen, en ook onderverdelen in versies. Je kom hierbij al in de buurt van 'Agile development' in de vorm van Scrum, een flexibele manier om met meerderen aan een product te werken, zodat je snel een product kan opleveren aan de klant.

Dus zorg eerst voor een goede ontwikkel-flow, in plaats van 'wat code aanpassen, uploaden en hopen dat het werkt, en je je klanten niet stoort'. Dat is namelijk de foute strategie, waarmee je je zelfs flink in je voeten kan schieten als het fout gaat.
Sylvester vader op 15/03/2020 12:22:27

als ik iemand kan vinden die via mijn regels vrijwillig wilt helpen, zonder op korte termijn geld te willen hebben, dan zou ik dol blij zijn.


Het programmeren is een intensieve klus en je moet ervaring hebben. Het is onmenselijk om van je buurman te verwachten dat hij bij jou een jaar lang elke dag komt klussen. En vreemd genoeg denk jij nog in die richting?
Waarom denk je niet wat ruimer? Zie het als een uitdaging. Jij hebt de knowhow van alle regelgeving. Een ander van PHP en weer een ander van webservers. Dit project gaat een stille dood tegemoet als je daar in je eentje in wilt blijven zitten, dat geef ik je op een briefje.

Sylvester vader op 15/03/2020 12:22:27

deze persoon moet 400% rekening houden met het feit dat het systeem live is en er dus geen fout kan en mag ontstaan

gegevens weg .....
dan kost dat mij minimaal 100.000+- per bedrijf want al deze bedrijven staan dan stil
het is dus niet zo dat ik even een scripter er zomaar in kan laten en dan hopen dat het goed komt


Je moet zoals Ariën ook aangeeft nooit direct in een live omgeving gaan priegelen. Daarom is versiebeheer ook ontzettend belangrijk en moet code door en door getest worden alvorens ze online gezet worden.


Indien je dit project helemaal kan professionaliseren en je er wat geld in durft te stoppen om het te promoten dan kan hier volgens mij prima geld in verdiend worden. Laat ik je een vraag stellen:

Verdien jij in je eentje liever honderd euro per maand of met zijn drieën of vieren 1000 euro die je dan moet delen?

Wat ik duidelijk probeer te maken is dat je er met de juiste houding en handen wel degelijk een succes van zou kunnen maken.
Klopt helemaal wat je zegt
Echter moet er dus wel geld zijn om iets te geven
Op dit moment hou ik niks over
Van niks kan ik dus niemand betalen

Als ik inderdaad iemand vind die mij helpt enz voor bv 3 maanden dan kan ik daarna wel zorgen voor wat geld enz

Want als die dingen die ik wil werken kan ik veel sneller nieuwe klanten krijgen en ook betere inkomsten eruit halen

Scripters vragen helaas over het algemeen best hoge bedragen en heb niemand nog gezien die wilt wachten op geld

Eigenlijk altijd eerst geld en daarna script
En dan hopen dat het werkt.

Werkt het niet dan moet je vaak nog meer betalen om het te fixen

Dus om die reden ben ik Dus genoodzaakt alles zelf te bouwen met de kennis die ik heb


Ik vrees dat dit een zware opgave gaat worden. Ook is het op die manier duidelijk dat je financiële model dus totaal niet goed in elkaar zit. Dus zorg dat er meer geld inkomt dan dat je uitgeeft. Misschien moet je de heffingen even verhogen in je licenties? Want ook in een goede ontwikkelingsstrategie moet je investeren.

Extra servers voor git, een beheerder die dit opzet.
Vrijwillig gaat je dit niet lukken, want wie gaat er (zoals Frank zegt) vrijwillig langdurige tijd lang klussen?
Om even te beantwoorden op eerder bericht
Ik heb ooit getest op een test server
Echter raakt alles in soep omdat ik dan gegevens mis
Ik heb een live omgeving nodig omdat ik de gegevens nodig heb per dag en per gebruiker worden ingevoerd

Indien ik dus een test server zou nemen
En dan even niet aan kosten denken
Dan moet ik eerst iets maken dat alle gegevens dubbel invoert in server en in test server

Of iemand moet inhuren die elke dag voor mij gegevens invoert in test systeem

Sylvester vader op 15/03/2020 16:37:46

Om even te beantwoorden op eerder bericht
Ik heb ooit getest op een test server
Echter raakt alles in soep omdat ik dan gegevens mis
Ik heb een live omgeving nodig omdat ik de gegevens nodig heb per dag en per gebruiker worden ingevoerd

Je kan toch die gegevens inladen vanuit de productie? Ik zie het probleem niet?


Indien ik dus een test server zou nemen
En dan even niet aan kosten denken
Dan moet ik eerst iets maken dat alle gegevens dubbel invoert in server en in test server

Waarom? Een test-server hoeft niet gelijk te lopen met productie.
Lees het verhaal over OTAP anders nog eens.


Of iemand moet inhuren die elke dag voor mij gegevens invoert in test systeem

Beetje raar. Die importeer je toch, en je speelt er toch in hartelust mee?
Ik zou sowieso dummy-data gebruiken voor NAW-gegevens, en dus niet uit een database van je klant. Dus laat desnoods je neef, nicht, buurjongen, een uurtje met die applicatie spelen en je hebt zat data.
O boy. Je kunt toch de standaard instellingen en gegevens uit de live omgeving kopiëren naar de test omgeving? Kosten zijn amper noodzakelijk. Ik heb enkel een domeinnaam genomen. Die kost een paar euro per jaar. Het domein wijst naar mijn huis ip-adres en ik heb een forward in mijn router gezet. Mijn eigen pc is dus mijn testserver, compleet met domeinnaam. Iets wat voor 95% van de werkzaamheden niet eens nodig is want je kunt ook gewoon http://127.0.0.1 gebruiken. Een pakket als Wamp, Xampp of Lamp is zo gedownload en voila je hebt je eigen testserver compleet met een mysql database en met phpMyAdmin.

Een nieuw project begin je natuurlijk op een test-server. De configuratie instellingen maak je 1x voor iedere server (Knip en plak werk mogelijk). Met de database zou je Schema migrations kunnen overwegen.
Ik werk in een hele moeilijke branche en daarom zijn inkomsten moeilijk
Ik heb geen geld buffer
En een lening krijg ik in deze branche niet

Zoals ze zeggen als je voor een dubbeltje geboren bent wordt je nooit een kwartje

Echter gaat het met mijn systeem alleen maar omhoog en komt het geld vanzelf goed maar het kost helaas allemaal tijd

De bedrijven die mijn systeem gebruiken willen niet meer terug naar iets anders
En in mijn branche is ook niks beters te vinden.

Ik ben totaal al meer dan 8 jaar bezig
En het gaat elk jaar sneller en beter
Op tempo dat het nu gaat zit ik slapend binnen komende 5 jaar op 3000 netto per maand
Dus mijn tijd komt wel
Met of zonder hulp





Reageren