Waarom laat de echo $id niet zien?
Wat doe ik fout????
mysql_select_db($database);
$relatie = $HTTP_POST_VARS['relatie'];
$naam = $HTTP_POST_VARS['naam'];
$id = $HTTP_POST_VARS['adres_ID'];
echo "$relatie $naam $id<br> ";
let op grote en kleine letters
Warom werk je niet met $_GET?
kan je even een groter deel van je script posten Joop?
Sebastiaan:
Dat is hem waarschijnlijk ja.
Warom werk je niet met $_GET?
Warom werk je niet met $_GET?
Omdat het een POST is misschien? :-P
Je bedoelt natuurlijk ook $_POST['...'];
....
mysql_select_db($database);
$relatie = $HTTP_POST_VARS['relatie'];
$naam = $HTTP_POST_VARS['naam'];
$id = $HTTP_POST_VARS['adres_ID'];
echo "$relatie $naam $id<br> "; // test
$sql = "UPDATE ........ SET relatie='$relatie', naam='$naam' WHERE adres_id = '$id'";
echo "$sql <br>"; //test
$result = mysql_query($sql);
.......
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
<?
mysql_select_db($database);
$relatie = $_POST['relatie'];
$naam = $_POST['naam'];
$id = $_POST['adres_ID'];
echo $relatie." ".$naam." ".$id."<br />"; // test
$sql = "UPDATE ........ SET relatie='".addslashes($relatie)."', naam='".addslashes($naam)."' WHERE adres_id = '".addslashes($id)."'";
echo $sql."<br />"; //test
$result = mysql_query($sql);
?>
mysql_select_db($database);
$relatie = $_POST['relatie'];
$naam = $_POST['naam'];
$id = $_POST['adres_ID'];
echo $relatie." ".$naam." ".$id."<br />"; // test
$sql = "UPDATE ........ SET relatie='".addslashes($relatie)."', naam='".addslashes($naam)."' WHERE adres_id = '".addslashes($id)."'";
echo $sql."<br />"; //test
$result = mysql_query($sql);
?>
Hint
- Vars buiten haakjes
- Gebruik addslashes() bij query's
- Gebruk superglobals
Post ook je formulier eens.
<h3>Bewerken</h3>
Code (php)
1
2
3
4
5
2
3
4
5
<?php
$relatie =$HTTP_GET_VARS['relatie'];
$naam = $HTTP_GET_VARS['naam'];
$id = $HTTP_GET_VARS['adres_ID'];
?>
$relatie =$HTTP_GET_VARS['relatie'];
$naam = $HTTP_GET_VARS['naam'];
$id = $HTTP_GET_VARS['adres_ID'];
?>
<form method="post" action="updaterecord.php" onsubmit=showsource()>
<input type="hidden" name="id" value="">
Relatie :<input type="Text" name="relatie" size=50 value=""><br>
Naam :<input type="Text" name="naam" size=50 value=""<br><br>
<input type="Submit" name="Bewaren" value="Bewaren">
</form>
In je frumlier staat id en jij vraagt adres_ID aan!
dat komt niet overeen met elkaar en geeft dus een foutmelding. In dit geval laat hij niets zien!
zoals ik al zei :)
name= <input type="text" name="adres_ID" value="">
Geen resultaat tot zover....
ik denk dat je ik je fout wel weet
maar het kijkt een beetje lastig met al die veranderingen hier weet ik niet precies hoe je script er nu uit ziet
name= <input type="text" name="adres_ID" value="">
doe:
name= <input type="text" name="adres_ID" value="">
ps:
Als je met kleine en grote letters werkt
let dan goed op met wat je doet...door een klein typ foutje kan je hele script al niet meer werken.
....................Script Bewerken (formulier)
<h3>Bewerken</h3>
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
$relatie = $HTTP_GET_VARS['relatie'];
$naam = $HTTP_GET_VARS['naam'];
$id = $HTTP_GET_VARS['adres_ID'];
?>
$relatie = $HTTP_GET_VARS['relatie'];
$naam = $HTTP_GET_VARS['naam'];
$id = $HTTP_GET_VARS['adres_ID'];
?>
<form method="post" action="updaterecord.php" onsubmit=showsource()>
<input type="text" name="adres_ID" value="">
Relatie :<input type="Text" name="relatie" size=50 value=""><br>
Naam :<input type="Text" name="naam" size=50 value=""<br><br>
<input type="Submit" name="Bewaren" value="Bewaren">
</form>
....................Script Update ..................
mysql_select_db($database);
$relatie = $HTTP_POST_VARS['relatie'];
$naam = $HTTP_POST_VARS['naam'];
$id = $HTTP_POST_VARS['adres_ID'];
echo "$relatie $naam $id<br> "; // test
$sql = "UPDATE mol_adressen SET relatie='$relatie', naam='$naam' WHERE adres_id = '$id'";
//$sql = "UPDATE mol_adressen SET relatie='".addslashes($relatie)."', naam='".addslashes($naam)."' WHERE adres_id = '".addslashes($id)."'";
echo "$sql <br>"; //test
$result = mysql_query($sql);
en waar heb je $sql als comment?
<input type="text" name="adres_ID" value="">
moet zijn:
<input type="text" name="adres_ID" value="">
HTTP_GET_VARS moet zijn $_GET
HTTP_POST_VARS moet zijn $_POST
(superglobals)
ga er anders eens wat over lezen.
Aangezien het een "post"-formulier is, moet $_POST worden gebruikt.
maar het $_GET was even voor de uitleg hoe het moet zijn als hij het later gaat gebruiken
Moeten we het maar vergeten, dat zou voor mij erg jammer zijn.
============
Ik echo sql slechts tijdelijk om de inhoud te zien.
De sql als comment staat dacht ik in het script.
Verder heb ik het volgende gelezen:
http://www.phphulp.nl/php/tutorials/2/139/
Hieronder de aangepaste scripts:
===================
<h3>Bewerken</h3>
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
$relatie = $_GET['relatie'];
$naam = $_GET['naam'];
$id = $_GET['adres_ID'];
?>
$relatie = $_GET['relatie'];
$naam = $_GET['naam'];
$id = $_GET['adres_ID'];
?>
<form method="post" action="updaterecord.php">
<input type="text" name="adres_ID" value="">
Relatie :<input type="Text" name="relatie" size=50 value=""><br>
Naam :<input type="Text" name="naam" size=50 value=""<br><br>
<input type="Submit" name="Bewaren" value="Bewaren">
</form>
=====================
/* Update */
...
mysql_select_db($database);
$relatie = $_POST['relatie'];
$naam = $_POST['naam'];
$id = $_POST['adres_ID'];
echo "$relatie $naam $id<br> "; // test
$sql = "UPDATE mol_adressen SET relatie='$relatie', naam='$naam' WHERE adres_id = '$id'";
//$sql = "UPDATE mol_adressen SET relatie='".addslashes($relatie)."', naam='".addslashes($naam)."' WHERE adres_id = '".addslashes($id)."'";
echo "$sql <br>"; //test
$result = mysql_query($sql);
....
=====================
$naam = $_GET['naam'];
$id = $_GET['adres_ID'];
haal dit weg in bewerken.php
ipv:
<form method="post" action="updaterecord.php">
<input type="text" name="adres_ID" value="">
Relatie :<input type="Text" name="relatie" size=50 value=""><br>
Naam :<input type="Text" name="naam" size=50 value=""<br><br>
<input type="Submit" name="Bewaren" value="Bewaren">
</form>
doe:
<form method="post" action="updaterecord.php">
<input type="text" name="adres_ID" value="">
Relatie :<input type="Text" name="relatie" size=50 value=""><br>
Naam :<input type="Text" name="naam" size=50 value=""<br><br>
<input type="Submit" name="Bewaren" value="Bewaren">
</form>
updaterecord.php
ipv:
mysql_select_db($database);
$relatie = $_POST['relatie'];
$naam = $_POST['naam'];
$id = $_POST['adres_ID'];
echo "$relatie $naam $id<br> "; // test
$sql = "UPDATE mol_adressen SET relatie='$relatie', naam='$naam' WHERE adres_id = '$id'";
//$sql = "UPDATE mol_adressen SET relatie='".addslashes($relatie)."', naam='".addslashes($naam)."' WHERE adres_id = '".addslashes($id)."'";
echo "$sql <br>"; //test
$result = mysql_query($sql);
....
doe:
mysql_select_db($database);
$relatie = $_POST['relatie'];
$naam = $_POST['naam'];
$id = $_POST['adres_ID'];
echo "$relatie $naam $adres_ID <br> "; // test
$sql = "UPDATE mol_adressen SET relatie='$relatie', naam='$naam' WHERE adres_id = '$adres_ID'";
echo "$sql <br>"; //test
$result = mysql_query($sql);
....
waar je echo $sql goed voor is weet ik nog steeds niet