meesturen post
ben er nu al 1,5 uur mee aan het knoeien maar het lukt niet.
In een andere file heb ik gewoon een select dat is een eitje, maar hier is dat niet dus dacht ik misschien aan een hidden field maar dat werkt dus niet...
code:
echo'<input type="hidden" id="'.$row['image_id'].'" name="image_id" value="'.$row['image_id'].'" />';
echo 'niet in gebruik, <input type="submit" value="activeer" name="image_id"><br/><br/>';
Gewijzigd op 24/02/2011 12:34:34 door Wouter bakker
Kan je iets duidelijker zijn ik volg je niet geheel?
dit komt er goed te staan (de button).
echter die $row['image_id'] moet dus meegestuurd worden als je op post drukt. maar dit lukt niet...
misschien verduidelijkt dit het:
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
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if($_POST['image_id']==''){
echo'voeg eerst een site en/of afbeelding toe of wacht tot uw site en/of afbeelding beoordeeld is';
}
else{
$sql = "SELECT * FROM `image` WHERE image_id='".$_POST['image_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_assoc($query);
$status=$row['activate_image'];
$image_id=$row['image_id'];
if($status==1){
mysql_query ("UPDATE image SET activate_image=0 WHERE image_id=$image_id");
echo 'afbeelding gedeactiveerd, u kunt hem ten alle tijde weer activeren';
}else{
mysql_query ("UPDATE image SET activate_image=1 WHERE image_id=$image_id");
echo 'afbeelding geactiveerd, u kunt hem ten alle tijde weer deactiveren';
}
}
}
?>
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if($_POST['image_id']==''){
echo'voeg eerst een site en/of afbeelding toe of wacht tot uw site en/of afbeelding beoordeeld is';
}
else{
$sql = "SELECT * FROM `image` WHERE image_id='".$_POST['image_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_assoc($query);
$status=$row['activate_image'];
$image_id=$row['image_id'];
if($status==1){
mysql_query ("UPDATE image SET activate_image=0 WHERE image_id=$image_id");
echo 'afbeelding gedeactiveerd, u kunt hem ten alle tijde weer activeren';
}else{
mysql_query ("UPDATE image SET activate_image=1 WHERE image_id=$image_id");
echo 'afbeelding geactiveerd, u kunt hem ten alle tijde weer deactiveren';
}
}
}
?>
is het zo duidelijk?
Gewijzigd op 24/02/2011 12:35:05 door wouter bakker
Als ik het goed heb, krijg je een tabel met meerdere records (image) te zien.
Moet je dan met checkboxes aanduiden welke images moeten aangepast worden of zo?
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<?php
include_once("connect.php");
include("htmltop.php");
require("safe_user.php");
ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if($_POST['image_id']==''){
echo'voeg eerst een site en/of afbeelding toe of wacht tot uw site en/of afbeelding beoordeeld is';
}
else{
$sql = "SELECT * FROM `image` WHERE image_id='".$_POST['image_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_assoc($query);
$status=$row['activate_image'];
$image_id=$row['image_id'];
if($status==1){
mysql_query ("UPDATE image SET activate_image=0 WHERE image_id=$image_id");
echo 'afbeelding gedeactiveerd, u kunt hem ten alle tijde weer activeren';
}else{
mysql_query ("UPDATE image SET activate_image=1 WHERE image_id=$image_id");
echo 'afbeelding geactiveerd, u kunt hem ten alle tijde weer deactiveren';
}
}
}
?>
<?php
$sql = "SELECT *
FROM site
WHERE user_id = '" . mysql_real_escape_string($_SESSION['user_id']) . "'
AND activate_site = 1";
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);
$sql2 = "SELECT *
FROM image
WHERE site_id =".$row['site_id']." AND admin_activate_banner=1";
$result2 = mysql_query($sql2);
if($result2)
{
echo '<form method="POST" action="imagemanagement.php">';
if (mysql_num_rows($result2)>0){
while ($row = mysql_fetch_assoc($result2))
{
echo '<img src="'.$row['image_url'].'" alt="'.$row['image_text'].'" border="0" width="468" height="60" /><br/><br/></a>';
if($row['activate_image']==1){
echo'<input type="hidden" id="'.$row['image_id'].'" name="image_id" value="'.$row['image_id'].'" />';
echo 'geactiveerd, <input type="submit" value="deactiveer" name="image_id"><br/><br/>';
}
elseif($row['activate_image']==0){
echo'<input type="hidden" id="'.$row['image_id'].'" name="image_id" value="'.$row['image_id'].'" />';
echo 'niet in gebruik, <input type="submit" value="activeer" name="image_id"><br/><br/>';
}
}
} else {
echo 'de site en/of afbeelding is/zijn nog niet geactiveerd';
}
echo '</form>';
}
else
{
echo 'Error';
}
?>
include_once("connect.php");
include("htmltop.php");
require("safe_user.php");
ini_set('display_errors', 'On');
error_reporting(E_ALL | E_STRICT);
if($_SERVER['REQUEST_METHOD'] == 'POST') {
if($_POST['image_id']==''){
echo'voeg eerst een site en/of afbeelding toe of wacht tot uw site en/of afbeelding beoordeeld is';
}
else{
$sql = "SELECT * FROM `image` WHERE image_id='".$_POST['image_id']."'";
$query = mysql_query($sql);
$row = mysql_fetch_assoc($query);
$status=$row['activate_image'];
$image_id=$row['image_id'];
if($status==1){
mysql_query ("UPDATE image SET activate_image=0 WHERE image_id=$image_id");
echo 'afbeelding gedeactiveerd, u kunt hem ten alle tijde weer activeren';
}else{
mysql_query ("UPDATE image SET activate_image=1 WHERE image_id=$image_id");
echo 'afbeelding geactiveerd, u kunt hem ten alle tijde weer deactiveren';
}
}
}
?>
<?php
$sql = "SELECT *
FROM site
WHERE user_id = '" . mysql_real_escape_string($_SESSION['user_id']) . "'
AND activate_site = 1";
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);
$sql2 = "SELECT *
FROM image
WHERE site_id =".$row['site_id']." AND admin_activate_banner=1";
$result2 = mysql_query($sql2);
if($result2)
{
echo '<form method="POST" action="imagemanagement.php">';
if (mysql_num_rows($result2)>0){
while ($row = mysql_fetch_assoc($result2))
{
echo '<img src="'.$row['image_url'].'" alt="'.$row['image_text'].'" border="0" width="468" height="60" /><br/><br/></a>';
if($row['activate_image']==1){
echo'<input type="hidden" id="'.$row['image_id'].'" name="image_id" value="'.$row['image_id'].'" />';
echo 'geactiveerd, <input type="submit" value="deactiveer" name="image_id"><br/><br/>';
}
elseif($row['activate_image']==0){
echo'<input type="hidden" id="'.$row['image_id'].'" name="image_id" value="'.$row['image_id'].'" />';
echo 'niet in gebruik, <input type="submit" value="activeer" name="image_id"><br/><br/>';
}
}
} else {
echo 'de site en/of afbeelding is/zijn nog niet geactiveerd';
}
echo '</form>';
}
else
{
echo 'Error';
}
?>
Quote:
echo'<input type="hidden" id="'.$row['image_id'].'" name="image_id" value="'.$row['image_id'].'" />';
echo 'niet in gebruik, <input type="submit" value="activeer" name="image_id"><br/><br/>';
echo 'niet in gebruik, <input type="submit" value="activeer" name="image_id"><br/><br/>';
Daar staat dus dit:
echo'<input ... name="image_id" />';
echo '... <input name="image_id"> ...';
Oftewel twee keer input met dezelfde naam.
Geeft op zijn minst veel verwarring.
Toevoeging op 24/02/2011 13:27:48:
mmm heb die submit name weg gehaald en het werkt! (alleen kan ik hem niet meer deactiveren... xD
maar deze fout is er dus uit? bedankt!
Toevoeging op 24/02/2011 13:30:15:
vreemd, als de status 0 is kan ik hem wel met een echo zien (dus display: 0), maar als hij 1 is zie ik niks...
Toevoeging op 24/02/2011 13:34:49:
en als je meerdere banners hebt laat hij er maar 1 zien... @!#%@#^T@Q (sorry wat frustraties xD)
Toevoeging op 24/02/2011 13:40:25:
ik denk dat hij alleen de 1e afbeelding pakt uit de database (dus een fout met de array's?) maar waar...
Kijk, het is simpel. Je hoort maar 1 submit knop te hebben per form.
Wil je 1 submit knop per image, dan moet je ook zien dat je 1 form hebt per image.
Met andere woorden, <form ...> en </form> moeten binnen de While lus.
Daarmee is je probleem waarschijnlijk al van zelf opgelost
zal ik proberen;)
Kris Peeters op 24/02/2011 15:11:20:
Met andere woorden, <form ...> en </form> moeten binnen de While lus.
En hoe weet je dan welk formulier wordt gesubmit?
mmm achter actie waar naartoe dus action="imagemanagement.php? die row?
- SanThe - op 24/02/2011 15:19:28:
En hoe weet je dan welk formulier wordt gesubmit?
Aan de waarde van de hidden input.
Volgens mij laat je plaatjes zien en door er op te klikken moet ie geactiveerd/gedeactiveerd worden. Dan zal je elk plaatje een unieke waarde moeten meegeven als value. Dit kan bijv. het id uit de database zijn. De update kan heel simpel door activated = 1 - activated te gebruiken. De status wordt zo altijd omgedraaid.
dus gewoon per afbeelding de image_id pakken... maar hoe moet je dat dan via een form doen... (of moet ik geen form gebruiken maar een get?)
Als het plaatje als een submit-knop werkt dan kan je het plaatje gewoon dat unieke id meegeven als value.
oke, zal ik proberen;)