INSERT IE/Firefox
Het gaat over de volgende code:
De pagina groepen_formulier.php
<CODE>
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
$waarde = ($_SESSION['gebruiker2']);
// deze sessie geeft een Id van de school mee
<form method="post" name="toevoegen" action="groepen_toevoegen.php">
<input name="naam" type="text">
<input name="school" type="hidden" value="<?php echo $waarde;?>">
</td><td>
<input type="submit" name="toevoegen" value="toevoegen">
</form>
En de pagina groepen_toevoegen.php
<CODE>
[code]<?php
$sql = "INSERT INTO groepen (naam, school) VALUES ('". $_POST['naam'] ."','". $_POST['school'] ."')";
$res = mysql_query($sql);
De naam die wordt ingevoerd wordt wel netjes in de database geplaatst, maar de school die in een hidden wordt meegestuurd niet.
In Firefox werkt het geheel perfect.
$waarde = ($_SESSION['gebruiker2']);
// deze sessie geeft een Id van de school mee
<form method="post" name="toevoegen" action="groepen_toevoegen.php">
<input name="naam" type="text">
<input name="school" type="hidden" value="<?php echo $waarde;?>">
</td><td>
<input type="submit" name="toevoegen" value="toevoegen">
</form>
En de pagina groepen_toevoegen.php
<CODE>
[code]<?php
$sql = "INSERT INTO groepen (naam, school) VALUES ('". $_POST['naam'] ."','". $_POST['school'] ."')";
$res = mysql_query($sql);
De naam die wordt ingevoerd wordt wel netjes in de database geplaatst, maar de school die in een hidden wordt meegestuurd niet.
In Firefox werkt het geheel perfect.
Gewijzigd op 01/01/1970 01:00:00 door Frank
Ik zie geen session_start().
De pagina groepen_formulier.php
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
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
<?php include('dbconnect.php');
if($_SESSION['gebruiker2'] != ''){
header("Location: inlog.php");
}
else{
session_start();
?>
<body bgcolor="#FFFFCC">
<table style="font-family:Tahoma;">
<tr>
<td width="200" valign="top">
<?php include("home_admin.php"); ?>
</td>
<td valign="top">
<?php
echo ("<table bgcolor=#FFEE99 align=center>
<tr>
<td><b>groepsnaam</b></td>
<td><b>toevoegen / verwijder</b></td>
</tr>
");
$waarde = ($_SESSION['gebruiker2']);
$sql = "select * from groepen where $waarde = groepen.school";
$res = mysql_query($sql);
while ($row = mysql_fetch_array($res)) {
echo ("
<tr>
<td>". $row['naam'] ."</td>
<td>"); ?>
<form method="post" name="verwijder" action="groepen_verwijder_admin.php">
<input name="Id" type="hidden" value="<?php echo $row['Id'];?>">
<input name="school" type="hidden" value="<?php echo $waarde;?>">
<input type="submit" value="verwijder" name="bevestig">
</form>
<?php echo ("
</td>
</tr>
");}
?>
<tr>
<td>
<form method="post" name="toevoegen" action="groepen_toevoegen.php">
<input name="naam" type="text">
<input name="school" type="hidden" value="<?php echo $waarde;?>">
</td><td>
<input type="submit" name="toevoegen" value="toevoegen">
</form>
</td>
</tr>
<br>
</td>
</tr>
</table>
</body>
</html>
<?php } ?>
if($_SESSION['gebruiker2'] != ''){
header("Location: inlog.php");
}
else{
session_start();
?>
<body bgcolor="#FFFFCC">
<table style="font-family:Tahoma;">
<tr>
<td width="200" valign="top">
<?php include("home_admin.php"); ?>
</td>
<td valign="top">
<?php
echo ("<table bgcolor=#FFEE99 align=center>
<tr>
<td><b>groepsnaam</b></td>
<td><b>toevoegen / verwijder</b></td>
</tr>
");
$waarde = ($_SESSION['gebruiker2']);
$sql = "select * from groepen where $waarde = groepen.school";
$res = mysql_query($sql);
while ($row = mysql_fetch_array($res)) {
echo ("
<tr>
<td>". $row['naam'] ."</td>
<td>"); ?>
<form method="post" name="verwijder" action="groepen_verwijder_admin.php">
<input name="Id" type="hidden" value="<?php echo $row['Id'];?>">
<input name="school" type="hidden" value="<?php echo $waarde;?>">
<input type="submit" value="verwijder" name="bevestig">
</form>
<?php echo ("
</td>
</tr>
");}
?>
<tr>
<td>
<form method="post" name="toevoegen" action="groepen_toevoegen.php">
<input name="naam" type="text">
<input name="school" type="hidden" value="<?php echo $waarde;?>">
</td><td>
<input type="submit" name="toevoegen" value="toevoegen">
</form>
</td>
</tr>
<br>
</td>
</tr>
</table>
</body>
</html>
<?php } ?>
En de pagina groepen_toevoegen.php
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php include('dbconnect.php'); ?>
<?php
if($_SESSION['username'] != ''){
header("Location: inlog.php");
}
else{
session_start();
if($_SESSION['username'] != 'cgn'){
header("Location: inlog.php");
}
else{ ?>
<?php
$sql = "INSERT INTO groepen (naam, school) VALUES ('". $_POST['naam'] ."','". $_POST['school'] ."')";
$res = mysql_query($sql);
echo ("uw gegevens zijn toegevoegd, u wordt automatich doorgelinkt.");
echo ('<META HTTP-EQUIV=Refresh CONTENT="2; URL=groepen_formulier.php">');
?>
<?php }} ?>
<?php
if($_SESSION['username'] != ''){
header("Location: inlog.php");
}
else{
session_start();
if($_SESSION['username'] != 'cgn'){
header("Location: inlog.php");
}
else{ ?>
<?php
$sql = "INSERT INTO groepen (naam, school) VALUES ('". $_POST['naam'] ."','". $_POST['school'] ."')";
$res = mysql_query($sql);
echo ("uw gegevens zijn toegevoegd, u wordt automatich doorgelinkt.");
echo ('<META HTTP-EQUIV=Refresh CONTENT="2; URL=groepen_formulier.php">');
?>
<?php }} ?>
Gewijzigd op 01/01/1970 01:00:00 door Frank
Frank zet je script even tussen en tags, dan is het wat handiger.
header("Location: inlog.php");
}
else{
session_start();
Dit is onmogelijk. Eerst kijken wat er in de session staat en daarna eventueel de session starten.
Gewijzigd op 01/01/1970 01:00:00 door Frank
Heeft niemand verder ooit zo'n probleem gehad?
Code (php)
1
2
3
4
5
6
2
3
4
5
6
<form method="post" name="toevoegen" action="groepen_toevoegen.php">
<input name="naam" type="text">
<input name="school" type="hidden" value="<?php echo $waarde;?>">
</td><td>
<input type="submit" name="toevoegen" value="toevoegen">
</form>
<input name="naam" type="text">
<input name="school" type="hidden" value="<?php echo $waarde;?>">
</td><td>
<input type="submit" name="toevoegen" value="toevoegen">
</form>
Het hidden veldje wil die niet meesturen in IE, maar wel in firefox. Als ik dit verander in text werkt het wel, maar ik wil die waarde niet op het scherm.
Iemand suggesties?
Gewijzigd op 01/01/1970 01:00:00 door Frank
SanThe heeft gelijk. Niet negeren dus.
de gebruiker cgn heeft andere rechten, en andere pagina's als een gewone gebruiker, daarom heb ik dat zo gedaan, en dat werkt perfect. Niet ingelogde gebruikers komen gewoon niet op de website.
Maar niemand een oplossing voor mijn probleem ?
Dat hij de veld NIET meestuurd in een hidden met IE en WEL met Firefox.
En met een text-veld in een formulier heb ik nergens problemen mee.
Wat is de reden dat de hidden niet mee wordt gestuurd in IE.
De naam (text) wordt wel meegestuurd, dus met de sessie is niets aan de hand.
Code (php)
1
2
2
$sql = "INSERT INTO groepen (naam, school) VALUES ('". $_POST['naam'] ."','". $_POST['school'] ."')";
$res = mysql_query($sql);
$res = mysql_query($sql);
Deze query was verkeerd, met de POST school stuur ik een integer mee, dus zijn die backticks niet toegestaan!
stomme fout
Gewijzigd op 01/01/1970 01:00:00 door Frank