rijen deleten

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Medior/senior Back-end developer gezocht!

Functie Vanwege de groei binnen het bedrijf zijn we op zoek naar versterking in het devlopmenttean. Als back-end developer bouw je aan de bedrijfssoftware die ons helpt bij de primaire processen. Een leuk (intern) project dus waarbij je de software continu doorontwikkeld! Je werkt in een klein team, we hebben dagelijks stand-ups en iedere twee weken een scrum-sessie, begeleid door onze Scrum Master. Hierin krijg je uitgebreid de kans om je ideeën te presenteren, en te overleggen met je mede-ontwikkelaars en de Product Owner. Binnen de ontwikkelteams gebruiken we Trello, Gitlab, Jiira, Confluence en Boockstack. Hiernaast werken ze met de

Bekijk vacature »

Grafisch vormgever

Standplaats: Maasland Aantal uren: 32 – 40 uur per week Opleidingsniveau: HBO werk- en denkniveau Ben jij een ambitieuze grafisch vormgever met een passie voor creativiteit en oog voor detail? Vind jij het daarnaast leuk om ook marketingactiviteiten op te pakken? Dan zijn wij op zoek naar jou! Bedrijfsinformatie Westacc Group BV is het zusterbedrijf van HABA en specialiseert zich in (maatwerk) oplossingen voor (elektro) techniek en verlichting in de kampeerbranche. Zij produceren en assembleren onderdelen voor caravans, campers en boten. Voor een groot aantal caravan- en campermerken leveren wij producten als zekeringkasten, invoerdozen, acculaders, schakelmateriaal en verlichting. De producten

Bekijk vacature »

Java developer

Als Java Developer bij Sogeti ben je onderdeel van onze toonaangevende community die bestaat uit ruim 100 gepassioneerde Java professionals. In teamverband lever je mooie prestaties. Daarmee draag je aan bij de meerwaarde die wij leveren aan onze top-opdrachtgevers. Geen werkdag is hetzelfde! Je bent voortdurend bezig met het oplossen van allerlei complexe vraagstukken binnen bedrijfs kritische systemen voor onze klanten in regio Noordoost zoals DUO, ING, CJIB en Tendernet. Natuurlijk krijg jij de mogelijkheid je verder te certificeren in dit vakgebied. We organiseren regelmatig technische Meetups en doen veel aan kennisdeling. Sogetisten hebben plezier in hun werk en staan

Bekijk vacature »

C#.NET/Unity Developer

Functieomschrijving Voor een gewaardeerde werkgever in de omgeving van Breda zijn wij op zoek naar een software ontwikkelaar. Dit bedrijf houdt zich bezig met de ontwikkeling van WMS Software (C#/Unity & SQL). Past dit bij jou? Lees snel verder! Jouw werkzaamheden zullen er als volgt uitzien: Je werkt aan innovatieve softwareoplossingen voor het verbeteren en/of vernieuwen van processen; Samen met 6 applicatieontwikkelaars hebben jullie de verantwoordelijkheid voor de uitbreiding en ontwikkeling van de webapplicaties; Het uitvoeren van updates/aanpassingen aan de huidig draaiende applicaties; Je bent een luisterend oor naar klanten en vertaalt hun wensen door naar bruikbare software. Bedrijfsprofiel Wie

Bekijk vacature »

Fullstack developer

Functie omschrijving We are looking for a dutch native speaker Wil jij werken als Senior Developer en werken aan een applicatie die duizenden marketingcampagnes automatisch aanstuurt? Dit is je kans! Kom werken voor onze opdrachtgever en in deze rol zul je veel vrijheid en verantwoordelijkheid krijgen om gezamenlijk de applicatie naar een hoger plan te tillen. Wat ga je verder doen: Optimaliseren, beheren en uitbreiden van onze applicatie; Het bouwen van aansluitingen op de systemen van partners middels API’s; Meedenken over de technische/ontwikkel-standaarden; Proactief verbeterpunten voorstellen. Bedrijfsprofiel Het is een organisatie die met een team van verschillende developers én marketeers

Bekijk vacature »

Medior/senior Front-end developer (Vue.js)

Functie Als Front-end developer ben je uiteindelijk overkoepelend aan de slag voor de 3 ontwikkelteams die ieder aan een specifiek product werken. In samenwerking met de UX-designer en de huidige Front-end developer zorg je voor gebruiksvriendelijke software. Lijkt het jou interessant om complexe problemen op te lossen en feautures naar een hoger niveau te tillen? En vind je het niet erg om oudere delen van de applicaties te refactoren i.c.m. het toevoegen van nieuwe functionaliteiten? Dan komen wij graag met je in contact. Eisen • HBO werk- en denkniveau (ze kijken niet naar papieren, maar naar denkniveau, motivatie en zelfredzaamheid)

Bekijk vacature »

C# .NET Ontwikkelaar ASP.NET

Samengevat: Deze werkgever is een inkooporganisatie. Ben jij een ervaren .Net ontwikkelaar? Heb je ervaring met .Net en C#? Vaste baan: C# .NET Developer .Net MBO HBO €3.100 - €4.300 Onze missie is: “Een essentiële bijdrage leveren aan het verlagen van de integrale kostprijs van de aangesloten groothandels, middels het bundelen van inkoopvolume en het creëren van synergie met en tussen de groothandels en leveranciers, met scherpe inkoopprijzen, goede handelscondities en gerichte dienstverlening als resultaat” Zij werken voor MKB klanten. Deze werkgever heeft veel verschillende projecten. Houd jij van afwisseling? Dan zit je bij hun goed! De branche van dit

Bekijk vacature »

Front-end developer E-Commere

Functie E-commerce is een ‘’snelle’’ wereld. Om hierin continu voorop te blijven omarmen ze in een vroeg stadium nieuwe technieken. Een webshop is nooit af en kan altijd beter, sneller en efficiënter. Tegelijkertijd hebben ze vanaf hun oprichting altijd vastgehouden aan kwaliteit boven snelheid, en dit loont. Als front-end developer heb je een adviserende rol en sta je aan het eindpunt van alles wat met designs te maken heeft. Je overlegt met klanten en collega’s, en zet je in om ideeen om te zetten tot unieke concepten. Je bent het aanspreekpunt voor de klant en bewaakt tevens de planning. Eisen

Bekijk vacature »

Delphi Programmeur

Functie omschrijving Onze opdrachtgever is gespecialiseerd in kantoor-bedrijfssoftware en zit gevestigd in omgeving Numansdorp. Als programmeur ben jij bij dit bedrijf met het volgende bezig; Je vertaalt technische en functionele ontwerpen naar kwalitatieve software. Je ontwikkelt, ontwerpt en test software. Je maakt daarbij veel gebruik met de volgende tools & technologieën: Delphi 10.3 (Rio), QuickReport 6. Je krijgt in deze rol veel vrijheid en verantwoordelijkheid. Je levert projecten van A - Z op, en werkt daarbij projectmatig en gestructureerd. Bedrijfsprofiel Dit bedrijf richt zich op maatwerk software oplossingen. Deze software oplossingen worden ingezet in de financiële branche. Het betreft een

Bekijk vacature »

PHP Developer

Functie omschrijving Voor een bedrijf in Den Bosch zoek ik een PHP Developer, die al wat werkervaring heeft. Jij gaat aan de slag met de verdere professionalisering van de interne applicaties en software. In de functie ga je verder: Verdere ontwikkeling eigen CRM systeem, vooral middels PHP; Bouwen van verschillende API's & koppelingen; Meedenken om de software/applicaties te verbeteren/optimaliseren; Aan de slag met de interne tooling. Bedrijfsprofiel Dit bedrijf is actief binnen de telecombranche. Het hoofdkantoor zit in regio van Den Bosch en er werken ruim 70 medewerkers, verdeeld over verschillende afdelingen. De afdeling Development bestaat uit vijf collega's, onder

Bekijk vacature »

Back end developer PHP

Functie Heb jij altijd al eens bij een bedrijf willen werken waar jij géén nummertje bent, die alleen maar uitvoerend werk doet? Dan zou je hier perfect passen! Tuurlijk, je werkt aan projecten voor grote of kleine bedrijven… Het enige verschil hier is, jouw mening telt hier écht. Jouw inbreng wordt gewaardeerd, serieus genomen en gebruikt. En vergeet niet, je werkt niet alleen aan deze projecten. Er werken in totaal ruim 25 developers en designers, onderverdeeld over 3 development teams. Voornamelijk bestaande uit Medior en Senior developers, die samen voor een inspirerende en ambitieuze omgeving zorgen. Hun visie is namelijk

Bekijk vacature »

Fullstack Software Developer

Functieomschrijving Voor een ambitieuze werkgever in regio Roosendaal zijn wij op zoek naar een Full Stack C#.NET Developer. Als software programmeur ben je verantwoordelijk voor het bouwen van webapplicaties, apps en dashboards voor de eigen IOT-oplossingen. Je werkt samen met andere developers en engineers om de sensoren in machines uit te lezen en deze data om te zetten in management informatie voor jullie klanten. Taken en verantwoordelijkheden: Verder ontwikkelen en onderhouden van webapplicaties, dashboards en apps voor de eigen IOT-oplossingen; Testen en goedkeuren van de software; Je gaat aan de slag met de volgende technologieën en frameworks: C#, JS frameworks,

Bekijk vacature »

Lead developer (PHP, Symfony, DDD)

Functie Als Lead developer zorg je ervoor dat het team (bestaande uit zowel junior als ervaren developers) in staat is om de kwaliteit van de software (en code) verder te verhogen. In samenwerking met het team, de product owner en de andere lead developers zet je technische lijnen uit en bepaal je de prioriteiten per sprint. Lijkt het jou interessant om complexe problemen op te lossen en bijvoorbeeld een nieuwe applicatiestructuur in Symfony op te zetten? Dan komen wij graag met je in contact. Eisen • HBO werk- en denkniveau (ze kijken niet naar papieren, maar naar denkniveau, motivatie en

Bekijk vacature »

Python (Django) developer - Remote in The Netherla

Functie Together with your team, consisting of a senior, 2 mediors and one junior developer, you will work on their software in an Agile-based approach. You have an eye for quality, risk, and customer interest. Communication with your colleagues and, where necessary, with customers, plays an important role in achieving a successful result. As a person, you are smart, get things done, and are result-oriented. There is a lot of independence within the development team, apart from the stand-up (10:00 am) and occasional pair-programming sessions. Techniques they use include Python, Django, MySQL, Mercurial, Ubuntu Linux, Nginx. In terms of front-end

Bekijk vacature »

Low Code Ontwikkelaar

In het kort Als Low Code Developer werk je aan projecten bij en voor onze klanten, waarbij je voor het ontwikkelen van de oplossingen een technisch low-code platform gebruikt. Samen met het team streef je naar de beste oplossing en bepalen jullie de juiste aanpak. Je rol is divers en je bent van begin tot eind betrokken bij de ontwikkeling zowel de back-end en de front-end van de applicatie. Naast de ontwikkeling en oplevering, breng je ook advies uit aan de klant waarom bepaalde keuzes worden gemaakt. Je bent dan ook communicatief sterk en kunt je keuzes goed (inhoudelijk) onderbouwen.

Bekijk vacature »

Pagina: 1 2 volgende »

Louis Deconinck

Louis Deconinck

03/08/2012 10:50:19
Quote Anchor link
In het volgende script wordt er dus geld toegevoegd aan de opbrengst van een positie, dat werkt allemaal heel erg goed, alleen wil ik dat wanneer een positie €15 of meer heeft verdienddeze €15 verdiend en wordt gedeleted uit de database, het delete proces dat ik nu heb staat op regel 11-16, maar werkt dus niet, hoe kan ik dit oplossen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
session_start();
include("header.php");
if (!isset($_SESSION['admin'])) {
output("Je moet ingelogd zijn om deze pagina te kunnen bekijken");
}

else {
if (isset($_POST['bevestig'])) {
$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$posities = mysql_fetch_assoc($posities_get);
while ($posities['opbrengst'] > 15) {
$teveel=$posities['opbrengst']-15;
$inv4=mysql_query("DELETE FROM posities");
$inv5=mysql_query("UPDATE geld SET saldo = $teveel + saldo");
$inv6=mysql_query("UPDATE geld SET totaal = $teveel + totaal");
}

$inv1=mysql_query("UPDATE posities SET opbrengst = '".$_POST['inkpos']."' + opbrengst");
$inv2=mysql_query("UPDATE geld SET saldo = ($aantalposities * '".$_POST['inkpos']."') + saldo");
$inv3=mysql_query("UPDATE geld SET totaal = ($aantalposities * '".$_POST['inkpos']."') + totaal");
$totaalbetaald = mysql_num_rows($posities_get) * $_POST['inkpos'];
output("Elke positie heeft &euro;".$_POST['inkpos']." verdiend, dat is dus een totaal van &euro;$totaalbetaald.");
}

?>

<form action="" method="post">
Inkomsten per positie: &euro;<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.php");
?>
 
PHP hulp

PHP hulp

26/04/2024 11:52:52
 
Chris PHP

Chris PHP

03/08/2012 10:54:20
Quote Anchor link
Weet je hoe de syntax van een DELETE eruit ziet?

Dit is je query.
$inv4=mysql_query("DELETE FROM posities");

DELETE 'wat' FROM posities? Hij moet natuurlijk wel weten wat je wilt weggooien uit de posities table.
Gewijzigd op 03/08/2012 10:54:52 door Chris PHP
 
Jan Koehoorn

Jan Koehoorn

03/08/2012 10:55:09
Quote Anchor link
Je hebt helemaal geen WHERE in je DELETE query.
 
Louis Deconinck

Louis Deconinck

03/08/2012 10:57:21
Quote Anchor link
Dus gewoon
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$inv4
=mysql_query("DELETE FROM posities WHERE '".$posities['opbrengst']."' > 15");
?>
 
Chris PHP

Chris PHP

03/08/2012 10:58:39
Quote Anchor link
Test het zou ik zeggen :-D, van voorkauwen leer je niets.
 
Louis Deconinck

Louis Deconinck

03/08/2012 11:09:03
Quote Anchor link
Nee, dit werkt dus niet :-(

Dan heb ik dit geprobeerd, maar dit werkt ook niet, wat is hier fout aan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?php
session_start();
include("header.php");
if (!isset($_SESSION['admin'])) {
output("Je moet ingelogd zijn om deze pagina te kunnen bekijken");
}

else {
if (isset($_POST['bevestig'])) {
$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$posities = mysql_fetch_assoc($posities_get);
$whilecount = 0;
while ($whilecount < mysql_num_rows($posities_get)) {
$whilecount=$whilecount+1;
$teveel=$posities['opbrengst']-15;
$inv4=mysql_query("DELETE FROM posities WHERE ('".$posities['opbrengst']."' > 15)");
$inv5=mysql_query("UPDATE geld SET saldo = ($teveel + saldo)");
$inv6=mysql_query("UPDATE geld SET totaal = ($teveel + totaal)");
}

$inv1=mysql_query("UPDATE posities SET opbrengst = '".$_POST['inkpos']."' + opbrengst");
$inv2=mysql_query("UPDATE geld SET saldo = ($aantalposities * '".$_POST['inkpos']."') + saldo");
$inv3=mysql_query("UPDATE geld SET totaal = ($aantalposities * '".$_POST['inkpos']."') + totaal");
$totaalbetaald = mysql_num_rows($posities_get) * $_POST['inkpos'];
output("Elke positie heeft &euro;".$_POST['inkpos']." verdiend, dat is dus een totaal van &euro;$totaalbetaald.");
}

?>

<form action="" method="post">
Inkomsten per positie: &euro;<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.php");
?>
Gewijzigd op 03/08/2012 11:10:38 door Louis Deconinck
 
Chris PHP

Chris PHP

03/08/2012 11:12:56
Quote Anchor link
Waarom staat je posities >15 tussen ()?
 
Louis Deconinck

Louis Deconinck

03/08/2012 11:20:47
Quote Anchor link
Met de ('jes te verwijderen is het probleem nog altijd niet opgelost. Hij delete de rij nog altijd niet

Voorbeeld, als alles 0.0000 bevat en ik voer 16.0000 dan krijg ik als saldo '1.0000' en totaal '1.0000' en bij de opbrengst van de positie '16.0000'.

Wat gaat er fout:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
<?php
session_start();
include("header.php");
if (!isset($_SESSION['admin'])) {
output("Je moet ingelogd zijn om deze pagina te kunnen bekijken");
}

else {
if (isset($_POST['bevestig'])) {
$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$posities = mysql_fetch_assoc($posities_get);
$whilecount = 0;
while ($whilecount < mysql_num_rows($posities_get)) {
$whilecount=$whilecount+1;
$teveel=$posities['opbrengst']-15;
$inv4=mysql_query("DELETE FROM posities WHERE '".$posities['opbrengst']."' > 15");
$inv5=mysql_query("UPDATE geld SET saldo = $teveel + saldo");
$inv6=mysql_query("UPDATE geld SET totaal = $teveel + totaal");
}

$inv1=mysql_query("UPDATE posities SET opbrengst = '".$_POST['inkpos']."' + opbrengst");
$inv2=mysql_query("UPDATE geld SET saldo = ($aantalposities * '".$_POST['inkpos']."') + saldo");
$inv3=mysql_query("UPDATE geld SET totaal = ($aantalposities * '".$_POST['inkpos']."') + totaal");
$totaalbetaald = mysql_num_rows($posities_get) * $_POST['inkpos'];
output("Elke positie heeft &euro;".$_POST['inkpos']." verdiend, dat is dus een totaal van &euro;$totaalbetaald.");
}

?>

<form action="" method="post">
Inkomsten per positie: &euro;<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.php");
?>


Alvast bedankt
 
Jason  van der Zeeuw

Jason van der Zeeuw

03/08/2012 11:25:08
Quote Anchor link
Je doet nu dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$inv4=mysql_query("DELETE FROM posities WHERE '".$posities['opbrengst']."' > 15");


Maar in je where staat dan iets als:
WHERE 10 > 15
Maak er eens van:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$inv4=mysql_query("DELETE FROM posities WHERE opbrengst > 15");


Toevoeging op 03/08/2012 11:49:33:

"Voorbeeld, als alles 0.0000 bevat en ik voer 16.0000 dan krijg ik als saldo '1.0000' en totaal '1.0000' en bij de opbrengst van de positie '16.0000'."

dat snap ik niet helemaal...
 
Chris PHP

Chris PHP

03/08/2012 11:59:35
Quote Anchor link
Hier gaat dat fout.

$teveel=$posities['opbrengst']-15;

Als je daar dus 16 invult, wordt er 15 vanaf getrokken en kom je op 1 uit! Dus als je daar 17 invult zal er 2 uitkomen.
 
Louis Deconinck

Louis Deconinck

03/08/2012 12:58:54
Quote Anchor link
Ok, alles werkt nu. Een van de grote problemen was namelijk dat er een SELECT moest uitgevoerd worden nadat de tabel was verwijderd, verder waren er ook nog enkele foutjes in de berekeningen, dit is de werkende code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
session_start();
include("header.php");
if (!isset($_SESSION['admin'])) {
output("Je moet ingelogd zijn om deze pagina te kunnen bekijken");
}

else {
if (isset($_POST['bevestig'])) {
$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$posities = mysql_fetch_assoc($posities_get);
$whilecount = 0;
$topbrengst=0;
while ($whilecount < mysql_num_rows($posities_get)) {
$whilecount=$whilecount+1;
if ($posities['opbrengst'] + $_POST['inkpos'] > 15) {
$teveel=$posities['opbrengst']+$_POST['inkpos']-15;
$wopbrengst=$posities['opbrengst']+$_POST['inkpos']-$teveel;
$topbrengst=$wopbrengst+$topbrengst;
$inv4=mysql_query("DELETE FROM posities WHERE opbrengst + '".$_POST['inkpos']."' > 15");
$inv5=mysql_query("UPDATE geld SET saldo = $wopbrengst + saldo");
$inv6=mysql_query("UPDATE geld SET totaal = $wopbrengst + totaal");
}
}

$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$aantalposities=mysql_num_rows($posities_get);
$inv1=mysql_query("UPDATE posities SET opbrengst = '".$_POST['inkpos']."' + opbrengst");
$inv2=mysql_query("UPDATE geld SET saldo = ($aantalposities * '".$_POST['inkpos']."') + saldo");
$inv3=mysql_query("UPDATE geld SET totaal = ($aantalposities * '".$_POST['inkpos']."') + totaal");
$totaalbetaald = mysql_num_rows($posities_get) * $_POST['inkpos'] + $topbrengst;
output("Elke positie heeft &euro;".$_POST['inkpos']." verdiend, dat is dus een totaal van &euro;$totaalbetaald.");
}

?>

<form action="" method="post">
Inkomsten per positie: &euro;<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.php");
?>
 
Erwin H

Erwin H

03/08/2012 13:06:22
Quote Anchor link
Weet je zeker dat dit werkt? Al je updates hebben namelijk geen WHERE clause waardoor die updates op ALLE rijen in de betreffende tabel worden uitgevoerd.

Daarnaast kan je die updates ook nog eens in minder queries doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
$inv5
=mysql_query("UPDATE geld SET saldo = $wopbrengst + saldo");
$inv6=mysql_query("UPDATE geld SET totaal = $wopbrengst + totaal");

//wordt in 1 query:
$inv5=mysql_query("UPDATE geld
                   SET saldo = "
.$wopbrengst." + saldo,
                       totaal = "
.$wopbrengst." + totaal");
?>

Hetzelfde voor de tweede set aan update queries.
Bedenk dat het uitvoeren van queries over het algemeen de meeste tijd kost. Hoe minder queries hoe beter dus (als vuistregel).

Toevoeging op 03/08/2012 13:08:42:

Daarnaast zie ik je ook een keer "SELECT * FROM posities", terwijl je alleen het aantal rijen nodig hebt. Daar is een veel betere query voor:
SELECT COUNT(*) AS totaal FROM posities

Met die query krijg je een rij terug, met 1 kolom genaamd 'totaal'. Als je die uitleest weet je het aantal rijen in je totale tabel. Veel sneller en efficienter.
Gewijzigd op 03/08/2012 13:11:14 door Erwin H
 
Louis Deconinck

Louis Deconinck

03/08/2012 13:17:07
Quote Anchor link
Dit werkte inderdaad niet, maar dat kwam door een berekeningsfout, ik ben er zelfs achtergekomen, dat die WHERE, bij DELETE geheel overbodig is. Dit is nu de goede code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?php
session_start();
include("header.php");
if (!isset($_SESSION['admin'])) {
output("Je moet ingelogd zijn om deze pagina te kunnen bekijken");
}

else {
if (isset($_POST['bevestig'])) {
$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$posities = mysql_fetch_assoc($posities_get);
$whilecount = 0;
$topbrengst=0;
while ($whilecount < mysql_num_rows($posities_get)) {
$whilecount=$whilecount+1;
if ($posities['opbrengst'] + $_POST['inkpos'] > 15) {
$teveel=15-$posities['opbrengst'];
$topbrengst=$teveel+$topbrengst;
$inv4=mysql_query("DELETE FROM posities");
$inv5=mysql_query("UPDATE geld SET saldo = $teveel + saldo");
$inv6=mysql_query("UPDATE geld SET totaal = $teveel + totaal");
}
}

$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$aantalposities=mysql_num_rows($posities_get);
$inv1=mysql_query("UPDATE posities SET opbrengst = '".$_POST['inkpos']."' + opbrengst");
$inv2=mysql_query("UPDATE geld SET saldo = ($aantalposities * '".$_POST['inkpos']."') + saldo");
$inv3=mysql_query("UPDATE geld SET totaal = ($aantalposities * '".$_POST['inkpos']."') + totaal");
$totaalbetaald = mysql_num_rows($posities_get) * $_POST['inkpos'] + $topbrengst;
output("Elke positie heeft &euro;".$_POST['inkpos']." verdiend, dat is dus een totaal van &euro;$totaalbetaald.");
}

?>

<form action="" method="post">
Inkomsten per positie: &euro;<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.php");
?>


Toevoeging op 03/08/2012 13:19:31:

Mijn fout er moet wel overal een where anders delete hij ze allemaal
 
- SanThe -

- SanThe -

03/08/2012 13:34:56
Quote Anchor link
Foutafhandeling ontbreekt en SQL-Injection is mogelijk.
 
Louis Deconinck

Louis Deconinck

03/08/2012 13:35:18
Quote Anchor link
Ok, het werkt dus nog steeds niet :-(

Wat ik dus wil:
Ik wil dus dat hij in de while loopt alle posities die er zijn 1 voor 1 overloopt, vervolgens filtert hij daar alle posities uit die deze beurt een opbrengst zouden hebben van meer dan €15. Dan neemt hij de huidige opbrengst van deze positie en trekt dit af van 15, dit is dan het bedrag dat de positie zou moeten verdienen om tot aan 15 te komen. Daarna delete hij de positie, daarna moet hij het bedrag dat de posite tot de €15 bracht bij het saldo optellen. Verder moet hij ook nog eens bijhouden in $topbrengst hoeveel tijdens deze uitbetaling op deze manier werd verdient.

Daarna moet hij van alle posities die deze beurt nog geen €15 bereiken het ingegeven bedrag bij de opbregnst laten optellen

en als laatste moet hij dan ook nog eens weergegeven hoeveel er tijdens deze beurt in totaal is verdient.

Voorbeeld van hoe het moet: Een persoon beschikt over een saldo van €0 en 3 posities met een opbrengst van €0. Ik geef €10 in, dus alle posities van deze persoon verdienen €10 -> De persoon heeft een saldo van €30, verder heeft hij ook nog 3 posities met een opbrengst van elk €10 -> De persoon koopt met zijn saldo 3 nieuwe posities (een positie kost €10)-> De persoon heeft een saldo van €0, verder heeft hij nog 3 posities met elk een opbrengst van €10 en nog eens 3 posities met elk een opbrengst van €0 -> Ik geef nogmaals €10, dus alle posities van deze persoon verdienen €10, er is echter een uitzondering, aangezien zijn 3 eerste posities dan een opbrengst zouden hebben van €20 terwijl de maximale opbregnst €15, dus berekenen we hoeveel de posities tekort komen om €15 aan opbrengst te hebben, in ons geval is dit dus €5, dus de 3 posities worden verwijderd en de persoon heeft nu een saldo van €15, dit is echter nog niet alles want hij heeft ook nog eens 3 andere posities die elk €10 opbrengen -> Eindstand: saldo:€45 posities: 3 met een opbrengst van elk €10.

Hoe krijg ik dit voor elkaar?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
session_start();
include("header.php");
if (!isset($_SESSION['admin'])) {
output("Je moet ingelogd zijn om deze pagina te kunnen bekijken");
}

else {
if (isset($_POST['bevestig'])) {
$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$posities = mysql_fetch_assoc($posities_get);
$whilecount = 0;
$topbrengst=0;
while ($whilecount < mysql_num_rows($posities_get)) {
$whilecount=$whilecount+1;
if ($posities['opbrengst'] + $_POST['inkpos'] > 15) {
$teveel=15-$posities['opbrengst'];
$topbrengst=$teveel+$topbrengst;
$inv4=mysql_query("DELETE FROM posities WHERE opbrengst + '".$_POST['inkpos']."' > 15");
$inv5=mysql_query("UPDATE geld SET saldo = $teveel + saldo WHERE opbrengst + '".$_POST['inkpos']."' > 15");
$inv6=mysql_query("UPDATE geld SET totaal = $teveel + totaal WHERE opbrengst + '".$_POST['inkpos']."' > 15");
}
}

$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$aantalposities=mysql_num_rows($posities_get);
$inv1=mysql_query("UPDATE posities SET opbrengst = '".$_POST['inkpos']."' + opbrengst");
$inv2=mysql_query("UPDATE geld SET saldo = ($aantalposities * '".$_POST['inkpos']."') + saldo");
$inv3=mysql_query("UPDATE geld SET totaal = ($aantalposities * '".$_POST['inkpos']."') + totaal");
$totaalbetaald = mysql_num_rows($posities_get) * $_POST['inkpos'] + $topbrengst;
echo $whilecount.'<br>';
echo $topbrengst.'<br>';
echo $aantalposities.'<br>';
echo $teveel;
output("Elke positie heeft &euro;".$_POST['inkpos']." verdiend, dat is dus een totaal van &euro;$totaalbetaald.");
}

?>

<form action="" method="post">
Inkomsten per positie: &euro;<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.php");
?>
Gewijzigd op 03/08/2012 13:36:17 door Louis Deconinck
 
Erwin H

Erwin H

03/08/2012 14:18:57
Quote Anchor link
Even dacht ik dat het niet zo moeilijk zou zijn om dit in veel minder regels te plaatsen. Al die berekeningen moet je namelijk gewoon in SQL kunnen doen wat veel sneller en efficienter is.

Maar helaas, van je uitleg begrijp ik echt helemaal niets.... probeer het dus nog eens, misschien dat ik je dan kan helpen.
 
Louis Deconinck

Louis Deconinck

03/08/2012 14:37:27
Quote Anchor link
Ok, hopelijk kan het deze keer wat duidelijker:

Mensen die zich registreren op de website krijgen een saldo (in €) met dit saldo kunnen ze posities ter waarde van €10 aanschaffen. We gaan er dus vanuit dat de persoon start met een saldo van €30

1. saldo = €30 posities = 0

Met deze €30 koopt hij dus 3 posities

2. saldo = €0 posities = 3

elke positie heeft echter ook een eigen opbrengst. dus telkens wanneer de positie geld genereert gaat de opbengst omhoog, deze opbrengst kan echter maximaal €15 zijn.

3. saldo = €0 posities = 3 (met elk €0 opbrengst)

Goed nu is er ook een admin gedeelte (de code gaat over deze pagina), waarbij ik dus kan bepalen hoeveel geld de posities genereren. Dus in ons voorbeeld zeg ik dat alle posities die bestaan €10 genereren, dit verhoogt het saldo van de persoon dus ook, in ons geval heeft de persoon dus 3 posities dus 3x€10 = €30. Maar dit verhoogt ook de opbrengst van de posities, dus alle posities hebben nu een opbrengst van €10.

4. saldo = €30 posities = 3 (met elke €10 opbrengst)

Nu besluit de persoon om met zijn saldo (€30) daar weer nieuwe posities mee te kopen, 1 positie kost €10 dus de persoon kan 3 nieuwe posities kopen, deze nieuwe posities hebben elk een opbrengst van €0

5. saldo = €0 posities = 6 (3 oude met elk €10 opbrengst en 3 nieuwe met elk €0 opbrengst)

Dus de volgende dag ga ik opnieuw naar het admingedeelte en besluit dat elke positie vandaag weer €10 zal verdienen. Echter de 3 oude posities hebben reeds een opbrengst van €10, dus daar zou dan nogmaals €10 bijkomen, wat dus een totale opbrengst geeft van €20, dit is echter niet toegestaan want de totale opbrengst van een positie mag maximaal €15 zijn. Dus we berekenen op hoeveel geld de positie nog recht heeft. €15 (maximale opbrengst) - €10 (het geld dat de posities deze beurt genereren) = €5. Dus deze 3 posities hebben elk nog recht op €5, wat een totaal maakt van €15. Dus we schrijven €15 bij bij het saldo en we verwijderen de 3 oude posities aangezien deze toch hun maximale opbrengst hebben bereikt. Dan hebben we ook nog de 3 nieuwe posities, aangezien deze nog niet aan hun maximale opbrengst zitten, verdienen deze elk €10 en hebben nu dus ook een opbrengst van €10, wat dus een totaal maakt van €30. Dus €15 (opbrengsten oude posities) + €30 (opbrengsten nieuwe posities) = €45 (het nieuwe saldo).

6. saldo = €45 posities = 3 (met elk een opbrengst van €10)

Hoe krijg ik dit voor elkaar? de fout zit hem in het admin gedeelte:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
<?php
session_start();
include("header.php");
if (!isset($_SESSION['admin'])) {
output("Je moet ingelogd zijn om deze pagina te kunnen bekijken");
}

else {
if (isset($_POST['bevestig'])) {
$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$posities = mysql_fetch_assoc($posities_get);
$whilecount = 0;
$topbrengst=0;
while ($whilecount < mysql_num_rows($posities_get)) {
$whilecount=$whilecount+1;
if ($posities['opbrengst'] + $_POST['inkpos'] > 15) {
$teveel=15-$posities['opbrengst'];
$topbrengst=$teveel+$topbrengst;
$inv4=mysql_query("DELETE FROM posities WHERE opbrengst + '".$_POST['inkpos']."' > 15");
$inv5=mysql_query("UPDATE geld SET saldo = $teveel + saldo WHERE opbrengst + '".$_POST['inkpos']."' > 15");
$inv6=mysql_query("UPDATE geld SET totaal = $teveel + totaal WHERE opbrengst + '".$_POST['inkpos']."' > 15");
}
}

$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
$aantalposities=mysql_num_rows($posities_get);
$inv1=mysql_query("UPDATE posities SET opbrengst = '".$_POST['inkpos']."' + opbrengst");
$inv2=mysql_query("UPDATE geld SET saldo = ($aantalposities * '".$_POST['inkpos']."') + saldo");
$inv3=mysql_query("UPDATE geld SET totaal = ($aantalposities * '".$_POST['inkpos']."') + totaal");
$totaalbetaald = mysql_num_rows($posities_get) * $_POST['inkpos'] + $topbrengst;
echo $whilecount.'<br>';
echo $topbrengst.'<br>';
echo $aantalposities.'<br>';
echo $teveel;
output("Elke positie heeft &euro;".$_POST['inkpos']." verdiend, dat is dus een totaal van &euro;$totaalbetaald.");
}

?>

<form action="" method="post">
Inkomsten per positie: &euro;<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.php");
?>
Gewijzigd op 03/08/2012 14:37:58 door Louis Deconinck
 
Erwin H

Erwin H

03/08/2012 14:51:57
Quote Anchor link
Dit is al duidelijker, maar nog wel twee tussenvraagjes:
1) Je zegt dat het gaat over gebruikers die posities kopen. Dat betekent volgens mij dat in je tabel 'posities' je ook nog rekening moet houden met elke gebruiker. Het saldo dat je berekent moet je dus wel uitsplitsen over de verschillende gebruikers. Het kan niet allemaal 1-2-3 bij elkaar worden opgeteld.

2) Ik begrijp niet waarom je direct de posities wilt deleten die aan het maximum zitten. Is dat niet aan de gebruiker om die weg te gooien c.q. te verkopen?
 
Louis Deconinck

Louis Deconinck

03/08/2012 15:01:18
Quote Anchor link
1)Er zijn 3 tabellen namelijk: 'gebr' hierin worden alle gebruikersgegevens opgeslagen zoals, naame, email en wachtwoord alsook een unieke id waarmee ik posities en geld aan de gegevens van de gebruiker kan koppelen. Dan is er ook nog de tabel 'geld' hierin wordt het saldo opgeslagen en de totale verdiensten van de gebruiker.

Er is dan ook nog een apparte tabel 'posities' daarin zit 'id, 'opbrengst' en 'gebrid'. Doormiddel van 'gebrid' weet ik van wie de positie is, want 'gebrid' stemt overeen met de id van de gebruiker.

2) Deze posites doen niets meer, je kan ze niet verkopen (ze zijn niets waard) en ze leveren ook geen geld meer op (ze hebben hun maximale opbrengst bereikt), dus gewoon om de database wat mooi te houden verwijder ik ze, waarom moet ik de gebruiker met extra werk opzadelen, als ik de posities automatisch kan laten verwijderen.
Gewijzigd op 03/08/2012 15:04:07 door Louis Deconinck
 
Ivo Breeden

Ivo Breeden

03/08/2012 15:32:47
Quote Anchor link
Louis,
Je zegt dat je alle rijen in de while wilt behandelen. Misschien zie ik iets over hoofd maar volgens mij behandel je alleen de eerste rij. Volgens mij moet de while ongeveer zo:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
$posities_get = mysql_query("SELECT * FROM posities") or die(mysql_error());
while ($posities = mysql_fetch_assoc($posities_get)) {
  // behandel hier een rij, bijv.
  if ($posities['opbrengst'] + $_POST['inkpos'] > 15) {
    //enz.
  }
}

Dus geen gedoe met $whilecount.
(Wat voor tag moet ik trouwens gebruiken voor een code blok? ik doe "code" tussen blokhaken, maar ik krijg geen gekleurde syntax.)
Gewijzigd op 03/08/2012 15:38:54 door Ivo Breeden
 
Louis Deconinck

Louis Deconinck

03/08/2012 15:43:19
Quote Anchor link
Bedankt Ivo, dat ga ik even proberen, voor een gekleurde syntax met je php tags gebruiken in je code.
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.