verwijder record uit tabel werkt niet
met de onderstaande php code genereert de php code een tabel uit de database, ik heb het zo gemaakt dat
ie ook een knop (knop verwijderen) erbij zet. de bedoeling is nu dat als je op het knopje verwijderen
klikt, dat die bijbehorende record wordt verwijderd... alleen werkt dat dus niet,ik heb al van alles
geprobeerd, maar er gebeurd niet veel. heeft iemand een idee om dit op te lossen?
zie 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
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
<?
$host = "localhost";
$user = "";
$ww = "";
$db = "reserveringssysteem";
@mysql_connect("$host", "$user", "$ww") or die("Connectie met Database mislukt");
@mysql_select_db("$db") or die("Fout bij het selecteren van de database");
//$sqlout = "SELECT * FROM klant ORDER BY KL_id DESC"; nieuwste record bovenaan
$sqlout = "SELECT * FROM klant";
$query_naam = mysql_query($sqlout) or die(mysql_error());
//acties voor het verwijder knopje
if ($_POST['del'])
{
// mysql_select_db("reserveringssysteem");
$query= "DELETE FROM klant WHERE KL_id = '$del'";
mysql_query($query) or die(mysql_error());
}
/* else
{
if ($_POST['submit'])
echo "foutje?";
}*/
echo "<h2>overzicht klanten</h2> todo: knoppen verwijderen en bewerken werkend maken...";
echo("<table width=\"1250\" border=\"0\" cellspacing=\"2\" cellpadding=\"2\">\n");
$kleur_een = "#AAAAAA";
// kop van de tabel
echo "<tr bgcolor=\"" . $kleur_een . "\"><td>id</td>"."<td>voornaam</td>"."<td>achternaam</td>"."<td>adres</td>"."<td>postcode</td>"."<td>woonplaats</td>"."<td>rekening</td>"."<td>tel nr</td>"."<td>mobiel</td>"."<td>memo</td>"."<td>email</td>"."<td>bestaande rek?</td>"."<td>record verwijderen?</td>"."<td>klant bewerken?</td></tr>";
while($rij=mysql_fetch_array($query_naam)) {
//kleurtje om en om
if (!$kleur)
{
$kleur = "#DDDDDD";
}
else
{
//$kleur = "CCCCCC";
unset($kleur);
}
//geeft de records uit de database weer
echo("<tr bgcolor=\"" . $kleur . "\">\n<td>" . $rij[KL_id] . "</td>\n<td>" . $rij[KL_voornaam] . "</td>\n<td>" . $rij[KL_achternaam] . "</td>\n<td>" . $rij[KL_adres] . "</td>\n<td>" . $rij[KL_postcode ] ."</td>\n<td>" . $rij[KL_woonplaats] ."</td>\n<td>" . $rij[KL_rekening] ."</td>\n<td>" . $rij[KL_tel] ."</td>\n<td>" . $rij[KL_mobiel] ."</td>\n<td>" . $rij[KL_memo] ."</td>\n<td>" . $rij[KL_email] ."</td>\n<td>" . $rij[KL_bestaandrek] . "</td>\n<td>" . "<input type=\"submit\" name=\"del\" value=\"verwijderen?\">" . "</td>\n<td>" . "<input type=\"submit\" name=\"bewerken\" value=\"bewerken?\">");
}
//"<input type=\"button\" value=\"Verwijderen\" onclick=\"window.location.href='overzicht_klanten.php?del={$KL_id}';\" />" ."</td>\n</tr>\n"
echo("</table>\n");
?>
$host = "localhost";
$user = "";
$ww = "";
$db = "reserveringssysteem";
@mysql_connect("$host", "$user", "$ww") or die("Connectie met Database mislukt");
@mysql_select_db("$db") or die("Fout bij het selecteren van de database");
//$sqlout = "SELECT * FROM klant ORDER BY KL_id DESC"; nieuwste record bovenaan
$sqlout = "SELECT * FROM klant";
$query_naam = mysql_query($sqlout) or die(mysql_error());
//acties voor het verwijder knopje
if ($_POST['del'])
{
// mysql_select_db("reserveringssysteem");
$query= "DELETE FROM klant WHERE KL_id = '$del'";
mysql_query($query) or die(mysql_error());
}
/* else
{
if ($_POST['submit'])
echo "foutje?";
}*/
echo "<h2>overzicht klanten</h2> todo: knoppen verwijderen en bewerken werkend maken...";
echo("<table width=\"1250\" border=\"0\" cellspacing=\"2\" cellpadding=\"2\">\n");
$kleur_een = "#AAAAAA";
// kop van de tabel
echo "<tr bgcolor=\"" . $kleur_een . "\"><td>id</td>"."<td>voornaam</td>"."<td>achternaam</td>"."<td>adres</td>"."<td>postcode</td>"."<td>woonplaats</td>"."<td>rekening</td>"."<td>tel nr</td>"."<td>mobiel</td>"."<td>memo</td>"."<td>email</td>"."<td>bestaande rek?</td>"."<td>record verwijderen?</td>"."<td>klant bewerken?</td></tr>";
while($rij=mysql_fetch_array($query_naam)) {
//kleurtje om en om
if (!$kleur)
{
$kleur = "#DDDDDD";
}
else
{
//$kleur = "CCCCCC";
unset($kleur);
}
//geeft de records uit de database weer
echo("<tr bgcolor=\"" . $kleur . "\">\n<td>" . $rij[KL_id] . "</td>\n<td>" . $rij[KL_voornaam] . "</td>\n<td>" . $rij[KL_achternaam] . "</td>\n<td>" . $rij[KL_adres] . "</td>\n<td>" . $rij[KL_postcode ] ."</td>\n<td>" . $rij[KL_woonplaats] ."</td>\n<td>" . $rij[KL_rekening] ."</td>\n<td>" . $rij[KL_tel] ."</td>\n<td>" . $rij[KL_mobiel] ."</td>\n<td>" . $rij[KL_memo] ."</td>\n<td>" . $rij[KL_email] ."</td>\n<td>" . $rij[KL_bestaandrek] . "</td>\n<td>" . "<input type=\"submit\" name=\"del\" value=\"verwijderen?\">" . "</td>\n<td>" . "<input type=\"submit\" name=\"bewerken\" value=\"bewerken?\">");
}
//"<input type=\"button\" value=\"Verwijderen\" onclick=\"window.location.href='overzicht_klanten.php?del={$KL_id}';\" />" ."</td>\n</tr>\n"
echo("</table>\n");
?>
bvd dank
En waar komt $del vandaan en wat zit er in?
$del bestaat dus niet, moet je nog maken, of $_POST['del'] gebruiken in je query. (dat laatste raad ik af, met het huidige script, omdat er geen verdere controle op zit)
@SanThe
ik heb bij: geeft de records uit de database weer, dit staan <input type=\"submit\" name=\"del\" value=\"verwijderen?\"> maar dat bedoel je cker niet?
@Robert
sorry ik weet niet wat je bedoelt met $del bestaat dus niet, moet je nog maken...
ik ben maar een beginner met php en leer nog dagelijks dingen bij, dus alle hulp is welkom :)
ik wil alleen maar een werkende verwijder knopje...
greetz, David
$del komt dus uit het formulier. Als het formulier met 'post' wordt verzonden moet je $_POST['del'] gebruiken en anders een $_GET['del']
iemand idee?
mvg, David
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
if ($_POST['del'])
{
$query= "DELETE FROM klant WHERE KL_id = ". $_POST['del'] ."";
mysql_query($query) or die(mysql_error());
}
?>
if ($_POST['del'])
{
$query= "DELETE FROM klant WHERE KL_id = ". $_POST['del'] ."";
mysql_query($query) or die(mysql_error());
}
?>
Gewijzigd op 01/01/1970 01:00:00 door Benny Lava
begin nu te twijfelen of dit nu wel kan... ben nu al 3 volle dagen hier mee bezig om het werkend te krijgen...
ben nog steeds lerend (newbie), iemand een suggestie voor een andere constructie, of kan dit ook wel werkend worden?
Wat geeft die voor error?
geen error, hij doet gewoon niets...
Misschien handiger om geen formulier te maken, maar bij elk gegeven een <a href=.......?id=het_id_nummer_uit_de_database&actie=verwijderen>..</a>
Dan geef je in de url het id-nummer mee.
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
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
<?
$host = "localhost";
$user = "";
$ww = "";
$db = "reserveringssysteem";
@mysql_connect("$host", "$user", "$ww") or die("Connectie met Database mislukt");
@mysql_select_db("$db") or die("Fout bij het selecteren van de database");
//$sqlout = "SELECT * FROM klant ORDER BY KL_id DESC"; nieuwste record bovenaan
$sqlout = "SELECT * FROM klant";
$query_naam = mysql_query($sqlout) or die(mysql_error());
//acties voor het verwijder knopje
if ($_POST['del'])
{
$query= "DELETE FROM klant WHERE KL_id = ".$_POST['del'] ."";
mysql_query($query) or die(mysql_error());
}
echo "<h2>overzicht klanten</h2> todo: knoppen verwijderen en bewerken werkend maken...";
echo "<form method=\"POST\" name=\"formulier\" action=\"\">";
echo("<table width=\"1250\" border=\"0\" cellspacing=\"2\" cellpadding=\"2\">\n");
$kleur_een = "#AAAAAA";
// kop van de tabel
echo "<tr bgcolor=\"" . $kleur_een . "\"><td>id</td>"."<td>voornaam</td>"."<td>achternaam</td>"."<td>adres</td>"."<td>postcode</td>"."<td>woonplaats</td>"."<td>rekening</td>"."<td>tel nr</td>"."<td>mobiel</td>"."<td>memo</td>"."<td>email</td>"."<td>bestaande rek?</td>"."<td>record verwijderen?</td>"."<td>klant bewerken?</td></tr>";
while($rij=mysql_fetch_array($query_naam)) {
if (!$kleur)
{
$kleur = "#DDDDDD";
}
else
{
unset($kleur);
}
//geeft de records uit de database weer
echo("<tr bgcolor=\"" . $kleur . "\">\n<td>" . $rij['KL_id'] . "</td>\n<td>" . $rij['KL_voornaam'] . "</td>\n<td>" . $rij['KL_achternaam'] . "</td>\n<td>" . $rij['KL_adres'] . "</td>\n<td>" . $rij['KL_postcode'] ."</td>\n<td>" . $rij['KL_woonplaats'] ."</td>\n<td>" . $rij['KL_rekening'] ."</td>\n<td>" . $rij['KL_tel'] ."</td>\n<td>" . $rij['KL_mobiel'] ."</td>\n<td>" . $rij['KL_memo'] ."</td>\n<td>" . $rij['KL_email'] ."</td>\n<td>" . $rij['KL_bestaandrek'] . "</td>\n<td>" . "<input type=\"submit\" name=\"del\" value=\"verwijderen?\">" . "</td>\n<td>" . "<input type=\"submit\" name=\"bewerken\" value=\"bewerken?\">");
}
echo("</table>\n");
echo "</form>";
?>
$host = "localhost";
$user = "";
$ww = "";
$db = "reserveringssysteem";
@mysql_connect("$host", "$user", "$ww") or die("Connectie met Database mislukt");
@mysql_select_db("$db") or die("Fout bij het selecteren van de database");
//$sqlout = "SELECT * FROM klant ORDER BY KL_id DESC"; nieuwste record bovenaan
$sqlout = "SELECT * FROM klant";
$query_naam = mysql_query($sqlout) or die(mysql_error());
//acties voor het verwijder knopje
if ($_POST['del'])
{
$query= "DELETE FROM klant WHERE KL_id = ".$_POST['del'] ."";
mysql_query($query) or die(mysql_error());
}
echo "<h2>overzicht klanten</h2> todo: knoppen verwijderen en bewerken werkend maken...";
echo "<form method=\"POST\" name=\"formulier\" action=\"\">";
echo("<table width=\"1250\" border=\"0\" cellspacing=\"2\" cellpadding=\"2\">\n");
$kleur_een = "#AAAAAA";
// kop van de tabel
echo "<tr bgcolor=\"" . $kleur_een . "\"><td>id</td>"."<td>voornaam</td>"."<td>achternaam</td>"."<td>adres</td>"."<td>postcode</td>"."<td>woonplaats</td>"."<td>rekening</td>"."<td>tel nr</td>"."<td>mobiel</td>"."<td>memo</td>"."<td>email</td>"."<td>bestaande rek?</td>"."<td>record verwijderen?</td>"."<td>klant bewerken?</td></tr>";
while($rij=mysql_fetch_array($query_naam)) {
if (!$kleur)
{
$kleur = "#DDDDDD";
}
else
{
unset($kleur);
}
//geeft de records uit de database weer
echo("<tr bgcolor=\"" . $kleur . "\">\n<td>" . $rij['KL_id'] . "</td>\n<td>" . $rij['KL_voornaam'] . "</td>\n<td>" . $rij['KL_achternaam'] . "</td>\n<td>" . $rij['KL_adres'] . "</td>\n<td>" . $rij['KL_postcode'] ."</td>\n<td>" . $rij['KL_woonplaats'] ."</td>\n<td>" . $rij['KL_rekening'] ."</td>\n<td>" . $rij['KL_tel'] ."</td>\n<td>" . $rij['KL_mobiel'] ."</td>\n<td>" . $rij['KL_memo'] ."</td>\n<td>" . $rij['KL_email'] ."</td>\n<td>" . $rij['KL_bestaandrek'] . "</td>\n<td>" . "<input type=\"submit\" name=\"del\" value=\"verwijderen?\">" . "</td>\n<td>" . "<input type=\"submit\" name=\"bewerken\" value=\"bewerken?\">");
}
echo("</table>\n");
echo "</form>";
?>
werkt dit?
David:
Dan doe je blijkbaar niets aan foutafhandeling. En echo hier en daar eens even iets, dan weet je waar het script is gebleven in de if-else-structuren.geen error, hij doet gewoon niets...
Als het goed is moet de bovenste die ik net gepost heb werken.
Gewijzigd op 01/01/1970 01:00:00 door Benny Lava
Je geeft $_POST['del'] de waarde verwijderen? mee:
Je verwijderd de records met KL_id =verwijderen?
Dit werkt niet..
Probeer dit eens:
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
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
<?php
$host = "localhost";
$user = "";
$ww = "";
$db = "reserveringssysteem";
@mysql_connect($host, $user,$ww) or die("Connectie met Database mislukt");
@mysql_select_db($db) or die("Fout bij het selecteren van de database");
$sqlout = "SELECT * FROM klant ORDER BY KL_id DESC"; //nieuwste record bovenaan
$sqlout = "SELECT * FROM klant";
$query_naam = mysql_query($sqlout) or die(mysql_error());
if ($_GET['del'] && is_numeric($_GET['del'])){
$query= "DELETE FROM klant WHERE KL_id = '".$_GET['del']."'";
mysql_query($query) or die(mysql_error());
}
echo "<h2>Overzicht Klanten</h2>";
echo "<table width=\"1250\" border=\"0\" cellspacing=\"2\" cellpadding=\"2\">\n";
echo "\n<tr bgcolor=\"#AAAAAA\">
\n<td>id</td>
\n<td>voornaam</td>
\n<td>achternaam</td>
\n<td>adres</td>
\n<td>postcode</td>
\n<td>woonplaats</td>
\n<td>rekening</td>
\n<td>tel nr</td>
\n<td>mobiel</td>
\n<td>memo</td>
\n<td>email</td>
\n<td>bestaande rek?</td>
\n<td>record verwijderen?</td>
\n<td>klant bewerken?</td>
\n</tr>";
while($rij=mysql_fetch_array($query_naam)) {
if ($kleur == "#FFFFFF"){
$kleur = "#DDDDDD";
}else{
$kleur = "#FFFFFF";
}
echo "<tr bgcolor=\"" . $kleur . "\">
\n<td>" . $rij['KL_id'] . "</td>
\n<td>" . $rij['KL_voornaam'] . "</td>
\n<td>" . $rij['KL_achternaam'] . "</td>
\n<td>" . $rij['KL_adres'] . "</td>
\n<td>" . $rij['KL_postcode'] ."</td>
\n<td>" . $rij[']KL_woonplaats'] ."</td>
\n<td>" . $rij['KL_rekening'] ."</td>
\n<td>" . $rij['KL_tel'] ."</td>
\n<td>" . $rij['KL_mobiel'] ."</td>
\n<td>" . $rij['KL_memo'] ."</td>
\n<td>" . $rij['KL_email'] ."</td>
\n<td>" . $rij['KL_bestaandrek'] . "</td>
\n<td>" . "<a href=\"?del=" . $rij['KL_id'] . "\">Verwijderen?</a>" . "</td>
\n<td>" . "<input type=\"submit\" name=\"bewerken\" value=\"bewerken?\">";
}
echo "</table>\n";
?>
$host = "localhost";
$user = "";
$ww = "";
$db = "reserveringssysteem";
@mysql_connect($host, $user,$ww) or die("Connectie met Database mislukt");
@mysql_select_db($db) or die("Fout bij het selecteren van de database");
$sqlout = "SELECT * FROM klant ORDER BY KL_id DESC"; //nieuwste record bovenaan
$sqlout = "SELECT * FROM klant";
$query_naam = mysql_query($sqlout) or die(mysql_error());
if ($_GET['del'] && is_numeric($_GET['del'])){
$query= "DELETE FROM klant WHERE KL_id = '".$_GET['del']."'";
mysql_query($query) or die(mysql_error());
}
echo "<h2>Overzicht Klanten</h2>";
echo "<table width=\"1250\" border=\"0\" cellspacing=\"2\" cellpadding=\"2\">\n";
echo "\n<tr bgcolor=\"#AAAAAA\">
\n<td>id</td>
\n<td>voornaam</td>
\n<td>achternaam</td>
\n<td>adres</td>
\n<td>postcode</td>
\n<td>woonplaats</td>
\n<td>rekening</td>
\n<td>tel nr</td>
\n<td>mobiel</td>
\n<td>memo</td>
\n<td>email</td>
\n<td>bestaande rek?</td>
\n<td>record verwijderen?</td>
\n<td>klant bewerken?</td>
\n</tr>";
while($rij=mysql_fetch_array($query_naam)) {
if ($kleur == "#FFFFFF"){
$kleur = "#DDDDDD";
}else{
$kleur = "#FFFFFF";
}
echo "<tr bgcolor=\"" . $kleur . "\">
\n<td>" . $rij['KL_id'] . "</td>
\n<td>" . $rij['KL_voornaam'] . "</td>
\n<td>" . $rij['KL_achternaam'] . "</td>
\n<td>" . $rij['KL_adres'] . "</td>
\n<td>" . $rij['KL_postcode'] ."</td>
\n<td>" . $rij[']KL_woonplaats'] ."</td>
\n<td>" . $rij['KL_rekening'] ."</td>
\n<td>" . $rij['KL_tel'] ."</td>
\n<td>" . $rij['KL_mobiel'] ."</td>
\n<td>" . $rij['KL_memo'] ."</td>
\n<td>" . $rij['KL_email'] ."</td>
\n<td>" . $rij['KL_bestaandrek'] . "</td>
\n<td>" . "<a href=\"?del=" . $rij['KL_id'] . "\">Verwijderen?</a>" . "</td>
\n<td>" . "<input type=\"submit\" name=\"bewerken\" value=\"bewerken?\">";
}
echo "</table>\n";
?>
Gewijzigd op 01/01/1970 01:00:00 door Andries Louw Wolthuizen
dit werkt!!! hartstikke bedankt voor je moeite! (opluchting na 3 dagen niet slapen... :-) )
alleen vraag ik me nu af: wat heb ik precies fout gedaan, of wat ben ik vergeten?
mvg, David
Terwijl je natuurlijk een ID had mee moeten geven.
Om het nou niet al te moeilijk te maken, kun je beter een link maken, en deze de waarde ?del=$rij['KL_id'] meegeven, waarbij $rij['KL_id'] het id van het te verwijderen record is. Zo krijgt het script $_GET['del'] met de waarde van het te verwijderen record.
okay weer wat geleerd, thnx voor je hulp! en alle anderen natuurlijk!
mvg, David