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.
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.
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
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