Duplicate entry ... for key 'PRIMARY'

Tags:    php mysqli

<< < 12 > >>
Jeg arbejder på en "godkend" funktion til et spil, hvor de skal kunne lave stamtræ, men den begynder at drille lidt. De tre funktioner der skal være er:
1) Update en status til at være on og ikke of.
2) Opret stamtræ med personens ID.
3) Træk 16 point fra brugeren.

Tingene går fint igennem, men den printer "Noget gik galt, så din person er ikke oprettet. Kontakt support hvis fejlen forsætter." ud, fremfor Personen er nu godkendt.

Fold kodeboks ind/udPHP kode 


Nogle der kan hjælpe :)?



Indlæg senest redigeret d. 14.01.2014 21:12 af Bruger #17534
14 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Nu har jeg prøvet køre én efter én altså:

Fold kodeboks ind/udPHP kode 


Og bagefter:

Fold kodeboks ind/udPHP kode 


Og det samme med den sidste.
men alle udskriver samme fejl:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1

Det hele:
Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 15.01.2014 13:28 af Bruger #17534
Du SKAL IKKE bruge $result = mysqli_query($con, $query);

I denne kodestup:
Fold kodeboks ind/udKode 


mysqli_query() returner enten en bool-værdi eller et query resource objekt.
mysqli_query() tager som parameter et connection resource objekt og en tekststreng. Andre værdityper er ikke tilladt.

Du afvikler først mysqli_query() med et connection resource objekt og en tekststreng, og modtager et query resource objekt eller en bool værdi.
Den værdi du modtager sender du så igennem til en nye mysqli_query() der kun tager et connection resource objekt og en tekststreng som parameter.

Det skal du stoppe med, uanset hvad du mener at have fået af vide. :)

Se dokumentation for korrekt afvikling af mysqli_query()
http://dk1.php.net/mysqli_query

Og her er tilrettet kode - analyser det og lær af det, ikke bare copy-paste. :) :
Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 15.01.2014 14:16 af Bruger #10216
Jeg kan love at jeg ikke bare copy-paster (Har allerede fundet "lidt fejl" i det du har lavet... :p f.eks. i pedigree har du bedst om UserID, men det er persID :p ehe. Og det samme i updaten persons status), da det er vigtig for mig at lære og forstå hvorfor, hvordan osv. :) Det er også derfor jeg finder på egne projekter, for at udvikle og lærer meget mere :)

Jeg vil lige prøve at læse den side du linker til, da jeg mest har brugt w3school. Kunne godt være at man skulle til at bruge php.net fast.



Indlæg senest redigeret d. 15.01.2014 14:34 af Bruger #17534
Også det link jeg sendte dig.., netop det samme jeg sagde til dig som michael prøver at vise.. :)

Jeg kan klart anbefale dig, at kigge på de forskellige funktioner på php.net, så du ved hvad de gør og hvad de returnere..

Jeg kan også anbefale dig at kigge på OOP udgaven af mysqli, og så gøre brug af try/catch, for at fange exceptions...





<< < 12 > >>
t