PHP mysql class

Tags:    php mysql

Heej igen alle sammen. Synes jeg får skrevet nogen spørgsmål her inde d:
Men nu sidder jeg med et problem igen, jeg sidder og laver min mysql class, for at få begyndt på lidt OOP php, og den function jeg sidder og laver, vil lade mig INSERT data til databasen, hvor jeg kan bruge lige så mange parametre som jeg lyster. Min metode/function ser sådan her ud.

Fold kodeboks ind/udPHP kode 


mit problem er at hvis jeg giver mysqli_query(); "INSERT INTO ..." direkte så vil den gerne indsætte i databasen, men når jeg giver den $output, som meget gerne skulle være en string (magen til den normale string man giver den), så vil den ikke indsætte i databasen.
Giver det mening eller er det helt hen i vejret? (:
Mvh. WunderStrudel



9 svar postet i denne tråd vises herunder
2 indlæg har modtaget i alt 6 karma
Sorter efter stemmer Sorter efter dato
ln 2 fjern " foran insert
$output = '"INSERT INTO ';

ln 37 slettes
$output .= '"';

slet typecast i ln 39 og 40

ln 40
der er lige smuttet et i i mysql_error skal være mysqli_error

tilrettet code hurtigt aftested
Fold kodeboks ind/udKode 





Der er jo ingen grund til at lære de grundlæggende dårlige vaner videre. PHP skal altid først, og HTML altid sidst. Faktisk skal al OUTPUT til klienten til sidst.

Fold kodeboks ind/udPHP kode 




Indlæg senest redigeret d. 13.07.2014 14:43 af Bruger #10216
Ohhh så det er fordi jeg har prøvet at lave en string i en string eller hvad? (:
Men det virkede ihvertfald, så tusind tak!
Mvh. Wunder



Er der nogen der kan gøre mig klog på, hvorfor det er smart at dele keys og values op i to forskellige arrays, når de alligevel skal hænge sammen?



@Nikolaj Jepsen
kort svar: nej, jeg ville også helt klart ligge det i et array, og løbe det igennem med en foreach



jeg ville gøre det sådan:
Fold kodeboks ind/udKode 





Heej den eneste grund til at jeg har gjort som jeg har gjort er, at er dejligt nemt at benytte, da man har det hele separeret fra hinanden "
mysqlInsert("users", array("id, username, password"), array("null, $username, $password"));
Det var bare min første idé til det, så kørte med det :D
altså jeg er ret ny til web development, har kun været igang de sidste 2 måneder, så er ærligtalt stadig igand med trial and error d:
men er det helt hen i vejret den måde jeg har gjort det på eller hvad?
Mvh. Wunder



Indlæg senest redigeret d. 13.07.2014 23:29 af Bruger #20949
Tanken er fin.

Men egentlig findes der allerede et hav af folk der allerede har gjort tanken for dig. :)
Så du kan bare vælge at bruge nogle af de eksisterende APIer

https://www.google.dk/search?safe=off&es_sm=119&q=+sql+php+DAO

Og hvis du bare gør det for at lære, er det også fint. Men du vil nok de færreste gange kunne lave lige så udførte API'er som de mest gængse af slagsen.



Altså det første fuldt funktionelle class jeg skriver, 100% skrevet med min kode, fordi jeg tænkte det ville være en god fremgangs måde. Og ærlig talt har jeg ingen idé om, om halvdelen af de ting jeg gør er totalt idiotisk fra en profs synspunkt, men sådan er det jo nok altid i starten d:
men kommer lige fra game development i C++ / C#, så er igang med at prøve at få vendt mit hovede rundt til web development logikken i stedet. specielt fordi jeg ikke er van til at blande 3 - 4 forskellig sprog sammen (:
Så hvis i har nogen pointers til hvad der kunne være genialt at lære i starten, så sig endelig til. Sidder lige pt en 8 - 10 timer dagligt og koder, så er meget ivrig efter at lære d:
Mvh. Wunder



Jeg kan anbefale at du sætter dig ind i et framework lige fra starten. Det gjorde jeg ikke, men det er i den grad noget jeg fortryder. Kan også anbefale, at du ikke blander 3-4 sprog sammen. Sørg først for logikken i dit script, herefter gå videre til frontend. Eller omvendt, naturligvis.

Ellers så få styr på, hvad PHP+framework allerede sætter til rådighed, så du ikke sidder og skriver en røvful kode for noget, som allerede er lavet.



t