Rediger og slette ting fra en database

Tags:    php

Jeg har følgende kode:
Fold kodeboks ind/udKode 

Det er lige meget hvilken en af form knapperne jeg trykker på, så sletter den bare, det er som om den ikke forstår action=opdater. Jeg forstår det ikke... :(



1 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Det skyldes en "teknik" du bruger gennemgående i din kode.

Eksempel:

$slet = mysql_query("DELETE from nyheder WHERE id = $id");
if ($_GET['action'] == 'slet') { mysql_query("DELETE from nyheder WHERE id = $_GET[id]"); }

Betyder:

Slet fra nyheder hvor id er lig $id
Hvis action er lig 'slet': Slet fra nyheder hvor id er lig $_GET[id]

Den første virker med $id, sikkert fordi du har register globals på.
Den næste burde fejle, for det hedder $_GET['id'], og ikke $_GET[id].

På den måde kører du slet inden din if sætning, altså hver gang.
Måske ikke helt hvad du vil.

Evt kunne du skrive eksemplet om til:

if ($_GET['action'] == 'slet') { mysql_query("DELETE from nyheder WHERE id = $id"); }

Dette gælder naurligvis også de andre steder hvor du bruger samme "teknik" :)



t