Konverter $_SERVER variabler til indsættelse i en MySQL Database
Jeg er igang med at lære mig selv PHP da jeg vil lave et website på en linux boks med en database.Jeg vil føre log over besøgende på mit website, men i øjeblikket har jeg problemer med at indsætte nogle af variablerne i min log tabel.
De fleste variabler jeg gemmer henter jeg ud fra $_SERVER delen i PHP, som er de fleste, hvis ikke alle, som jeg kunne finde frem til. Bare for at nævne det så kontrollere jeg om de er sat med isset og om de indeholder noget eller om det bare er en tom tekst streng. Hvis det er skrives det i SQL strengen at den variable er null og databasen er sat op til at modtage NULL værdier.
Hvis variablerne i $_SERVER har en værdi så overføre jeg dem til en midlertidig variable, til lige den del kontrolleret, som jeg så indsætter efterfølgende i SQL strengen når den skal udføres.
Et eksemple på en SQL streng som jeg kan skrive er: "INSERT INTO 'website'.'websitelog'(value1, value2, value3) VALUES(NULL, '$value2', '$value3');"
Jeg har prøvet at udføre den, men den fejler hver gang at jeg bruger de værdier jeg henter ud i stedet for at bruge nogle test værdier, som 123 eller abcd, eller andet som kan være i en tekst streng. Jeg har også prøvet at få selve SQL sætningen skrevet i browseren og som jeg kan se så indeholder en eller flere af $_SERVER variablerne elementer som kunne betyde at sætningen bliver ændret i en forstand som gør at MySQL serveren ser den anderledes end hensigten, som gør at indsættelsen fejler.
Jeg har prøvet at sige at variablerne køres igennem funktionen addslaches, uden held.
Det jeg gerne vil vide her er om jeg kan tage variablerne og køre igennem en anden funktion eller give de midlertidige variable navne et andet/ekstre symbol. Efter min viden f.eks. skulle det i f.eks. java være muligt at en variable som en String kunne gemmes som private String @variable, og så lægge den direkte ind i MySQL tekst strengen og det kunne så gøre at en bruger som skulle gemme ting eller udføre en anden database handling ikke vil kunne indføre uhensigtmæssig SQL kode.
Kan PHP noget ligende eller andet hvor at jeg kan undgå sådanne problemer?
P.S. Undskyld den evt. uoverskuelige tekst.