SQL-backend för modell-klasser

Publicerad 2009-03-05 20:17

Fråga

Jag har en fundering angående min privata hemsida som jag skapat. Det ligger en mysql databas i botten och jag kör php sidor och inkluderar en phpsida med alla funktioner.

Det jag har gjort nu är att i många funktioner kopplar jag upp mot databasen och hämta/ändra/ lägg till data och sedan stänger jag kopplingen. Det jag undrar är om det här är rätt, eller skall man ha en slags gemensam koppling mot databasen som ligger öppen och kan användas av alla funktioner?

Svar

Hej Anders...

Här kommer en idé på hur du kan bygga upp din applikation.

Modifiera din struktur så att den överensstämmer med Model-View-Controller konceptet, se http://en.wikipedia.org/wiki/Model-view-controller. Detta koncept är enklare att följa om du använder klasser i din kod.

Sedan för varje modell-klass skriver du en metod/funktion som du anropar när du modifierat klart innehållet i objektet, denna metod skall då implementera SQL-anrop som sparar objektets innehåll i sql-databasen.

Låt nu säga att du har en funktion på din hemsida där du får fram komponenter för att ändra en bild och text till bilden, samt en kryssruta för att göra detta synligt. I bakgrunden görs följande när användaren trycker på en knapp för att spara,

  1. Öppna kommunikationen gentemot MySQL
  2. Ändra värdet i modellen som representerar bilden.
  3. Ändra värdet i modellen som representerar texten.
  4. Ändra värdet i modellen som representerar kryssrutan.
  5. Skriv till SQL genom att anropa metoden i modellen som representerar bilden.
  6. Skriv till SQL genom att anropa metoden i modellen som representerar texten.
  7. Skriv till SQL genom att anropa metoden i modellen som representerar kryssrutan.
  8. Stäng kommunikationen till SQL.

När vi ändå är igång kan vi ge en varning åt 'persistent database connection', vilket man bör undvika så länge man inte har några uppenbara prestandaproblem. Vad är då 'persistent database connection' och varför skall jag undvika det, den informationen finner du under följande länk: http://se2.php.net/manual/en/features.persistent-connections.php.

Lycka till...

On
Off

0 kommentarer

Avatar

Inte inloggad

Logga in Bli medlem

Läs mer

  • Senaste
  • Mest läst
  • Mest kommenterat

Kom in i diskussionen

Detta innehåll är skapat av Datormagazins besökare

En bilhypokondrikers upprättelse

3 kommentarer

Jan Strömbäck: Claes, jag börjar tro att han fallit i den manliga prestige-fällan, där man inte kan yttra orden: -Jag vet inte, jag kan inte det där! ;)

Månadens fråga

  • Äger du en datorplatta?

Forum

Detta innehåll är skapat av Datormagazins medlemmar.

Artikelkommentarer


För dig som vill veta mer: prenumerera

Datormagazin är datortidningen för dig som vill veta mest. Vår ambition är att göra en tidning med djupare och mer avancerade artiklar än vad du hittar i andra datortidningar. Samtidigt väjer vi inte för att på ett handfast sätt förklara hur saker och ting fungerar. Du ska alltid känna att du har nytta av tidningen.
Välkommen till Sveriges största tidskrift för avancerade datoranvändare!

Beställ prenumeration och betala direkt online

Egmont logo
© Egmont Tidskrifter