rijen deleten

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior java ontwikkelaar integratie

Functieomschrijving Voor de gemeente Rotterdam zijn wij op zoek naar een senior java ontwikkelaar integratie. Taken Binnen een zelfsturend Scrumteam voer je geheel zelfstanding je opdrachten uit en levert het eindresultaat op aan het Integratieteam. Jij voelt je net als alle teamleden verantwoordelijk voor alle aspecten, vanaf de vraag tot en met de oplevering in productie. Je bent kritisch, je helpt de klant om zijn wensen helder te krijgen, je schrijft zelfstandig clean code die van hoge kwaliteit is, met bijbehorende unit- en integratietesten, je ondersteunt zo nodig bij deployments naar productie. Het Integratieteam bouwt componenten (Endpoints) op de ESB.

Bekijk vacature »

Front-end developer (Angular)

Functie Het team bestaat uit een architect, fullstack developers, app developers, de product owner en projectmanager. Eenieder draagt vanuit zijn discipline bij aan een complete oplossing voor de klant. Uiteraard zul je hierin nauw samenwerken met je collega’s. Jij wordt verantwoordelijk voor de front-end implementatie en fungeert als lead op dit gebied binnen het team. Je kunt helder formuleren, ideeën uitdragen en overbrengen aan je collega’s. Qua technische stack is het vooral van belang dat je ervaren bent met Angular, HTML5, CSS en TypeScript. Verder is ervaring in NgRx, Bootstrap, BEM en Cypress een pré, evenals affiniteit met UX/UI Design!

Bekijk vacature »

Freelance JAVA / C# Developer

Functieomschrijving Voor een opdrachtgever in omgeving Zoetermeer zijn wij op zoek naar ervaren JAVA of C# Developers die graag op projectbasis willen werken. Je komt terecht bij een informele developers club die mooie projecten uitvoeren voor grote klanten. Ben je een ervaren freelancer of werk je in loondienst en ben je toe aan een nieuwe uitdaging? Lees dan snel verder want wie weet is dit een leuke vacature voor jou! Het fijne van deze werkgever is dat je zelf mag beslissen hoe je te werk wilt gaan. Wil je als freelancer werken dan is dat OK. Wil je de zekerheid

Bekijk vacature »

C# Unity Developer

Functieomschrijving Ontwikkel jij mee door applicaties te bouwen die bijdragen aan het optimaliseren van processen? Voor een erkende werkgever in regio Tilburg zijn wij op zoek naar een Unity C# Developer die graag de uitdaging aangaat! Jouw werkzaamheden zullen er als volgt uitzien: Je bent een luisterend oor naar klanten en vertaalt hun wensen door naar bruikbare software; Je werkt aan innovatieve softwareoplossingen voor het verbeteren en/of vernieuwen van processen; Je bent verantwoordelijk voor het uitvoeren van updates/aanpassingen aan de reeds draaiende applicaties. Bedrijfsprofiel Je komt te werken voor een internationale werkgever in regio Tilburg. Samen met een vooruitstrevend team

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

Randstad B.V.- Freelance Senior Fullstack Develope

Startdatum: 01.05.2023 Richttarief: € 75,00 - €85,00 Duur van de opdracht: 1 jaar Uren per week: 40 Werkmodel: Hybride, dinsdag en donderdag aanwezig op kantoor in Diemen en meer wanneer dit nodig is. Functieomschrijving: De ideale kandidaat gaat onderdeel uitmaken van een junior team binnen het foundation domein. Vanuit het foundation domein werkt dit team samen met andere foundation teams en teams uit het online domein (professionals B2B en B2C) voor het bouwen en integreren van HRM functionaliteiten (verlof en benefits) in de persoonlijke portal van Interim Professionals. Er is meer backend werk dan frontend, maar kandidaat moet beiden leuk

Bekijk vacature »

Software Developer / .NET / Azure

Dit ga je doen Als Lead .NET Software Developer zal je je bezig houden met: Het vertalen van bedrijfswensen naar een technische roadmap; Uitwerken van nieuwe architectuur / designs; Het team aansturen en motiveren; Toezien op de kwaliteit van de code; Mee ontwikkelen van nieuwe features en applicaties. Hier ga je werken Deze organisatie is op dit momenteel marktleider in het ontwikkelen van productielijnen voor de voedselindustrie en heeft een wereldwijd klantnetwerk. Binnen deze organisatie is het team van software developers dagelijks bezig met het ontwikkelen van maatwerk oplossingen om alle productiemachines aan te sturen, maar ook bedrijf kritische applicaties

Bekijk vacature »

Medior PHP developer

Functie Samen met je development team werk je Agile Scrum en met jullie gezamenlijke kennis en ervaring bepalen jullie samen de beste keuze voor techniek en architectuur. Naast het ontwikkelen van software ben je continue bezig om ook jezelf te ontwikkelen. Ze werken met o.a.: PHP, Laravel, Doctrine, PHP Unit, Behat, React, TypeScript, (My)SQL, Postgress, Redis, ElasticSearch, Docker, Nginx, GIT flow, JIRA, AWS. Eisen • HBO werk- en denkniveau • Je hebt goede kennis en ervaring met PHP • Je bent niet bang voor complexe projecten • Je werkt graag zelfstandig aan applicaties • Je bent altijd nieuwsgierig naar nieuwe

Bekijk vacature »

Fullstack Developer

Functieomschrijving Heb je kort geleden jouw HBO diploma ICT development behaald? Of zit je nog aan het begin van je carrière en heb je affiniteit met C#.NET? Voor een erkende werkgever in de omgeving van Oosterhout zijn wij op zoek naar een fullstack developer. Als C#.NET developer werk je samen met een vooruitstrevend team aan het ontwikkelen van maatwerk software voor klanten. Je hebt affiniteit met SQL, maar nog belangrijker is dat je kennis en ervaring hebt met C#.NET. Jouw werkzaamheden zien er als volgt uit: Het ontwikkelen van onze high-availability en high-performance backend; Je begint de dag rond 8:30

Bekijk vacature »

Back-end programmeur

Functieomschrijving Heb jij recent jouw HBO ICT diploma in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een erkende werkgever in regio Waalwijk zijn wij op zoek naar een back-end developer. Kennis of ervaring met C# & SQL is een must! Je houdt je bezig met het ontwikkelen van nieuwe functionaliteiten; Je bent verantwoordelijk voor de beheer en ontwikkeling van de software; Je draagt bij aan de implementatie van aanpassingen, verbeteringen en aanvullingen in de C# based applicaties; Je test de software en ontwikkelt deze door; Je brengt de aanpassingssuggesties van klanten in kaart, om ze

Bekijk vacature »

HBO startersfunctie .NET Ontwikkelaar

Functie omschrijving We are looking for a dutch native speaker Ben je in januari 2023 klaar met je HBO opleiding en zoek je een mooie uitdaging? Wacht niet langer en solliciteer direct! Voor een familiebedrijf in de regio van Boxtel ben ik op zoek naar een C#.NET Ontwikkelaar. Jij gaat aan de slag met de (door)ontwikkeling van de maatwerksoftware projecten en gaat ook nieuwe software bouwen, middels de Microsoft-stack. Het bedrijf maakt gebruik van de volgende technieken: C# & ASP.NET; MVC; MS SQL; Entity Framework; Je krijgt hier veel tijd om te leren en eventueel door te groeien en het

Bekijk vacature »

Software programmeur

Functieomschrijving Voor een erkende werkgever in de regio van Goes zijn wij op zoek naar een enthousiaste software programmeur met PHP/Symfony ervaring. Een gedreven persoon die het development team komt versterken met het aanpakken van complexe projecten. Ben jij op zoek naar een baan met veel uitdaging binnen een snelgroeiend e-commerce bedrijf, waar je de tijd en ruimte krijgt voor zowel professionele als persoonlijke groei? Lees dan snel verder! Dit ga je doen: Beheer en ontwikkeling van de serviceportal in Symfony en de webshops in de tweede versie van Magento; Testen en door ontwikkelen van software; Ontwikkelen van nieuwe functionaliteiten;

Bekijk vacature »

Senior developer (PHP en VB.NET)

Functie De development afdeling bestaat uit 2 teams. Het productteam (10 developers) is verantwoordelijk voor verschillende applicaties met als doel om zoveel mogelijk te automatiseren en uit te werken tot standaard software. Met diverse Solutions Architecten en ervaren developers denken ze voortdurend mee met hun klanten en bouwen ze de basis van het uiteindelijke maatwerk dat wordt geleverd. Hiernaast hebben ze een maatwerk/projectteam. Dit team bestaat momenteel uit 8 developers (junior tot senior) en is verantwoordelijk voor het maatwerk in hun klantprojecten. Momenteel zijn ze op zoek naar een senior developer die aan de slag gaat in het productteam. Hierin

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je hier

Bekijk vacature »

Software Programmeur PHP - JAVA

Functie Heb jij altijd al willen werken voor een bedrijf, dat veilige netwerkverbindingen levert, door middel van veilige oplossingen, die door middel van de nieuwste technologieën ontwikkelt zijn? Stop dan nu met zoeken! Voor een opdrachtgever in omgeving Moordrecht zijn wij op zoek naar een programmeur. Hoe kan jouw dag er straks uitzien? Je gaat software en webapplicaties ontwikkelen met behulp van de talen C / C++ / PHP. Je gaat technische klussen uitvoeren op locatie bij klanten. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een projecten goed verlopen. Je gaat klanten ondersteunen op

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

20/04/2024 12:42:13
 
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.