verwijderen uit database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Enzo

Enzo

05/06/2005 00:23:00
Quote Anchor link
Hoi allemaal,

ik heb een database en een php script die gegevens uit database haalt en allemaal onderelkaar weergeeft in een tabel.

Dat lukt allemaal wel. Maar nu wil ik het uitbereiden dat er in de laatste kolom knopjes komen achter elk record die dan die record verwijderd.

Dit is mij code;

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
include ("config.php");
?>

<table width="520" bordercolor="#333333">
<tr>
<td width="125" bgcolor="#66CCFF">Naam</td>
<td width="125" bgcolor="#66CCFF">Adres</td>
<td width="125" bgcolor="#66CCFF">Plaats</td>
<td width="125" bgcolor="#66CCFF">Land</td>
</tr>
</table>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?
$query
= "SELECT * FROM klanten";
$result = mysql_query($query);
$numrows = mysql_num_rows($result);
while($row = mysql_fetch_array($result))
{

?>

<table width="520" bordercolor="#333333">
<tr>
<td width="125" bgcolor="#CCCCCC">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$row[naam]"; ?>
</td>
<td width="125" bgcolor="#CCCCCC">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$row[adres]%"; ?>
</td>
<td width="125" bgcolor="#CCCCCC">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$row[plaats]"; ?>
</td>
<td width="125" bgcolor="#CCCCCC">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "$row[land]"; ?>
</td>
</tr>
</table>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
}
?>
 
PHP hulp

PHP hulp

07/01/2025 05:48:31
 
Enzo

Enzo

05/06/2005 12:41:00
Quote Anchor link
niemand?
 
Jelmer -

Jelmer -

05/06/2005 14:06:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
include ("config.php");
?>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
if(isset($_POST['actie'])){
    if($_POST['actie'] == 'verwijderen'){
        if(isset($_POST['selected'])){
            $queryarray = array();
            foreach($_POST['selected'] as $key => $value){
                $queryarray[] = 'id = '.$key;
            }

            $query = 'DELETE FROM klanten WHERE ';
            $query .= implode(" OR ", $queryarray);
            echo $query."\n";//voor het debuggen;
            if(mysql_query($query)){
                echo "Geselecteerde klanten zijn succesvol verwijdert.\n";
            }
        }
else{
            echo "geen regels geselecteerd";
        }
    }
}

?>

<form action="
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $_SERVER['PHP_SELF']; ?>
" method="POST">
<table width="520" bordercolor="#333333">
<tr>
<td width="125" bgcolor="#66CCFF">Naam</td>
<td width="125" bgcolor="#66CCFF">Adres</td>
<td width="125" bgcolor="#66CCFF">Plaats</td>
<td width="125" bgcolor="#66CCFF">Land</td>
<tr width="20" bgcolor="#66CCFF">&nbsp;</tr>
</tr>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?
$query
= "SELECT * FROM klanten";
$result = mysql_query($query);
$numrows = mysql_num_rows($result);
while($row = mysql_fetch_array($result))
{

?>

<tr>
<td width="125" bgcolor="#CCCCCC">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo $row['naam']; ?>
</td>
<td width="125" bgcolor="#CCCCCC">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo $row['adres']; ?>
</td>
<td width="125" bgcolor="#CCCCCC">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo $row['plaats']; ?>
</td>
<td width="125" bgcolor="#CCCCCC">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo $row['land']; ?>
</td>
<td width="20" bgcolor="#CCCCCC"><input type="checkbox" name="selected[
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo $row['id']; ?>
]"/></td>
</tr>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?
}
?>

<tr>
<td colspan="5">geselecteeden: <input type="submit" name="actie" value="verwijderen"/></td>
</tr>
</table>
</form>
 
Martijn B

Martijn B

05/06/2005 14:12:00
Quote Anchor link
Heel simpel eigenlijk je maar een script verwijderen.php of je zet het in dit script.

Als linkje maak je dan b.v.:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
script.php?verwijder=jan


en dan komt de code er ongeveer zo uit te zien:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
if( isset($_GET['verwijder']) ){

  $naam = addslashes($_GET['verwijder']);

  $query = "DELETE FROM klanten WHERE naam = '$naam'";
  mysql_query($query);
}

?>


Let wel op dat iedere jan lul nu dingen uit je database kan verwijderen. En de kolom naam moet uniek zijn binnen je tabel anders gooi je meer dan 1 record weg, dus beter is om op primary key te verwijderen want die is wel uniek.
Gewijzigd op 05/06/2005 14:15:00 door Martijn B
 
Jelmer -

Jelmer -

05/06/2005 14:24:00
Quote Anchor link
Mar met mijn script kun je meerderen tegelijk verwijderen ^^,

PS: je (Enzo) had een paar onnetheden erin. Je had variablen tussen haakjes, wat niet hoort, en al helemaal niet als je alleen een variable gaat echoën.
Je had bij je array (in de whileloop) de namen (keys), die een string zijn en dus tussen haakjes moeten, niet tussen haakjes.
En verder, je maakte voor iedere nieuwe regel een nieuwe tabel aan.
 
Martijn B

Martijn B

05/06/2005 14:40:00
Quote Anchor link
Die van jelmer is idd mooier alleen dat van mij is wat beter te begrijpen.
 
Jelmer -

Jelmer -

05/06/2005 14:45:00
Quote Anchor link
Correctie: sneller te begrijpen.
 
Enzo

Enzo

05/06/2005 16:52:00
Quote Anchor link
Bedankt jongens voor jullie hulp, ik ga het uitproberen
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.