Muntjes geven script [HELP]
hier is de 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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
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
44
45
46
47
48
49
50
51
<style type="text/css">
<!--
.style3 {font-family: Verdana; font-size: 10px; }
-->
</style>
<?php include('config.php'); ?>
<form name="form1" method="post" action="?p=pagina/bank">
<table width="398" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="78"> </td>
<td width="276"> </td>
</tr>
<tr>
<td height="37"><span class="style3">Aan wie ? </span></td>
<td><select name="naam" id="naam">
<?php $sql = mysql_query("SELECT gebruikersnaam,member_id FROM leden ORDER BY gebruikersnaam ASC");
while($row = mysql_fetch_assoc($sql)) {
echo "<option value=\"".$row['member_id']."\">".$row['gebruikersnaam']."</option>";
}
?>
</select></td>
</tr>
<tr>
<td><span class="style3">Hoeveel</span></td>
<td>
<input name="hoeveel" type="text" id="hoeveel">
</td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td>
<input type="submit" name="Submit2" value="Verstuur muntjes !">
</td>
</tr>
</table>
</form>
<?
$query = "SELECT gebruikersnaam FROM leden";
$result = mysql_query($query);
if($_POST['submit'])
{
mysql_query("UPDATE muntjes SET aantal=aantal+'".$_POST['hoeveel']."' WHERE from_id='".$_POST['member_id']."'");
mysql_query("UPDATE muntjes SET aantal=aantal-'".$_POST['hoeveel']."' WHERE from_id='".$_SESSION['ID']."'");
echo ("Je hebt zojuist <strong>'".$_POST['hoeveel']."'</strong> Muntjes op het account van <strong>'".$_POST['member_id']."'</strong> gestort !.");
}
?>
<!--
.style3 {font-family: Verdana; font-size: 10px; }
-->
</style>
<?php include('config.php'); ?>
<form name="form1" method="post" action="?p=pagina/bank">
<table width="398" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="78"> </td>
<td width="276"> </td>
</tr>
<tr>
<td height="37"><span class="style3">Aan wie ? </span></td>
<td><select name="naam" id="naam">
<?php $sql = mysql_query("SELECT gebruikersnaam,member_id FROM leden ORDER BY gebruikersnaam ASC");
while($row = mysql_fetch_assoc($sql)) {
echo "<option value=\"".$row['member_id']."\">".$row['gebruikersnaam']."</option>";
}
?>
</select></td>
</tr>
<tr>
<td><span class="style3">Hoeveel</span></td>
<td>
<input name="hoeveel" type="text" id="hoeveel">
</td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td>
<input type="submit" name="Submit2" value="Verstuur muntjes !">
</td>
</tr>
</table>
</form>
<?
$query = "SELECT gebruikersnaam FROM leden";
$result = mysql_query($query);
if($_POST['submit'])
{
mysql_query("UPDATE muntjes SET aantal=aantal+'".$_POST['hoeveel']."' WHERE from_id='".$_POST['member_id']."'");
mysql_query("UPDATE muntjes SET aantal=aantal-'".$_POST['hoeveel']."' WHERE from_id='".$_SESSION['ID']."'");
echo ("Je hebt zojuist <strong>'".$_POST['hoeveel']."'</strong> Muntjes op het account van <strong>'".$_POST['member_id']."'</strong> gestort !.");
}
?>
Wie kan me helpen
Wat gebeurt er niet, wat jij had verwacht?
hij voegt de muntjes niet toe aan de database alles is wel goed ingestelt
Dus:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
if($_POST['submit'])
{
mysql_query("UPDATE muntjes SET aantal=aantal+".$_POST['hoeveel']." WHERE from_id='".$_POST['member_id']."'");
mysql_query("UPDATE muntjes SET aantal=aantal-".$_POST['hoeveel']." WHERE from_id='".$_SESSION['ID']."'");
}
?>
if($_POST['submit'])
{
mysql_query("UPDATE muntjes SET aantal=aantal+".$_POST['hoeveel']." WHERE from_id='".$_POST['member_id']."'");
mysql_query("UPDATE muntjes SET aantal=aantal-".$_POST['hoeveel']." WHERE from_id='".$_SESSION['ID']."'");
}
?>
Ik zou overigens checken of de query überhaupt wel true teruggeeft, en bij false mysql_error() afvangen ;).
Edit: Wooooooo! Nu ik je script nog eens check; je controleert nergens of er überhaupt wel een form verzonden is?! $_POST['submit'] mag er dan wel zijn, maar dan? Dat is geen correcte manier van het controleren of er gesubmit is.
is een goede manier.
Daarna hoor je nog te controleren of de verplichte velden zijn ingevuld/niet leeg zijn.
Gewijzigd op 01/01/1970 01:00:00 door Jesper Diovo
mysql_real_escape_string in je queries!
Behalve dat je - zoals al gezegd- iets aan foutafhandeling van je mysql queries moet doen, moet je ook nodig een gebruik maken van Zet error_reporting eens aan en maak foutafhandeling bij de query's.
hij zegt dat DB368568.muntjes niet bestaat maar daar moet ie niet in zoeken
Dan zit er iets fout in je config.php...
Code (php)
1
2
2
mysql_query("UPDATE muntjes SET aantal=aantal+".$_POST['hoeveel']." WHERE from_gebruikersnaam='".$_POST['gebruikersnaam']."'")or die(mysql_error());
mysql_query("UPDATE muntjes FROM leden SET aantal=aantal-".$_POST['hoeveel']." WHERE from_id='".$_SESSION['ID']."'")or die(mysql_error());
mysql_query("UPDATE muntjes FROM leden SET aantal=aantal-".$_POST['hoeveel']." WHERE from_id='".$_SESSION['ID']."'")or die(mysql_error());
hij zegt dat omdat muntjes in de tabel leden staat maar als ik erbij zet FROM leden dan geeft hij weer een error
Edit: UPDATE tabelnaam SET veldnaam = '....' WHERE veldnaam = '....'
Gewijzigd op 01/01/1970 01:00:00 door - SanThe -
maar hoe weer hij dan dat ie in de tabel leden moet zoeken hij moet de muntjes uit de tabel leden hebben
UPDATE leden SET muntjes = muntjes + ...... WHERE ....
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
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
44
45
46
47
48
49
50
51
52
<style type="text/css">
<!--
.style3 {font-family: Verdana; font-size: 10px; }
-->
</style>
<?php include('config.php'); ?>
<form name="form1" method="post" action="?p=pagina/bank">
<table width="398" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="78"> </td>
<td width="276"> </td>
</tr>
<tr>
<td height="37"><span class="style3">Aan wie ? </span></td>
<td><select name="naam" id="naam">
<?php $sql = mysql_query("SELECT gebruikersnaam,member_id FROM leden ORDER BY gebruikersnaam ASC");
while($row = mysql_fetch_assoc($sql)) {
echo "<option value=\"".$row['member_id']."\">".$row['gebruikersnaam']."</option>";
}
?>
</select></td>
</tr>
<tr>
<td><span class="style3">Hoeveel</span></td>
<td>
<input name="hoeveel" type="text" id="hoeveel">
</td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td>
<input type="submit" name="Submit2" value="Verstuur muntjes !">
</td>
</tr>
</table>
</form>
<?
$query = "SELECT muntjes FROM leden";
$result = mysql_query($query);
if($_SERVER['REQUEST_METHOD'] == "POST")
{
mysql_query("UPDATE leden SET muntjes=muntjes+".$_POST['hoeveel']." WHERE member_id='".$_POST['member_id']."'")or die(mysql_error());
mysql_query("UPDATE leden SET muntjes=muntjes-".$_POST['hoeveel']." WHERE member_id='".$_SESSION['ID']."'")or die(mysql_error());
echo ("Je hebt zojuist <strong>'".$_POST['hoeveel']."'</strong> Muntjes op het account van <strong>'".$_POST['gebruikersnaam']."'</strong> gestort !.");
}
?>
<!--
.style3 {font-family: Verdana; font-size: 10px; }
-->
</style>
<?php include('config.php'); ?>
<form name="form1" method="post" action="?p=pagina/bank">
<table width="398" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="78"> </td>
<td width="276"> </td>
</tr>
<tr>
<td height="37"><span class="style3">Aan wie ? </span></td>
<td><select name="naam" id="naam">
<?php $sql = mysql_query("SELECT gebruikersnaam,member_id FROM leden ORDER BY gebruikersnaam ASC");
while($row = mysql_fetch_assoc($sql)) {
echo "<option value=\"".$row['member_id']."\">".$row['gebruikersnaam']."</option>";
}
?>
</select></td>
</tr>
<tr>
<td><span class="style3">Hoeveel</span></td>
<td>
<input name="hoeveel" type="text" id="hoeveel">
</td>
</tr>
<tr>
<td> </td>
<td> </td>
</tr>
<tr>
<td> </td>
<td>
<input type="submit" name="Submit2" value="Verstuur muntjes !">
</td>
</tr>
</table>
</form>
<?
$query = "SELECT muntjes FROM leden";
$result = mysql_query($query);
if($_SERVER['REQUEST_METHOD'] == "POST")
{
mysql_query("UPDATE leden SET muntjes=muntjes+".$_POST['hoeveel']." WHERE member_id='".$_POST['member_id']."'")or die(mysql_error());
mysql_query("UPDATE leden SET muntjes=muntjes-".$_POST['hoeveel']." WHERE member_id='".$_SESSION['ID']."'")or die(mysql_error());
echo ("Je hebt zojuist <strong>'".$_POST['hoeveel']."'</strong> Muntjes op het account van <strong>'".$_POST['gebruikersnaam']."'</strong> gestort !.");
}
?>
Hij wil het maar niet uitvoeren ik krijg nu in iedergeval geen error meer alleen de query word niet geupdate
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?
$query = "SELECT muntjes FROM leden";
$result = mysql_query($query);
if($_SERVER['REQUEST_METHOD'] == "POST")
$aantal = mysql_real_escape_string(substr($_POST['aantal'],0,10));
$member_id = mysql_real_escape_string($_POST['member_id']);
mysql_query("UPDATE leden SET muntjes = muntjes + ".$aantal." WHERE member_id='".$member_id."'");
$aantal2 = mysql_real_escape_string(substr($_POST['aantal'],0,10));
$member_id2 = mysql_real_escape_string($_SESSION['ID']);
mysql_query("UPDATE leden SET muntjes= muntjes - ".$aantal2." WHERE member_id='".$member_id2."'");
echo ("Je hebt zojuist <strong>'".$_POST['hoeveel']."'</strong> Muntjes op het account van <strong>'".$_POST['naam']."'</strong> gestort !.");
mysql_affected_rows()
?>
$query = "SELECT muntjes FROM leden";
$result = mysql_query($query);
if($_SERVER['REQUEST_METHOD'] == "POST")
$aantal = mysql_real_escape_string(substr($_POST['aantal'],0,10));
$member_id = mysql_real_escape_string($_POST['member_id']);
mysql_query("UPDATE leden SET muntjes = muntjes + ".$aantal." WHERE member_id='".$member_id."'");
$aantal2 = mysql_real_escape_string(substr($_POST['aantal'],0,10));
$member_id2 = mysql_real_escape_string($_SESSION['ID']);
mysql_query("UPDATE leden SET muntjes= muntjes - ".$aantal2." WHERE member_id='".$member_id2."'");
echo ("Je hebt zojuist <strong>'".$_POST['hoeveel']."'</strong> Muntjes op het account van <strong>'".$_POST['naam']."'</strong> gestort !.");
mysql_affected_rows()
?>
deze doet het dus ook niet
Gewijzigd op 01/01/1970 01:00:00 door Roy
Quote:
die mysql_affected_rows() die zegt niks
Als jij programmeert dat ie niets moet zeggen dan klopt dit.
Ofwel je bent echo vergeten op regel 13.
edit:
Je kunt trouwens dit:
Code (php)
1
2
3
4
2
3
4
<?php
$member_id = mysql_real_escape_string($_POST['member_id']);
mysql_query("UPDATE leden SET muntjes = muntjes + ".$aantal." WHERE member_id='".$member_id."'");
?>
$member_id = mysql_real_escape_string($_POST['member_id']);
mysql_query("UPDATE leden SET muntjes = muntjes + ".$aantal." WHERE member_id='".$member_id."'");
?>
ook vervangen door:
Code (php)
1
2
3
2
3
<?php
mysql_query("UPDATE leden SET muntjes = muntjes + ".$aantal." WHERE member_id=" . (int)$_POST['member_id']);
?>
mysql_query("UPDATE leden SET muntjes = muntjes + ".$aantal." WHERE member_id=" . (int)$_POST['member_id']);
?>
Gewijzigd op 01/01/1970 01:00:00 door Martijn B
maar hij wilt het maar niet uitvoeren
echo 'Er zijn ' . mysql_affected_rows() . ' records bijgewerkt.';
hij blijft op 0 staan
Dan zullen er geen records worden gevonden die aan de WHERE voldoen.
Code (php)
1
2
3
2
3
<?php
mysql_query("UPDATE leden SET muntjes = muntjes +".$_POST[aantal]." WHERE member_id =".$_POST[naam]."");
?>
mysql_query("UPDATE leden SET muntjes = muntjes +".$_POST[aantal]." WHERE member_id =".$_POST[naam]."");
?>
maar nu moeten ze er nog af van diegene de het stuurt en die doet het nou net weer niet
Code (php)
1
2
3
2
3
<?php
mysql_query("UPDATE leden SET muntjes = muntjes -".$_POST[aantal]." WHERE member_id =".$_SESSION[ID]."");
?>
mysql_query("UPDATE leden SET muntjes = muntjes -".$_POST[aantal]." WHERE member_id =".$_SESSION[ID]."");
?>