Opdaterings-script vil ikke gemme ændringer

Tags:    php mysql

Hej
Jeg er igang med at lave endnu en hjemmeside, hvor jeg som på mange andre sider, bruger PHP & MySQL. Jeg har et script til at oprette, et til at slette og et til at redigere.
Jeg har brugt koden rigtig mange gange før og det har også virket, men lige på denne side vil den ikke samarbejde:
rediger.php
Fold kodeboks ind/udHTML kode 

opdater.php
Fold kodeboks ind/udPHP kode 

Jeg får beskeden om at ændringerne er blevet gemt, men det er de ikke. Hvad er der galt med mit script siden det ikke virker, eller er det min formular?



2 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 1 karma
Sorter efter stemmer Sorter efter dato
Ved ikke om dette er årsagen, men jeg gør altid således når jeg indsætter variabler i min SQL query.
Fold kodeboks ind/udPHP kode 

Du kan prøve og se om det hjælper, men ved ikke om det overhovedet er en fejl sådan som du har gjort det :) Ellers ser din kode ud til at være fin nok... Har du prøvet at se om der sker en mysql_error, på et tidspunkt? Du kan evt. prøve at kører en mysql_affected_rows() funktion, efter du har lavet dit update, og se om den overhovedet finder et row som den ændrer. Måske din variabel p indeholder en forkert værdi?

er p ikke et id? Er dette id et tal, fordi i så fald skal du vist fjerne enkelt citationstegnene ( ' og ' ) fra dit SQL statement ved variablen p, så det kommer til at være.
Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 03.06.2012 22:48 af Bruger #4487
Det tror jeg at jeg vil prøve. Og ja, p er tilsvarende til id.

EDIT:
Prøvede lige dit forslag og nu får jeg fejlbesked om at den ikke har gemt mine ændringer.

UPDATE:
Fandt fejlen. I min formular havde jeg navngivet feltet til p som id og jeg bad jo scriptet hente værdien af p fra et felt med navnet p, men eftersom det ikke kunne findes, så kan den ikke gemme noget, men så skulle den have lavet fejl hele tiden. Det jeg har rettet og nu virker det.



Indlæg senest redigeret d. 05.06.2012 15:42 af Bruger #17072
t