Neden bu bütün kaydı silmek için çalışmalarını silmez:
$query = 'DELETE FROM tblEvents WHERE index = $_GET["id"]';
$result = mysql_query($query, $db) or die(mysql_error($db));
Nerede indeks MySQL auto_incremented, int türünde bir değişkendir?
Your question php is related, not mysql.
print $query;
and see.
then refer to php strings syntax, http://php.net/types.string for the proper syntax.
Ayrıca, sorguya gider bir değişken, düzgün hazırlanmış olmalı, kaçtı, ya da, bir tamsayı değeri durumunda, elle bu tip döküm
$id=intval($_GET["id"]);
ya da, bu tek satır yapmak için,
$query = 'DELETE FROM tblEvents WHERE `index` = '.intval($_GET["id"]);
Ayrıca, indeks, sen ters tırnakların ile kaçabilir, çok sorunlara neden olabilir ayrılmış kelime
`index`
Eğer sadece id
yeniden adlandırırsanız, ama çok daha iyi olacak
Umarım zaten bunu biliyorum, ama insanlar SQL Injection yapamaz böylece $_GET['id']
güvenli gerekir. Yerine aşağıdaki kullanmayı deneyin:
$query = sprintf('DELETE FROM tblEvents WHERE index = %d',mysql_real_escape_string($_GET['id']));
Bu da tek tırnak yerine çift tırnak içinde bir değişken kullanmak sorunu çözer.
İsterseniz siz de yapabilirsiniz:
$id = mysql_real_escape_string($_GET['id']);
$query = "DELETE FROM tblEvents WHERE index = {$id}";
Bu da çalışır.