rijen deleten

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

WO Master Software Ontwikkelaar C++ / C#

Voor wie je gaat werken: Wij zijn gespecialiseerd in het gebied van duurzaam aanpasbare business gedreven software. Ben jij een software developer? Heb je ervaring met C++, C#, Java of een andere taal? Vaste baan: Software Ontwikkelaar C++ C# 3.000 - 5.000 Software Ontwikkelaar Ons bedrijf bouwt klant specifieke informatiesystemen voor de integrale ondersteuning van bedrijfsprocessen. Chats, interactieve dashboards, mobile apps en….jouw innovatieve ideeën?! Wij werken altijd aan nieuwe innovatieve oplossingen. Bij ons werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit als het gaat om de inzet van technologie. Wij staan

Bekijk vacature »

API Developer / Red Hat Fuse @ Amersfoort

2021-05-25 iSense API Developer Red Hat Fuse Heb jij als API Developer/Integratie specialist al enige ervaring met het ontwikkelen van API's en wil jij aan de slag met nieuwe oplossingen als Red Hat Fuse en 3Scale? Lijkt het jou gaaf om aan de vooravond te staan van de implementatie van een volledig nieuw applicatiehuis met tal van koppelingen? Ga jij daarnaast graag aan de slag binnen een uitdagende omgeving waarbij je de mogelijkheid krijgt jezelf verder te ontwikkelen? Lees dan snel verder! ISKO47622 Organisatie Deze organisatie is een toonaangevende speler in de vastgoedbranche en telt momenteel ruim 500 medewerkers. Met

Bekijk vacature »

Medior C# Developer

Samen met het development team zorg je ervoor dat alle systemen achter de schermen vlekkeloos werken. Wat doe je als Medior C# Developer bij Coolblue? Als C# developer doe je regelmatig mee aan brainstormsessies over user experience, data en task flow met de UX Designer, Product Owner en Data Scientist in je team. Daarnaast schrijf je op zichzelf staande, consistente en testbare code die goed onderhoudbaar en toekomstbestendig is. Ook C# Developer worden bij Coolblue? Lees hieronder of het bij je past. Dit vind je leuk om te doen Werken met verschillende soorten data-opslag, zoals Oracle of AWS. Problemen oplossen

Bekijk vacature »

PHP Developer HBO / Symfony

Over de werkgever: Wij zijn een grote online muziekwinkel. Ben jij een ambitieuze PHP Developer? Heb je kennis van Symfony? Vaste baan: PHP Developer Symfony 2.800 - 3.700 PHP Developer Wij zijn de grootste online muziekwinkel van de Benelux, en de toekomstig grootste muziekwinkel van Europa. Met honderdduizenden pakketten die jaarlijks verstuurd worden en miljoenen unieke bezoekers per jaar zijn wij marktleider in de Benelux op het gebied van licht, geluid, muziekinstrumenten, producer- en DJ-gear. Wij bieden veel verantwoordelijkheid en ruimte voor creativiteit. Daarnaast werken we in een leuke en informele werksfeer bij een jong en dynamisch bedrijf. Wij zijn

Bekijk vacature »

Java Developer @ Utrecht

2021-06-08 iSense Java Developer Do you like DevOps way of working? Are you looking for an exciting opportunity where latest and greatest technologies are applied? Would you like to take responsibility in each and every step of software development lifecycle ? ISKE50115 Organization You will work at global financial organization with a head office in the Netherlands. You will be part of one of the most important departments in the core banking domain. The organization has a very strong commitment to the collaboration and communication culture among different development teams. You are going to work in a squad that is

Bekijk vacature »

IT-traineeship junior software developer

Zoek jij een stevige uitdaging en de mogelijkheid om veel nieuwe dingen te leren in een dynamisch vakgebied? Doe mee aan ons IT Professional Program en ontwikkel jezelf tot software engineer! Je begint met een opleidingstraject van ongeveer 4 maanden. Hierin ga je aan de slag met verschillende technieken die je op conceptueel niveau leert te overzien en interpreteren. Onderwerpen die aan bod komen zijn o.a. programmeren (Java/C#/Python), Object Oriëntatie, Databases, Webservices & webtechnologieën, Domain Driven Design en Continuous Integration/Continuous Delivery. Sommige van deze onderdelen sluit je af met een examen en bijbehorende certificering. Het opleidingstraject zelf sluit je af

Bekijk vacature »

SAP CRM Developer @ Den Haag

2021-07-26 iSense SAP CRM Developer Heb jij ervaring met SAP CRM/UI5 en Webdypro ABAP? Denk jij niet in problemen maar in oplossingen en wil jij met die oplossingen de business naar een hoger niveau tillen? Lees dan snel verder! ISKA50585 Organisatie De organisatie staat voor het leveren van een efficiënte en kwalitatief hoogwaardige salaris- en personeelsadministratie. Je gaat samenwerken met ICT-professionals met uiteenlopende kennis en achtergronden. Hou je van Agile samenwerken en kom je maximaal tot je recht in zelfsturende teams? Dan is dit de plaats waar jouw toekomst ligt. Voor deze functie zijn we op zoek naar een ervaren

Bekijk vacature »

Advanced Mendix Developer Logistic Solutions (NL)

Advanced Mendix Developer Logistic Solutions (NL) Den Haag HBO/WO IT Professional "Als Advanced Mendix Developer impact maken op de groeiende E-commerce markt met onze logistieke software en onze kritieke logistieke keten. Je doet dit door ontwikkeling en uitbreiding van onze Mendix Cloud omgeving, waarbij je complexe business processen vertaalt naar kritieke Mendix applicaties." Wat ga je doen? PostNL is becoming a postal tech company. Je komt te werken binnen PostNL Logistic Solutions. Daar gaan we net wat verder dan een standaardpakket of brief. Het gaat bijvoorbeeld om gekoeld vervoer van medicijnen (Health), Warehousing (Fulfilment), het leveren binnen hele strakke tijdvakken

Bekijk vacature »

Lead Front-end Developer / React / Clojurescript @

2021-05-21 iSense Lead Front-end Developer / React / Clojurescript Are you an experienced Front-end Developer who can motivate his / her colleagues to reach their fullest potential? Do you like working on a state-of-the-art platform with techniques like Clojurescript and React? Then this is the vacancy for you! ISDR49940 Company For our client, a modern and ambitious company in the Eindhoven region, we're looking for an experienced Front-end Developer. The company is expanding rapidly after launching their product about 2 years ago. You'd not only be using your programming skills to work on an innovative content platform, but also motivate

Bekijk vacature »

Junior Outsystems Ontwikkelaar IT / Lowcode

Wie wordt jouw werkgever?: Wij ontwikkelen ERP systemen. Ben jij een gedreven Software Ontwikkelaar? Heb je kennis van ERP systemen? Vaste baan: Junior Outsystems Ontwikkelaar IT ERP 2.400 - 3.100 Junior Outsystems Ontwikkelaar Wij ontwikkelen ERP systemen voor bouworganisaties. Dit doen wij tegen de hoogst mogelijke kwaliteit. Werken bij ons betekent werken in een start-up omgeving met veel groei mogelijkheden. Doorleren wordt op prijs gesteld en gefaciliteerd. Daarbij geven we jou veel verantwoordelijkheden en mogelijkheden om eigen initiatieven uit te voeren. Bij ons werk je aan onze eigen bedrijfsapplicaties. Je ontwikkelt met ons de meest nieuwe software. Wij blinken uit

Bekijk vacature »

Sr Golang Developer PHP Laravel / JavaScript

Over de werkgever: Wij zijn een groep tech-minded developers. Hou jij je graag bezig met software-ontwikkeling? Heb je ervaring als developer? Vaste baan: Sr Golang Developer PHP Laravel JavaScript 3.800 - 5.000 Senior Golang Developer Wij werken uitsluitend met teams van in-house professionals. Daarnaast specialiseren wij ons in het uitdenken, ontwikkelen en opleveren van hoge kwaliteit en schaalbare oplossingen voor MKB en enterprise. Zo ontwikkelen we custom tooling en applicaties voor een aantal bedrijven in de top vijftig van Nederland. Wij werken voor MKB klanten. We hebben veel verschillende projecten. Houd jij van afwisseling? Dan zit je bij ons goed!

Bekijk vacature »

Microsoft Business Intelligence ontwikkelaar

Bedrijfsomschrijving Mijn opdrachtgever is gevestigd in Best en een bekende speler binnen haar vakgebied. De ICT afdeling is momenteel 22 FTE groot en de afdeling management informatie is momenteel 4 FTE groot. Binnen de organisatie heerst er een prettige werksfeer. Functieomschrijving Ter uitbreiding van het huidige team (momenteel 4 FTE), is mijn klant op zoek naar een Microsoft Business Intelligence ontwikkelaar. Binnen deze functie ben je verantwoordelijk voor de doorontwikkeling van het Microsoft datawarehouse. Kort samengevat zul je betrokken zijn bij; -Het ontwikkelen en onderhouden van ETL processen middels SSIS -Het modelleren van datamarts -Het dimensionaal modelleren met SSAS -Ontwikkelen

Bekijk vacature »

Senior C# Developer

You'll build modern applications for Coolblue back’s office. We have a lot of friends, and they crave well-structured data and user-friendly, task-focused applications. How do I become a Senior C# Developer at Coolblue? You regularly participate in brainstorm sessions about user experience, data, and task flow with the UX Designer, Product Owner, and Data Scientists in your team. Besides that you will create disconnected, highly congruent, and testable code that can easily be maintained and is future-proof. Want to become Senior C# Developer at Coolblue? Read below if the job suits you You enjoy doing this Working with various types

Bekijk vacature »

Medior .NET Developer I eLearning en ePublishing

Bedrijfsomschrijving Kom werken bij een leuk softwarehuis, thuis in de educatieve markt! Ze maken software-oplossingen op maat, afgestemd op specifieke bedrijfsprocessen van de klant. De klant doet waar ze goed in zijn, dit bedrijf zorgt er voor dat zij de juiste toolset hebben. Het bedrijf heeft als missie om onderwijs inspirerend, leuk en interactief te maken. Het bedrijf kent enkel en alleen software producten welke aangeboden worden in zowel binnen- als buitenland. Met inmiddels een team van ongeveer 25 hoogopgeleide mensen zijn ze in staat complexe processen begrijpelijk te maken en te vertalen in goed werkende software oplossingen. Naast een

Bekijk vacature »

C# .NET Developer in een club van Digital Natives!

Bedrijfsomschrijving Deze organisatie heeft twee vestigingen in Nederland. In totaal werken er ongeveer 25 dames en heren nauw samen aan het bouwen van kwalitatief hoogstaande (web)applicaties. De organisatie groeit hard en de aanvragen stromen binnen, maar er wordt bewust voor gekozen om relatief klein (het uiteindelijke doel is maximaal 25 medewerkers per vestiging) te houden. Dit om de gemoedelijke, informele werksfeer, het opendeurenbeleid en de korte lijnen altijd in stand te houden. De organisatie is een digital agency met kantoren in Amsterdam en Enschede. Ze helpen hun klanten sinds 2008 met het creëren van digitale oplossingen die het merk, de

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

16/09/2021 17:38:47
 
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.