PHP och SQL i OS X. Hur då, då...?

Tråden skapades och har fått 14 svar. Det senaste inlägget skrevs .
1

Måste erkänna; Jag är lite rädd för det häringa Unixen. Kan inget, vågar knappt öppna program i Verktygsmappen i rädsla för att ställa till något.
Dock och icke förty, jag kör ju på OS X och har jobbat i Golive i några år.
Hade nu tänkt lära mig PHP. Vad jag förstått så kan man installera PHP och SQL i burken. Golive har någon form av tjosan för detta. Hur gör man då? (är beredd på ett "Read the f*cking manual" här...)
Eller ska jag installera komponenterna "för hand"? Hur gör jag då?.
Hur ställer man sedan in så att Goliven jobbar mot min "localhost" (för det är väl det som är "servern"?).
Är det för mycket att förklara här i forumet, så är jag tacksam för länkar till förklarande sidor.

/Bosse

[ 08 Januari 2003, 16:26: Meddelandet ändrat av: Dr. Feelgood ]

Att få PHP och MYSQL är lätt. Men att få det tillsammans med GoLive.. Det är en annan femma..
Skulle också uppskatta om någon vis person kunde guida..

Citat:

quote:Skapades ursprungligen av: Christopher Anderton:
Att få PHP och MYSQL är lätt..

Oki, lär mig det till att börja med, är du snäll. Så kanske jag sedan kan klura lite på Golive själv.

/Bosse

Citat:

quote:Skapades ursprungligen av: Christopher Anderton:
Att få PHP och MYSQL är lätt. Men att få det tillsammans med GoLive.. Det är en annan femma..
Skulle också uppskatta om någon vis person kunde guida..

Jag kan bara hänvisa till Entropy. Mycket enklare blir det inte.
Visst, det är lite terminal inblandat, men det är ju faktiskt bara att kopiera och klistra in punkt för punkt. Inte svårt alls.

För PHP så går du HIT och för mySQL går du HIT.

Allra först, gör en backup på inställningsfilen till din Apache webserver, kan vara bra och ha en helt "ren". Kopiera och klistra in följande i Terminalen (fyll i lösenord när du blir ombedd).

Citat:

code:<pre style="font-size:x-small; font-family: monospace;">sudo cp /etc/httpd/httpd.conf httpd.conf.99mac.bak</pre>

Börja nu med att följa installationsanvisningarna för PHP.

När alla punkterna är klara testar du din PHP installation genom att skapa en textfil i t.ex BBEdit och som innehåller följande.

Citat:

code:<pre style="font-size:x-small; font-family: monospace;"><?php
phpinfo();
?></pre>

Spara den textfilen som t.ex "info.php" och lägg den i "/Library/Webserver/Documents/" - som är din "root" till servern. Gå sedan med webbläsaren till http://127.0.0.1/info.php - om du döpte filen till info.php dårå

Nästa steg är att installera mySQL - även här är det bara att följa instruktionerna.
Ett tips är att förutom att installera mySQL även installera det "startup item" som finns, så att mySQL servern startas när datorn startas.
Precis som Marc L skriver så är det viktigt att du läser kapitel 4.3 i mySQL manualen och ser till så att du har bytat lösenord på mySQL serverns "root" användare (inte att blanda ihop med root användaren i resten av systemet) - som i detta läge inte har något lösenord...

Detta sista viktiga steg gör du genom att, i Terminalen, skriva följande.

Citat:

code:<pre style="font-size:x-small; font-family: monospace;">mysqladmin -u root password hej</pre>

Vad som händer då är att din användare "root" i mySQL servern får lösenordet "hej" - du bör kanske välja nåt smartare

...
Nu har rootanvändaren ett lösenord, så för att byta igen måste du skriva såhär

Citat:

code:<pre style="font-size:x-small; font-family: monospace;">mysqladmin -u root -p password hejigen</pre>

Det betyder att du startar "mysqladmin", vill logga in som user (-u) root och du vill ange befintligt lösenord (-p) samt byta till nytt lösenord med kommandot password (befintligt är ju "hej") och du vill byta till "hejigen). - När du trycker enter får du ange det gamla, befintliga lösenordet.

När du bytt lösenord så föreslår jag att du laddar ner . phpMyAdmin för att på enklast möjliga sätt hantera din mySQL databas.
Det är samtidigt en väldigt bra "övning" på hur man installerar, ställer in osv forum och andra spännande saker som finns att leka med nu när du har PHP och mySQL på din dator.

Slutar nu... lycka till.
/Mattias

Mattias, du är en hyvens karl!
Ska genast sätta igång!

/Bosse

... så sket det sig.

Trodde jag var lite mer vaken än vad jag var.
Allt är installerat, men någonstans gjorde jag fel vad gäller password. Nu kan jag inte få igång servern alls...

Är det kört nu? Hur ska jag överhuvudtaget få igång prylarna?

/Bosse

Citat:

quote:Skapades ursprungligen av: Dr. Feelgood:
... så sket det sig.
Är det kört nu? Hur ska jag överhuvudtaget få igång prylarna?
/Bosse

Vad är det som sket sig?
Kommer du inte in i mySQL (genom att skriva "mysql -u root -p" i terminal)?

Vet du inte om mysql är startat?
Skriv "Top" i terminalen, gör fönstret lite större så du ser, och se om du kan se "mysqld" någonstans. Du kan söka, genon att trycka Cmd+F (kringla+f) efter "mysqld" i texten du får upp. Tryck "Q" när du letat klart.

Om du skriver "mysql -u root" i terminalen, vad händer då? Står det "Access denied for user: ´root@localhost´ (Using password: NO)" - Då har du tilldelat "root" ett lösenord.

Om du skriver "mysql -u root -p" så får du upp en prompt som ber dig skriva in lösenordet. Om du skriver det du tror du angivit som lösenord, vad händer då?
Om du inte skriver något, vad händer då?
Om du skriver in "password" (utan ") som lösenord, vad händer då? (Rätt vanligt fel att man ger mysqladmin order att byta password till password...).

några tankar.
/Mattias

[Kommer du inte in i mySQL (genom att skriva "mysql -u root -p" i terminal)?]

Jopp, först ska jag ange lösenord (det som jag angav som nytt password) och sedan står det:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 3 to server version: 3.23.53-entropy.ch
Type ´help;´ or ´h´ for help. Type ´c´ to clear the buffer.

[Vet du inte om mysql är startat?]

Ovanstående indikerar att så är fallet. Väl...?

[Om du skriver "mysql -u root" i terminalen, vad händer då? "Står det "Access denied for user: ´root@localhost´ (Using password: NO)" - Då har du tilldelat "root" ett lösenord.]

Se ovan. Men om jag däremot försöker köra phpMyAdmin 2.3.3pl1 (som jag hämtar från mappen WebServer/Documents" med länken http://127.0.0.1/phpMyAdmin/index.php), så får jag just det felmeddelandet.
Om jag däremot kör länken du angav (http://127.0.0.1/info.php) så funkar den helt OK.

/Bosse

Citat:

quote:Skapades ursprungligen av: Dr. Feelgood:
Men om jag däremot försöker köra phpMyAdmin 2.3.3pl1 (som jag hämtar från mappen WebServer/Documents" med länken http://127.0.0.1/phpMyAdmin/index.php), så får jag just det felmeddelandet.
Om jag däremot kör länken du angav (http://127.0.0.1/info.php) så funkar den helt OK.

Meeen, duuu Då är det inte så illa tror jag.

1) Du kommer in i mySQL med ditt lösenord -dvs det är ok.

2) Du har lyckats installera PHP ok.

Vad jag tror är att phpMyAdmin inte är riktigt riktigt installerat/inställt.

I phpmyadmin mappen finns en fil som heter "config.inc.php". Har du redigerat den?

Lite beroende på version, men det finns ett antal rader som är viktiga.

Jag kopierar från min och lägger in här (ändrar bara användarnamn och lösenord) Har skrivit in ett exempel där root användaren används - det är inte det mest intelligenta - men det funkar...

Du behöver en rad där hela URL:en till phpmyadmin anges.

Citat:

code:<pre style="font-size:x-small; font-family: monospace;">$cfg[´PmaAbsoluteUri´] = ´http://127.0.0.1/phpmyadmin/´;</pre>

Nästa viktiga sak att kolla är att
* "Host" är satt till "localhost"
* "Controluser" är satt till en användare som bara får läsa - för säkerhetens skull - men för att se till så att det funkar kan du använda root så länge (aldrig i skarpt läge dock)
* "controlpass" är satt till det lösenord som controluser har, i detta fall root lösenordet
* "user" är satt till en user som får göra mycket, root funkar bra här också för tillfället (av samma anledning som ovan)
* "password" satt till root lösenord, samma som ovan

Citat:

code:<pre style="font-size:x-small; font-family: monospace;">$cfg[´Servers´][$i][´host´] = ´localhost´; // MySQL hostname
$cfg[´Servers´][$i][´port´] = ´´; // MySQL port - leave blank for default port
$cfg[´Servers´][$i][´socket´] = ´´; // Path to the socket - leave blank for default socket
$cfg[´Servers´][$i][´connect_type´] = ´tcp´; // How to connect to MySQL server (´tcp´ or ´socket´)
$cfg[´Servers´][$i][´controluser´] = ´root´; // MySQL control user settings
// (this user must have read-only
$cfg[´Servers´][$i][´controlpass´] = ´root_lösenord´; // access to the "mysql/user"
// and "mysql/db" tables)
$cfg[´Servers´][$i][´auth_type´] = ´config´; // Authentication method (config, http or cookie based)?
$cfg[´Servers´][$i][´user´] = ´root´; // MySQL user
$cfg[´Servers´][$i][´password´] = ´root_lösenord´; // MySQL password (only needed
// with ´config´ auth_type)</pre>

Hoppas jag förtsått ditt problem rätt - att phpMyAdmin inte får "logga in" i mySQL.

lycka till
/Mattias

Edit: Stavning

[ 09 Januari 2003, 23:47: Meddelandet ändrat av: Mattias Jonsson ]

Jamen.. det funkar ju!!!

Jag får meddelandet:
Du använder PHP 4.2.3, vilken har en allvarlig bugg med multi-byte-strängar (mbstring). Se PHP:s buggrapport 19404. Denna version av PHP är inte rekommenderad för användning tillsammans med phpMyAdmin.

Ska jag byta PHP eller phpAdmin, tycker du?

/Bosse

Citat:

quote:Skapades ursprungligen av: Dr. Feelgood:
Jamen.. det funkar ju!!!
Ska jag byta PHP eller phpAdmin, tycker du?

Ah, va bra att det funkar.
Huruvida detdär är en "allvarlig" bugg eller inte vet jag inte. Har inte orkat sätta mig in i det. (Skulle antagligen inte förstå det om jag försökte, kanske någon annan kan förklara varför 4.2.3 är så hemskt).

Försökte nå dig på icq men du var visst offline och kodade

/mattias
Edit: Jaha, det blev visst nummer 200, det tar sig det tar sig.

[ 10 Januari 2003, 00:05: Meddelandet ändrat av: Mattias Jonsson ]

Har inte själva ICQ programmet. Använder Fire (som hanterar alla sorter, ICQ, AIM, you name it). Fast just idag strular det förstås... Kraschar med jämna och ojämna mellanrum.

Det går ju inge´ vidare med kodandet än, eftersom jag inte riktigt vet vad jag ska göra nu...

Min förhoppning var ju att om jag bara fick igång mySQL och PHP, så skulle jag nog kunna klura ut hur jag ska använda Golive för att bygga PHP-sidor. Har du en susning om hur man får igång Golive (ingen idé att visa de felmeddelanden hag får förrän jag vet om du kan).

/Bosse

Citat:

quote:Skapades ursprungligen av: Dr. Feelgood:
Golive för att bygga PHP-sidor. Har du en susning om hur man får igång Golive (ingen idé att visa de felmeddelanden hag får förrän jag vet om du kan).
/Bosse

Golive... WYSIWIG... hua.
Nope, inte en blekaste om hur det går till.

Däremot kan jag bjuda på följande riktigt vettiga sidor.

IDG´s Webstudio, finns både PHP och mySQL info här

Webmonkey - PHP/mySQL Tutorial

Den senare är en "punkt för punkt" lektion i php och mysql tillsammans. Eftersom du redan installerat och så så vill du nog hoppa direkt hit.

Citat:

quote:Skapades ursprungligen av: Mattias Jonsson:
[b]

Golive... WYSIWIG... hua.
Nope, inte en blekaste om hur det går till.[/b]

Du påminner om min Unix/PHP-frälste kompis som får något mörkt i ögonen när jag snackar editor...

Verkar som vi kommit till vägs ände i den här tråden. Jag startar en ny om Golive/Localhost.
Du har varit en suverän hjälp! Tack!

Ha det!
/Bosse

  • Medlem
  • Uppsala
  • 2004-10-06 01:28

Mitt fel ser ut så här

127:~ mats$ code:<pre style="font-size:x-small; font-family: monospace;">sudo cp /etc/httpd/httpd.conf httpd.conf.99mac.bak</pre>
-bash: syntax error near unexpected token `newline'
127:~ mats$

1
Bevaka tråden