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.
KOL

KOL

Medlem
  • Plats Luleå
  • Sysselsättning Gillar att motionera och fotografera. Musik och film är roligt! Älskar min mac.
  • Registrerad 2005-09-28
  • Senast aktiv 2015-09-27
  • Antal inlägg 546

Foruminlägg

De senaste inläggen KOL har skrivit i forumet.

  • Medlem
  • Luleå
  • 2013-06-13 12:10

Nu har jag kommit till chatper 10, "Accessing MySQL Using PHP". Stort tack till den som orkar hjälpa mig.
Jag tror problemet ligger i att jag lyckas inte skapa kontakt mellan php och mysql, trots att det är precis så här boken tycker att man ska göra.

De vill först att man ska skapa en egen login-fil till MySQL, "login.php". Den ska se ut så här
<?php //login.php
$db_hostname = 'localhost';
$db_database = 'databas';
$db_username = 'username';
$db_password = 'password';
?>
Jag tror detta ska vara en separat fil som inte innehåller något annat än det ovan. Har jag rätt?
När jag skriver denna kod i netbeans, så står det en liten triangel före varje rad. När jag kollar vad det handlar om står det att "Variabel $db_hostname seems to be unused in its scope" och så alltså vidare även för databas, username och password.
Vad är felet?

Nästa fråga gäller de nästkommande stegen för att fråga en databas och få svaren. Följande kod för att visa innehållet i tabellen countries som jag gjorde i MySQL-kabpitlet. I en ny fil som heter hejhej.php.

<?php
recuire_once('login.php');
$db_server = mysql_connect($db_hostname, $db_username, $_password);

if (!$db_server) die("Unable to connect to MySQL: " . mysql_error());

mysql_select_db($db_database)
or die("Unable to select database: " . mysql_error());

$query = "SELECT * FROM countries"; //tabellen i databasen heter countries
$result = mysql_query($query);

if (!result) die ("Database acces failed: " . mysql_error());

$rows = mysql_num_rows($result);

for ($j = 0 ; $j < $rows ; ++$j)
{
echo 'cities: ' . mysql_result($result,$j,'cities') . '<br />';
echo 'population: ' . mysql_result($result,$j,'population') . '<br />';
echo 'continent: ' . mysql_result($result,$j,'continent') . '<br />';
echo 'mustsee: ' . mysql_result($result,$j,'mustsee') . '<br />';
echo 'skala: ' . mysql_result($result,$j,'skala') . '<br /><br />';
}
?>

En triangel framför raden
$db_server = mysql_connect($db_hostname, $db_username, $_password);
Förklaringen från netbeans är "variabel $db_hostname seems to be uninitialized" och så vidare för varje variabel.

Triangel framför raden
mysql_select_db($db_database)
Förklaringen från netbeans är samma som för variablerna ovan. Sen står det "Surround with....-----"

Sist men inte minst triangel och liten lampa framför raden
$result = mysql_query($query);
Förklaringen från netbeans är "Variabel $result seems to be unused in its scope"
"Surround with ... --"

När jag vill se filen i en browser blir sidan helt vit. Vet någon vad felet kan vara?

  • Medlem
  • Luleå
  • 2013-06-11 09:39

Tack där, MH2. Och man lär sig mer och mer ju mer man håller på att greja med php och MySQL. Bra att 99 finns:)

  • Medlem
  • Luleå
  • 2013-06-07 22:02

suddgummi, jag vet inte hur jag ska kunna tacka dig. Det här funkade! Tack för hjälpen. Jag håller med dig och jag ska absolut läsa länken. Tack igen!

  • Medlem
  • Luleå
  • 2013-06-07 14:25

kenjon, jag bytte plats på 2 o 4

1. Jag startar terminal och det står, typ, [Macintosh:~] kalleanka%
2. Jag skriver så att det blir [Macintosh:~] kalleanka% /Applications/MAMP/Library/bin/mysql
3. Det står
"Welcome to the MySQL monitor. blablablabal.....
4. Nu klistrar jag in så att det står, mysql> mysql --user=root mysql
5. Det står ->
6. I min bok så står det att -> betyder "Waiting for the next line of a command".

Vad ska jag skriva?

  • Medlem
  • Luleå
  • 2013-06-07 13:32

Suddgummi, tack där. Det får stå precis vad som helst, bara det funkar.

Det är denna sajt jag har försökt förstå och köra efter
http://dev.mysql.com/doc/refman/5.1/en/adding...

1. Jag startar terminal och det står, typ, [Macintosh:~] kalleanka%
2. jag skriver in så att det blir, [Macintosh:~] kalleanka% mysql --user=root mysql
3. "mysql: Command not found."
4. Jag skriver så att det blir [Macintosh:~] kalleanka% /Applications/MAMP/Library/bin/mysql
5. Det står mysql>
6. Jag avslutar terminal och startar igen.
7. Jag skriver in så att det står [Macintosh:~] kalleanka% export PS1="shell> "
8. "export: Command not found."

Vad göra?
Innan boken tyckte man skulle vara inne o greja i terminal borde man kanske ha en länk som visar hur terminal fungerar:).
27sidor i boken täcker MySQLhantering via "the command-line interface". Man bygger två databaser och går igenom olika commandon. Sen ska man jobba vidare med dessa databaser i phpMyAdmin och i terminal.
Just nu står det stilla, jag kan alltså inte göra migsjälv till, jag tror det heter, "superuser" i terminal och kan alltså inte skapa några databaser. Men skam den som ger sig. Ensamseglare mitt ute på Atlanten kan ju inte bara ge upp och lägga ner, de måste ju ta sig till land på nåt sätt.:)

  • Medlem
  • Luleå
  • 2013-06-07 10:36

Tack för den insikten snigel1. Jag tycker jag har de kunskaper om html och css som verkar krävas(gjort fem hemsidor, dock bara med html och css) och sen var nästa steg javascript, php och mySQL. Sagt och gjort, jag köpte boken som vi nämnt(O'reilly-litteratur) och resten har du förmodligen läst om här på forumet. Att jag startade e-kursen var för att jag fick möjlighet till det och för att jag kände att den kunde komplettera boken. E-kursen tog inte upp terminal, utan körde med program som fanns på den tiden då ursen gjordes, 2006. Boken kör med modernare program och terminal. Det blev lite rörigt och för någon som aldrig grejat med php och mySQL så är det ett ganska stort område och ja, jag uppfattas säkert som stressad. Jag fastnar ju liksom hela tiden.

Jag hade tänkt lära mig php och mySQL och bygga upp ett par databaser som jag kan använda på ett par hemsidor. Inget avancerat.
Givetvis så vill jag i slutändan kunna skriva i mitt CV att jag har kunskaper och erfarenheter i php och mySQL.

  • Medlem
  • Luleå
  • 2013-06-07 09:57

Jag inser att jag inte har tillgång till att skapa databaser via terminal(men det går utmärkt via phpMyadmin). Jag tror att jag i terminal måste få rättigheter så att jag kan skapa databaser, eller hur?

När jag startat terminal kommer jag till, typ,
[Macintosh:~] kalleanka%

Jag såg det här nedan och trodde jag var på rätt väg. Men hur får man det att stå shell> i terminal?
"
First, use the mysql program to connect to the server as the MySQL root user:
shell> mysql --user=root mysql"

sen ska man skriva följande kommando:

mysql> CREATE USER 'root'@'localhost' IDENTIFIED BY 'root';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost'
-> WITH GRANT OPTION;

Men, sen då? Är det nu jag kan skriva in CREATE DATABASES dbnamn;?

  • Medlem
  • Luleå
  • 2013-06-06 23:21

Jag har nu kommit till chapter8, "Introduction to MySQL". Där ska man använda terminal. Det har jag aldrig gjort innan och nu har jag ett stort problem. Det är rätt invecklade grejer det här.
Jag får meddelandet
ERROR 1227 (42000): Access denied;
Jag har försökt kolla upp det och förstår att jag måste skapa mig en "new user within the MySQL shell". Är jag på rätt spår?

Jag har försökt
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';, där newuser=root och password=root, för det är så det står när jag startar MAMP. Det är här jag får ERROR 1227 (42000): Access denied; och jag tror det är för att jag inte står i shell utan i mysql och då funkar det inte. Eller hur?

När jag startat terminal har jag lyckats ta mig till mysql genom att skriva
/Applications/MAMP/Library/bin/mysql

Men hur kommer jag till shell när jag startat terminal?

PS: jag är oerhört tacksam för er hjälp och tycker att ni förtjänar ett nobelpris var och en.

  • Medlem
  • Luleå
  • 2013-06-06 23:02

Fortfarande lite fundersam över hur och var php används så undrar jag ju lite smått varför inte php-koden syns när man kollar olika siter med webbgranskaren i safari? Eller det kanske man gör? Var? Inte <?php...........?> i alla fall.

  • Medlem
  • Luleå
  • 2013-06-05 22:17
  • Medlem
  • Luleå
  • 2013-06-05 12:52

grenhall, du hade rätt!! Oj, va bra codeacademysajten är!!!! Tack så väldigt för tipset.

  • Medlem
  • Luleå
  • 2013-06-04 10:05

grenhall, ytterligare en källa till ny kunskap. Tack;)!

  • Medlem
  • Luleå
  • 2013-06-04 10:01

"Kontrollera vilken teckentabell du sparar filen med i Smultron. Använder du UTF-8 ska det inte finnas något Byte Order Mark. Har du aktiverat utskrift av felmeddelanden?"

Det verkar vara UTF-8. Men var aktiverar jag "utskrift av felmeddelanden" i Smultron?

  • Medlem
  • Luleå
  • 2013-06-04 08:23
  • Medlem
  • Luleå
  • 2013-06-04 01:48

Hrrm, jo, jag undrade hur man skulle kunna använda och se php-kod om det inte fanns bland htmlkod i ett dokument med ändelsen .php? Kan man skriva bara php-kod i ett dokument, med ändelsen .php, och sedan använda det till nåt?(Jag har inte kommit till avsnittet om MySQL ännu. Kan jag kanske få en bredare uppfattning om php efter det?)

När vi ändå snuddar ämnet så undrar jag i övrigt om jag kan se phpkod användas i praktiken i min vardag? Var och hur används det? Hittills har jag kunnat ana mig till att det kanske används i försäkringskassans hemsida(villkorssattser), kanske i bankernas hemsidor(logiska operatorer), facebook och twitter(inloggning), eller? Kanske på 99.se(inloggning)?

När jag en gång i tiden, på skoj, började göra en hemsida kom den ena aha-upplevelsen efter den andra. Typ, "jaså, det är såå det funkar". Det var dreamweavers förtjänst. Ett så oerhört enkelt verktyg, som kunde göra så mycket och som man inte behövde en manual för att förstå. Det var bara att köra och efter ett tag hade man sajten klar. Sen insåg jag att man även kunde se koden, förstod vad den innebar och att man kunde ändra sajten även om man bara ändrade i koden. Aha-upplevelse. Detta bäddade för det intresse jag sitter med idag. Och jag vill lära mig mer. Jag vill få en aha-upplevelse även när det gäller php. Kan någon tipsa mig om var jag ska leta/titta efter för att se php användas i praktiken i min vardag?

(Igentligen kom den första aha-upplevelsen idag i kapitlet PHP functions & objekts, där man började skriva om class, object, functions osv och berörde att detta användes för att göra en "social networking site". Men mer kom inte. Typiskt. Jag hoppas det blir mer aha under kapitlet om MySQL. Men jag är lite rädd för att jag kommer att stöta på så mycket problem, att jag kanske måste kasta in handduken. Jag ögnade igenom avsnittet och insåg att jag skulle jobba i terminal, vilket jag aldrig gjort förut. Känns nästan omöjligt, som ett Mt Everest. Men hoppet är det sista som överger en;)).