Denna delen av 99 uppdateras inte längre utan har arkiverats inför framtiden som ett museum.
Här kan du läsa mer om varför.
Mac-nyheter hittar du på Macradion.com och forumet hittar du via Applebubblan.

html och databaser?

Tråden skapades och har fått 15 svar. Det senaste inlägget skrevs .
1
  • Oregistrerad
  • 2002-02-10 14:20

Är inte hemma på databaser, men nu läser jag en internetkurs på Mitthögskolan. En av labarna bygger på att man ska skriva ihop ett html-formulär vars innehåll tas om hand av ett PHP skript som sedan skickas via en ODBC till en Access databas. Det är här problemen börjar, jag har ju Mac och MacOSX, här finns ju inte Access. Vad finns det för alternativ? Måste man sätta upp en webbserver för att detta att fungera?

Lite knasigt att kräva webbapplikationen ska använda Access. Access är ju ingen bra databashanterare när det gäller att hantera många användare samtidigt (enligt min erfarenhet i alla fall). Det finns ju bättre och billigare lösningar i form av MySQL.

Hur hade du tänkt att du skulle köra lösningen ? Apache på din Mac och sedan databasen på en Windowsmaskin ? Enklaste blir ju givetvis att köra allt på samma maskin ...

/hegge

  • Oregistrerad
  • 2002-02-10 16:01

Nej jag tänke köra alltihopa på min mac en G4/466. Jo jag förstår att det kan blir lite koplicerat att lösningen utspridd över flera datorer. Det fanns väl inget direkt krav på Access, utan det det var mer som ett tips, då Access redan finns installerat i datasalen.
Så MySQL är bästa lösningen till Mac?

>> Nej jag tänke köra alltihopa på min mac en G4/466
Du tänkte med andra ord ta med datorn och köra applikationen ? Då är det lika bra att ha allt på samma så slipper du strul, och så kan du ju passa på att visa upp OSX för alla som konsekvent ratar Macen som platform.

>> Så MySQL är bästa lösningen till Mac?
Kan inte svara på om det är bästa lösningen till Mac, men om det är php då ska använda så går nästan php och mysql "hand i hand". En annan fördel med MySQL är att den är gratis, finns till de flesta platformar, till skillnad från Access.

Vet inte riktigt om det finns så många andra alternativ. PostgreSQL kanske, men typ Filemaker lär väl inte funka eller ? Har själv ingen erfarenhet av Filemaker så jag vet inte ... Postgre är vad jag förstår mer lämpad för större installationer, så det kanske blir lite att ta i.

Du kör OSX ? Då skulle nog jag själv välja MySQL. PHP finns ju inkluderat i 10:an, och MySQL ska inte vara några problem att lägga in.

En annan grej som kan vara smart är att göra databaskopplingen oberoende av databas, med det menar jag att använda ett databasbibliotek som heter ADOdb för PHP. Fördelen med det är att man då använder samma anrop oberoende av databastyp och så anger man bara vilken databas man använder så sköter ADOdb resten. ADOdb hittar du på http://php.weblogs.com/ADOdb. Du kan i princip använda samma kod om du kör mmed MySQL eller Access. Bra om du måste köra koden på en windowsmaskin ...

Förkompilerade versioner av PHP och MySQL för OSX hittar du på http://www.entropy.ch/software/macosx/

(skrev visst fel adress där förra gången)

Hoppas du hittar en bra lösning !

/hegge

[ 10 Februari 2002: Meddelandet ändrat av: Henrik Andersson ]

[ 10 Februari 2002: Meddelandet ändrat av: Henrik Andersson ]

  • Oregistrerad
  • 2002-02-10 16:47

Tack så mycket då har jag en hel del att testa. Nej tänkte inte släpa med mig datorn utan, bara köra applikationen/skriptet över internet. Det ska ju fungera lika bra.

>> Nej tänkte inte släpa med mig datorn utan, bara köra applikationen/skriptet över internet.

Jo, det har du ju rätt i, blir avsevärt mycket enklare så ...

/hegge

  • Medlem
  • International user
  • 2002-02-10 19:03

Vet inte riktigt om det finns så många andra alternativ. PostgreSQL kanske, men typ Filemaker lär väl inte funka eller ? Har själv ingen erfarenhet av Filemaker så jag vet inte ... Postgre är vad jag förstår mer lämpad för större installationer, så det kanske blir lite att ta i.

Jag har svårt att förstå fascinationen över MySQL. Nu har jag förvisso inte använt programmet sedan version 3.2-nånting, men då var MySQL ett par generationer efter Postgres. Inga subqueries, inga stored procedures, inget stöd för arv eller annan form av objektorientering, inga transaktioner, överhuvudtaget tämligen begränsad. Postgres däremot är en oerhört kompetent men ändå lättanvänd databashanterare, och fungerar alldeles finfint med PHP. Fast jämfört med Access/Jet är t.o.m. MySQL ett underverk.

En annan grej som kan vara smart är att göra databaskopplingen oberoende av databas, med det menar jag att använda ett databasbibliotek som heter ADOdb för PHP. Fördelen med det är att man då använder samma anrop oberoende av databastyp och så anger man bara vilken databas man använder så sköter ADOdb resten.

En programmerare som är mån om portabilitet skriver naturligtvis ett abstraktionslager för databas-snack i form av en klass eller liknande, ser ingen anledning att begränsa sig till Windows. Fast då vill det till att enbart använder någon sorts gemensam nämnare och håller sig borta från smidiga funktioner som kan vara unika för en viss databashanterare.

  • Medlem
  • 2002-02-10 20:04

En beskrivning för att börja med mysql och php i macosx: http://www.entropy.ch/software/macosx/mysql/

Glömde denna länk för PostgreSQL: http://www.entropy.ch/software/macosx/postgresql/

[ 10 Februari 2002: Meddelandet ändrat av: Per JW ]

Citat:

Skapades ursprungligen av: Per:
/.../ till en Access databas.

Vad är meningen med labben? Det kanske är att du ska lära dig Access.

Om det inte är det kan du väl fråga dina lärare varför de använder detta program. Har någon någonsin träffat någon som arbetar med Internet som använder detta program? Access används väl om du ska göra en databas för din lokala förening eller internt på ett mindre företag?

[ 10 Februari 2002: Meddelandet ändrat av: thevil ]

ehnmark:

Du har rätt i att MySQL kanske inte är så märkvärdig, speciellt i jämförelse med Postgre. Den nuvarande stabila versionen (3.23....) har inte stöd för transaktioner och sånt som Postgre har. Stöd för vissa av de funktionerna kommer i 4.0. Men till att börja med räcker ju MySQL bra, ska man bara göra några INSERT och SELECT så spelar det ingen större roll. Har inte själv provat Postgre så jag kan inte svara på vilken som är lättast att lära sig och installera.

Gällande det där med portabilitet så var ADOdb (inte att förväxla med windows d:o) bara ett exempel på ett färdigskrivet bibliotek för hantering av olika databaser i PHP. PHP är lite inkonsevent i sin hantering av olika databaser, och därav tillkomsten av ADOdb. Den fungerar bra då man snabbt behöver kunna byta databas, utan att för den del skriva om en massa kod. Till ett större projekt väljer man kanske att skriva sin egen klass för att hantera detta.

Till det exempel som Per undrar över så kanske behöver man inte uppfinna hjulet igen, lite onödigt mycket jobb, men det kan ju ändå vara något att tänka på för framtida projekt.

/hegge

[ 10 Februari 2002: Meddelandet ändrat av: Henrik Andersson ]

Jag använder ADOdb i ett nuvarande projekt och det har fungerat bra hittills. Ger mig en lite större smidighet om/när vi vill flytta det från Win/MsSQL till Apache/MySQL istället för att slippa licenskostnader.

Citat:

Jag har svårt att förstå fascinationen över MySQL. Nu har jag förvisso inte använt programmet sedan version 3.2-nånting, men då var MySQL ett par generationer efter Postgres. Inga subqueries, inga stored procedures, inget stöd för arv eller annan form av objektorientering, inga transaktioner, överhuvudtaget tämligen begränsad. Postgres däremot är en oerhört kompetent men ändå lättanvänd databashanterare, och fungerar alldeles finfint med PHP.

Ja om man gillar religionskrig a la Mac vs PC så kan man ju dyka ner i ett annat sådant: MySQL vs PostgreSQL... En sak som många förespråkare för Postgre inte alltid inser är att MySQL är fullt tillräckligt för många projekt. Visst, det saknas en hel del funktioner, men behöver man inte dom så spelar det ju ingen som helst roll. MySQL är en snabb och enkel liten databas som smidig koppling till PHP och dess populäriet går ju inte att ta miste på. Även om jag vet många "riktiga" programmerare (jag tillhör inte dom anser jag) som föredrar Postgre så klarar man sig utmärkt med MySQL i många fall. Jag har aldrig varit begränsad av det.

  • Oregistrerad
  • 2002-02-10 21:45

Jag har hört med kursansvariga varför vi skulle använda oss av Access, enda anledningen var att Access finns installerat i datasalen där vi har våra labar. Så det är inget måste att använda Access utan det skulle gå bra att använda någon annan databas också.

Läste en databas kurs tidigare, då var fick vi bara använda Access, vilken inte var roligt alls då MS inte håller sig till standard SQL.

Nu har jag fått in MySQL iaf via ett GUI, SQL4X, trevligt gränssnitt där man lätt håller koll på databasen.

  • Medlem
  • International user
  • 2002-02-13 22:42

Men till att börja med räcker ju MySQL bra, ska man bara göra några INSERT och SELECT så spelar det ingen större roll.

Det är sant, men så fort man har någorlunda sofistikerad databasdesign och vill hålla tabellerna konsistenta så vill man definitivt ha constraints, och då är det väldigt smidigt med triggers och transaktionsstöd. Om man kan få det gratis utan att förlora MySQLs enkelhet och php-integration så är det väl bara att tacka och ta emot

Fast i ärlighetens namn är inte alla features i Postgres av godo, det är lätt att man använder sådant som man tror underlättar men som kan orsaka problem senare. Exempelvis lär man sig på grundläggande kurser i databasteknik att det finns något som heter normalformer och som relationer bör uppfylla av olika skäl, men eftersom Postgres har stöd för arrayer och andra icke-atomiska datatyper är det lätt att konstruera en tabell som inte ens uppfyller den mest grundläggaste formen.

Vad gäller ADOdb så läste jag visst lite för snabbt Trodde det var en php-wrapper för just ADO, men det verkar mycket riktigt vara ett plattformsoberoende API som härmar syntaxen i ADO. Det förändrar saken

Men för att återgå till ursprungsfrågan: om ODBC är ett krav så är det kanske varken MySQL eller Postgres du bör kika på utan OpenBase. Även om det säkert går att pussla ihop en fungerande ODBC-uppkoppling till andra databashanterare skulle jag tro att det blir minst krångel med OpenBase eftersom man kan hämta hem en driver manager och tillhörande drivrutin från företagets hemsida.

Du tappade bort mig totalt i ditt andra stycke Ehnmark, men jag tvivlar inte på att det ligger nåt i det för dom som förstår... Men som "amatörhackare" så har då i alla fall jag inte kunskapen att utnyttja fördelarna.

Och som sagt, jag använder ADOdb just nu och tycker det fungerar fint, och det har bra stöd för ODBC också.

  • Medlem
  • International user
  • 2002-02-13 23:51

Du tappade bort mig totalt i ditt andra stycke Ehnmark, men jag tvivlar inte på att det ligger nåt i det för dom som förstår...

Gå upp på DV-institutionen och skriv in dig på TDBC86 så lovar jag att dimman lättar

Och som sagt, jag använder ADOdb just nu och tycker det fungerar fint, och det har bra stöd för ODBC också.

Det tror jag säkert, men det förutsätter väl ändå att det finns en sk. Driver Manager och en ODBC-driver? Under Windows är det enklare eftersom sådant ingår i OSet, och ytterligare drivrutiner kan hämtas på MySQLs och Postgres hemsidor. Men under Mac OS X är det lite knivigare antar jag, OpenLink har tydligen en Driver manager men frågan är dock om det finns väl fungerande drivrutiner.

Jo, det är en intressant kurs, men det krävs en massa nedran förkunskapskurser...

Ah, glömde bort helt att vi snackade om att köra det på Mac...

1
Bevaka tråden