^aM^ Skrevet 13. april 2007 Skrevet 13. april 2007 Heihopp, er relativt ny innen php og mysql, så hvis denne posten er totalt idiotisk/google mat vennligst ikke slå meg. Jeg jobber med å lage en liten sak, nok å si at det er en tabell med et endel rader og kolonner med informasjon i. Brukeren skal kunne legge til, endre, slette og søke opp det som ligger i tabellen. Jeg henger fint fast i å få til endre muligheten. Sitter nå med følgende kode: $update = 'UPDATE test SET fornavn= ' . $_POST[Efornavn]. 'WHERE ID= ' . $_POST[ID]; Denne funker ikke bra, gir meg en slem error som ber meg pakke sammen og lese manualen til mysql. Ber meg lese om bruken av " tegnet nærme linje 1. probleme er at linje 1 ikke har noe " tegn. Hvis noen har en rask løsning på hvordan jeg kan oppdatere felt i mysql basert på ID så hadde det vært kjempe flott.
Stian Jacobsen Skrevet 13. april 2007 Skrevet 13. april 2007 Grunnen er at du ikke avslutter $update = "UPDATE test SET fornavn='{$_POST[Efornavn]} 'WHERE ID={ $_POST[ID]}";
^aM^ Skrevet 13. april 2007 Forfatter Skrevet 13. april 2007 Den funke ikke, aldri sett den syntaxen bli brukt før. Sikker på at den virker? Får forøvrig samme feilmelding
fakey Skrevet 13. april 2007 Skrevet 13. april 2007 $update = "UPDATE test SET fornavn = '{$_POST[Efornavn]}' WHERE id = '{$_POST[ID]}'"; Denne skal vel funke. Evt. skriv ut mysql_error() om den ikke gjør det.
grimjoey Skrevet 13. april 2007 Skrevet 13. april 2007 (endret) eller: $update = 'UPDATE test SET fornavn=\''.$_POST['Efornavn'].'\' WHERE id=\''.$_POST['id'].'\';'; Endret 13. april 2007 av grimjoey
FraXinuS Skrevet 13. april 2007 Skrevet 13. april 2007 eller: sprintf("UPDATE test SET fornavn='%s' WHERE id='%s'", $_POST['Efornavn'], $_POST['id']); Så det blir litt finere.
Ståle Skrevet 14. april 2007 Skrevet 14. april 2007 Og så må man huske å ha mysql_real_escape_string() rundt
Stian Jacobsen Skrevet 14. april 2007 Skrevet 14. april 2007 Skjønner ikke hva som er problemet... $query = "UPDATE test SET fornavn='{$_POST['fornavn']}' WHERE id={$_POST['id']}"; if(@mysql_query($query)) { echo "Du har nå oppdatert raden med id ".$_POST['id']; } else { echo "FEIL!<br />\n".mysql_error(); } Problemene dine kan komme av a. databasen heter ikke "test" b. Du har ingen kolonner som heter fornavn eller id (Husk at dette er casesensetive) c. Du får ingen verdier, det er forskjell på $_POST[id] og $_POST['id']
Bakke Skrevet 14. april 2007 Skrevet 14. april 2007 Kansje litt OT men, jeg syns det er lettere å legge verdien av en post variabel til i en annen variabel i scriptet. F.eks: $id = $_POST['id'];
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå