Beste phpers,
Ik heb een tabel waar achter elke regel staat: EDIT|DELETE.
Klik ik hierop dan word ik doorgelinked naar een script. Eenmaal als ik op de EDIT|DELETE druk komt er in mijn URL balk het volgende:
http://localhost/Test/delete2.php?ID=26

Naar mijn kennis neemt de url het ID mee, in dit geval 26.( ik heb dus op DELETE gedrukt!)

Dit is Delete2.php( het script wat het ID 26 zou moeten verwijderen, misschien een raar script maar probeer het een beetje simpel te houden :P)

<?php
$username="root";
$password="";
$database="Verzameling";
$con=mysql_connect(localhost,$username,$password);
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db($database, $con);

$ID = $_POST['ID'];
$mysql_query =("DELETE * FROM cds WHERE ID='$ID'") or die ('Error Updating Data! <br />' .mysql_error());
printf("Records deleted: %d\n", mysql_affected_rows());
?>

Wat mijn probleem nou is is dat de localhost zegt RECORDS DELETED :1 maar als ik dan naar MYsql ga dan zie ik het ID nog steeds.
moet het niet $_GET['id'] zijn ipv van $_POST ?
$ID mag buiten quotes

kloppen alle DB namen?

[CODE]
<?php
$mysql_query =("DELETE * FROM cds WHERE ID=".$ID."")
?>
Als het ID een int is in de database dan moet je er geen aanhalingstekens omzetten (WHERE ID=$ID ipv WHERE ID='$ID'). En het is geen DELETE * FROM maar gewoon DELETE FROM.
ik zie nog een fout, waar voer je de qeury uit? ik zie nergens mysql_query staan ... alleen een variabele heet zo + het is handiger om met een ifje te werken
<?php
if(isset($_GET['ID'])){
if(!empty($_GET['id'])){
$sql = mysql_query("DELETE FROM cds WHERE id = '".msql_real_escape_string($_GET['id'])."'");
if(mysql_affected_rows($sql) > 0){
echo 'succesvol verwijderd';
}
}
}
?>

dat is een betere manier

ps: kunnen schrijffouten in zitten
Dankje Teun,
Hij doet het nu, maar kan iemand mij uitleggen,duidelijk maken waarom ie het niet met mij script deed?
is dit vanwage het IF?

Ohja nu ik toch bezig ben :P
Zou het mogelijk zijn om in dit script een soort warningbutton te maken, waar je JA of NEE kan kiezen als je het geselcteerde ID wil verwijderen. Jullie hoeven niet het script kant en klaar te geve maar een beetje op weg te helpen zou nice zijn!

nogmaals bedankt!
Jij had dit:
<?php
$mysql_query = ('DELETE bla bla')
?>
Teun had dit:
<?php
$sql = mysql_query('DELETE bla bla');
?>

bij jou was mysql_query geen functie maar een variabele.

(Ja Nee gedoe)
google op confirm javascript
bedankt man
kan eventueel ook nog anders
je kunt ook dit doen:
<?php
if($_SERVER['REQUEST_METHOD'] == 'POST'){
// hier je delete code
}
else{
echo '
weet je zeker dat je wilt verwijderen?
<form method="post">
<input type="submit" value="Ja">
<input type="button" onClick = "location.href= \'jeoverizhctpagina.php\'" value="nee">
</form>
';
}
?>

iets in die richting kan ook

ps: weet niet zeker of ik dat met die button goed heb geschreven
Waarom allemaal zo moeilijk?
Hier een oplossing...

<?php
// #########################################################################

function FilterText($str, $advanced=false) {
        if($advanced == true){ return mysql_real_escape_string($str); }
        $str = mysql_real_escape_string(htmlspecialchars($str));
        return $str;
}

// #########################################################################

if($_GET['cataid'] && $rank == "admin"){
$p_id = FilterText($_GET['paginaid']);
$c_id = FilterText($_GET['cataid']);
mysql_query("DELETE FROM cms WHERE pageid = '".$p_id."' LIMIT 1") or die(mysql_error());
$msg = "";
}

// #########################################################################

$getem = mysql_query("SELECT pageid,pagename FROM cms LIMIT 1") or die(mysql_error());
$check = mysql_num_rows($getem);

if($check < 1){
echo "Geen Pagina`s gevonden.";
} else {
if($rank == "admin"){ $delete = "BLABLA"; }
	while ($row = mysql_fetch_array($getem, MYSQL_NUM)) {
printf("<a href='index?page=%s'>%s</a> %s",$row[0],$row[1],$delete);
	}

// #########################################################################
?>

Teun Hesseling op 19/01/2011 15:08:08

<?php
if($_SERVER['REQEUST_METHOD'] == 'POST'){
?>


Blijft leuk zo'n typo: REQEUST

Reageren