rijen deleten
Louis Deconinck op 03/08/2012 15:01:18:
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.
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.
Dus het saldo is afhankelijk van de gebruiker. Nu loop je met de while door alle posities heen en houd dus totaal geen rekening met de gebruiker van wie die positie is. Ik neem aan dat de saldo ophoging niet voor elke gebruiker hetzelfde is, maar afhankelijk is van zijn persoonlijke posities. Dat zal je er dus nog wel in moeten verwerken.
Gewijzigd op 03/08/2012 15:48:57 door Erwin H
Wat dus waarschijnlijk betekend dat de fout zich op rij 16 bevind.
nieuwe code:
Code (php)
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
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
<?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());
$topbrengst=0;
while ($posities = mysql_fetch_assoc($posities_get)) {
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;
output("Elke positie heeft €".$_POST['inkpos']." verdiend, dat is dus een totaal van €$totaalbetaald.");
}
?>
<form action="" method="post">
Inkomsten per positie: €<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.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());
$topbrengst=0;
while ($posities = mysql_fetch_assoc($posities_get)) {
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;
output("Elke positie heeft €".$_POST['inkpos']." verdiend, dat is dus een totaal van €$totaalbetaald.");
}
?>
<form action="" method="post">
Inkomsten per positie: €<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.php");
?>
Gewijzigd op 03/08/2012 16:13:55 door Erwin H
Toevoeging op 03/08/2012 16:20:14:
Ok, heel erg bedankt Erwin nu werkt alles naar behoren:
Code (php)
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
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
<?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());
$topbrengst=0;
while ($posities = mysql_fetch_assoc($posities_get)) {
if ($posities['opbrengst'] + $_POST['inkpos'] > 15) {
$teveel=15-$posities['opbrengst'];
$topbrengst=$teveel+$topbrengst;
$inv5=mysql_query("UPDATE geld SET saldo = $teveel + saldo WHERE id = '".$posities['gebrid']."'");
$inv6=mysql_query("UPDATE geld SET totaal = $teveel + totaal WHERE id = '".$posities['gebrid']."'");
$inv4=mysql_query("DELETE FROM posities 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;
output("Elke positie heeft €".$_POST['inkpos']." verdiend, dat is dus een totaal van €$totaalbetaald.");
}
?>
<form action="" method="post">
Inkomsten per positie: €<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.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());
$topbrengst=0;
while ($posities = mysql_fetch_assoc($posities_get)) {
if ($posities['opbrengst'] + $_POST['inkpos'] > 15) {
$teveel=15-$posities['opbrengst'];
$topbrengst=$teveel+$topbrengst;
$inv5=mysql_query("UPDATE geld SET saldo = $teveel + saldo WHERE id = '".$posities['gebrid']."'");
$inv6=mysql_query("UPDATE geld SET totaal = $teveel + totaal WHERE id = '".$posities['gebrid']."'");
$inv4=mysql_query("DELETE FROM posities 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;
output("Elke positie heeft €".$_POST['inkpos']." verdiend, dat is dus een totaal van €$totaalbetaald.");
}
?>
<form action="" method="post">
Inkomsten per positie: €<input type="text" name="inkpos" />
<input type="submit" value="Bevestig" name="bevestig" />
</form>
<?php
}
include("footer.php");
?>
Gewijzigd op 03/08/2012 16:16:36 door Louis Deconinck
Variabelen buiten quotes in je querys ($teveel, $aantalposities)
if (isset($_POST['bevestig'])) is een verkeerde manier om te controleren of een formulier verzonden is.
Louis Deconinck op 03/08/2012 16:14:05:
Ok, heel erg bedankt Erwin nu werkt alles naar behoren:
Klinkt misschien lullig, maar ik geloof er helemaal niets van.... heb je het al geprobeerd met meerdere gebruikers?
Toevoeging op 03/08/2012 17:03:02:
En dat is nog los van de ongelooflijk ineffeciente manier. Als ik het zo bekijk voer je 3 queries uit PER POSITIE! Als je dus zometeen 10 gebruikers hebt met ieder 10 posities voer je 300 queries uit! Heb je enig idee hoeveel tijd dat gaat kosten?