Php & MySQL

Proj. - Alla får vara med!

2012-01-22 15:57 #0 av: [Fibbe]

Hej på er!

Jag tänkte dra igång ett större projekt inom Php (och html,css,javascript osv...). Ett sånt där projekt - Börja och se vart det slutar.

Vanligtvis brukar det sluta i papperskorgen men ändå kul att ha gjort något. Tvisten med det här projektet är att det går enligt principen "Alla får vara med.".

Man får vara med hur mycket man vill och hur lite man vill. Det enda kravet är att det (lilla eller mycket) man gör ska vara välgjort så att det inte blir gröt av all kod.

 

Jag börjar med att göra ett simpel community-ramverk som vi utgår ifrån. Projektet kommer sedan att läggas upp på en lämplig .se-adress och koden kommer att ligga publikt och tillgänglig för alla.

 

Så, fram med alla idéer och drömmar så sätter vi igång. Jag publicerar löpande hur arbetet fortskrider.

 

Lust att visa upp dina färdigheter och kreativa tänkade? Let's do it!

 

Källkod finns på GitHub:
https://github.com/FelixStridsberg/Alla-f-r-vara-med

Projektet ligger hostat på en gammal nedstängd blogg tills vidare:
[Nedstängd, ny ägare av domänen]

(Kommer att börja fungera senast 15:30 23/1)

 

För dem som vill testa men inte registrera sig finns ett testkonto:

Användarnamn: demo
Lösenord: demo

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-22 16:02 #1 av: [Fibbe]

Jag slängde lite snabbt ihop en design för att ha något att utgå ifrån, den kommer och ska ändras minst etthundratusen gånger!

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-22 19:08 #2 av: [Fibbe]

Den uppdaterade versionen kommer alltid att ligga:
https://github.com/FelixStridsberg/Alla-f-r-vara-med

Den kommer även att finnas publicerad på webben för testing inom kort.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 13:34 #3 av: [Fibbe]

Alla som vill kan ladda ner och testa systemet lokalt på datorn så länge, det som krävs är Php och mysql är installerat. MySQL strukturen finns i filen /includes/classes/FxS_Mysql.sql.php

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 14:38 #4 av: ryttarn

Låter intresant, får se hur mycket min tid tillåter......

Jerker Klang,
medarbetare på ponnytrav ifokus

Gemenskap, glädje och fart - ponnytrav såklart!

Stuteri Isil, Sagolika Gotlandsruss

www.isil.se

Anmäl
2012-01-23 14:48 #5 av: Stephanie

Låter kul! Skrattande Får skynda mig klart med plugget..!

Anmäl
2012-01-23 15:09 #6 av: [Fibbe]

Va kul att det är fler som tycker det låter kul Skrattande

Frågan är hur vi ska lägga upp detta på ett smidigt sätt! Jag använder mig av GIT som är synkad med github, så jag har alltid versionen på GitHub lokalt också.

Men vet inte hur många som kan git? Det är ju lite krånligt innan man lärt sig. En annan variant är att man laddar ner hela sajten från github till sin dator och kör den lokalt medan man ändrar, sen skickar man de filer man ändrat på till mig via mail eller nått, så lägger jag ihop updateringarna i dessa och eventuella updateringar som redan finns på github med git.

 

Med andra ord, det finns två alternativ:

1. Använd git och synka med projektet på github

2. Ladda ner hela projektet, göra det man vill och skicka filerna man ändrat till mig så sköter jag github-biten.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 15:14 #7 av: [Fibbe]

Jag kommer att slänga ihop en klass för att hantera profilinformation för användarna nu.

Information som jag gör möjligt tills vidare:

E-post

Pressentation

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 15:15 #8 av: Stephanie

Jag har inte sett git förut, men får sätta mig in i det sen då.

Nu fick jag nåt mål med att bli klar med plugget för idag! Skrattande

Anmäl
2012-01-23 15:31 #9 av: lilacs

Vet inte om jag är tillräckligt  bra på php...  glöm inte kommentera nuvarande funktioner så att alla (jag) fattar vad de gör :p

Anmäl
2012-01-23 15:37 #10 av: [Fibbe]

#9

Jag har försökt kommentera relativt mycket och gjort lite exempel och så i de större filerna som ligger i mappen: includes/classes

Men det är bara fråga om det är något oklart så gör jag en bättre förklaring!

Det behöver inte vara något stort man behöver göra till att börja med, man kan börja med lite smågrejer och sedan göra det mer avancerat vart efter man har lust och tid!

Just nu är ju sidan ganska tråkig eftersom det knappt finns några funktioner, säg till om du vill göra någon funktion så hjälper jag till!

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 17:00 #11 av: [Fibbe]

Nu går det att skriva på sin pressentation

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 17:23 #12 av: lilacs

hm git var verkligen inte enkelt, lyckades göra en fork men jag kan inte hämta ändringarna du gjorde senaste halvtimmen eller skicka upp mina ändringar till min egen fork. sen måste jag visst göra en egen branch men det går inte heller :p

Anmäl
2012-01-23 17:29 #13 av: [Fibbe]

Du behöver bara skapa en ny remote till mitt arkiv och fetcha allt.

Har du kollat på denna:

http://gitref.org/basic/#add

Det är steg för steg guide hur man kommer igång. Under kategorin remote står hur man ansluter till github

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 17:54 #14 av: [Fibbe]

De vanligaste kommandona:

Kolla status för vilka filer man lekt med:
git status -s

Håll koll på ny fil
git add filnamn

Lägg alla ändrade filer i utkorgen
git add -A

Skicka utkorgen till arkivet (lokalt på datorn)
git commit -m 'Kommentar, vad har man gjort'

Skicka arkivet till github
git push origin
(Om origin är namnet på anslutningen till github)

Synka arkiv med github
git fetch origin
(Om origin är namnet på anslutningen till github)

Slå samman gren som är nerhämtad från github med aktiv gren
git merge origin/master
(Där origin är anslutningen och master grenen man vill hämta)

 

 

 

 

Men för den som inte orkar lära sig detta går det att gå in på github via webben och tanka ner hela sajten som en .zip-fil och lägga i sin www mapp på datorn.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 19:34 #15 av: [Athinea]

Jag är intresserad av att hjälpa till! ... Är dock mest bra på html, grafik(design) och en ypperligt bra tankespridare :)

Medarbetare på Personligutveckling.ifokus

"Du kan titta nu, men du ser att det är jag och du, ännu. Jag har aldrig någonsin bett om mer än att få vara din. Innerst inne är vi alla skelett, likadana människor men på olika sätt."
Anmäl
2012-01-23 19:41 #16 av: [Fibbe]

#15

Design låter helt awesome!

Den designen som är nu har jag slängt ihop bara för att. Om du vill får du göra en helt ny, eller modifiera den som finns. Det är helt fritt!

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 20:13 #17 av: [Fibbe]

Tänkte fixa en sista grej ikväll. (ev, sista Skäms)

Ladda upp avatarer.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 20:45 #18 av: [Athinea]

#Härligt! Vill ha lite mer information om själva sidan, vad den kommer handla om och vad det hela går ut på, så jag har en mall i huvudet att gå efter! :)

Medarbetare på Personligutveckling.ifokus

"Du kan titta nu, men du ser att det är jag och du, ännu. Jag har aldrig någonsin bett om mer än att få vara din. Innerst inne är vi alla skelett, likadana människor men på olika sätt."
Anmäl
2012-01-23 20:54 #19 av: [Fibbe]

#18

Det är lite det som är utmaningen ;]

Sidan har ingen speciell riktning, det enda målet med sidan är att så många som möjligt ska vara med och pilla på koderna. Det kommer att bli en community med funktioner för att integrera användarna, men den kommer även fyllas med funktioner som folk helt enkelt vill programmera för skojskull.

Det kan sluta vart som helst

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 20:57 #20 av: Stephanie

Kan du förklara lite snabbt hur man gör för att komma igång med GIT? Skäms

Anmäl
2012-01-23 21:10 #21 av: [Fibbe]

#20

Jag lärde mig det förra veckan så jag är inge vidare på det än.

Men här är steg för steg installation med bilder:
http://help.github.com/win-set-up-git/

Och här är steg för steg hur man gör:
http://gitref.org/basic/#add

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 21:51 #22 av: lilacs

petitesser... men "placeholder" fungerar inte i IE: så man ser inte vad det är för fält man fyller i.

 

Anmäl
2012-01-23 21:54 #23 av: Stephanie

#22 Det är väl ingen petitess då... Tungan ute

Anmäl
2012-01-23 21:56 #24 av: lilacs

jag kan börja skissa på administrations sidorna

Anmäl
2012-01-23 21:59 #25 av: Stephanie

Jag fattar ingenting om jag ska vara ärlig! Har installerat programmet, skapat en användare, klickat på "fork" etc. Men jag vet inte vad som händer eller vad jag ska göra nu. Skäms

Anmäl
2012-01-23 22:00 #26 av: [Fibbe]

#22

Det är HTML5, du måste ha en gammal version av IE.

Går att fixa med javascript väldigt enkelt.

 

 

Edit: Skoja, IE har valt att strunta i att implementera placeholder. Det blir javascript för alla IE-användare.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 22:01 #27 av: lilacs

jag gav upp och laddade ner allt lokalt :p ska se om jag kan installera det...

Anmäl
2012-01-23 22:04 #28 av: [Fibbe]

#25

Pröva ladda ner lokalt så länge, jag fatta inte heller hur det funkade innan jag läst hela den där andra länken jag skickade.

Tungan ute

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 22:04 #29 av: lilacs

nej ie 9 stödjer det inte.  Det är en del annat i html 5 css3 som ie inte stöder med :(   men det är sånt som går att lösa ;)

 

Anmäl
2012-01-23 22:06 #30 av: [Fibbe]

#29

Jo jag har hållit lite koll på referenslistan när jag kodade med måste ha missat att IE valt bort det ^^

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 22:13 #31 av: [Fibbe]

Jag fixade inloggningen genom att slänga in:

<!--[if IE]> Användarnamn:<br> <![endif]-->

Ovanför fälten tills vidare, det syns bara i IE

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-23 22:57 #32 av: [Fibbe]

Nu fungerar Avatarsystemet.

Det får vara nog för ikväll!

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-24 10:58 #33 av: [Athinea]

Ska försöka få igång min andra burk idag som är något snabbare.. Sedan sätter jag igång med grafiken, kan även göra små ikoner (om det önskas) som man kan ha i olika kategorier?

Medarbetare på Personligutveckling.ifokus

"Du kan titta nu, men du ser att det är jag och du, ännu. Jag har aldrig någonsin bett om mer än att få vara din. Innerst inne är vi alla skelett, likadana människor men på olika sätt."
Anmäl
2012-01-24 11:19 #34 av: lilacs

Jag har försökt göra ett installations script men säkerhet är inte min starka sida. skickar länk i em.

Anmäl
2012-01-24 17:01 #35 av: lilacs
alla-install.zip

Jag har skapat en ny mapp som heter install (i huvudkatalogen), i den ska de bifogade filerna ligga.

index.php kollar att scriptet inte är installerat redan och skriver ut ett formulär där man tillfrågas om databasnamn osv.

är allt korrekt skapas filen FxS_Mysql_Config.php med datan från formuläret.

så den får inte finnas med i grundinstallationenCool

sedan skapas tabellerna i databasen.

(jag har använt mig av FxS_User.sql och lagt till fält för avatar)

till sist hänvisas man till kontoregistreringen.

.det finns en del kvar att göra tex så är det ju ett administratörs konto som ska skapas i det läget, inte en vanlig användare.

jag har bara ändrat i två filer egentligen så jag skickar med dem här i zippen.

med denna slipper ni ( om ni har rätt behörigheter på servern... ) skapa databasen manuellt

 

 

Anmäl
2012-01-24 17:33 #36 av: [Fibbe]

#35

Snyggt! Den ligger uppe på github nu!

FxS_Mysql_Config.php ligger nu mer bland klasserna, dit når man enklast med konstanten: CLASS_PATH, så jag ändrade det i din fil så att man kan lägga klasserna vart man vill och bara ändra på konstanten CLASS_PATH i FxS_Constants.php

 

Angående säkerhet så finns ett färdigt script som kan rensa indata som ska till mysql-fråga. Det ligger i FxS_Security.php och finns inkluderat som standard.

Det används så här:

$säker_data = FxS_Security::mysql_clean($osäker_data);

Jag har skrivit in det i din kod också.

 

Det ser kalas ut! Vi får komma ihåg att uppdatera den när databasstrukturen ändras!

 

 

EDIT: Kom på att FxS_Security kräven en fungerande databaslänk ^^ Det går att köra med mysql_escape_string istället. Det är nog det säkraste alternativet.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-24 17:38 #37 av: [Fibbe]

Angående admin-konto föresten:

FxS-systemet tillåter privlegier, som lagras i tabellen fxs_login_privileges.

Där kan man lägga in hur många privilegier per användare som helst.

Till exempel gör privilegiet user_admin att man kan ändra allas avatarer och allas profil-text.

Man kan göra ett privilegie som heter super_admin som ger privilegie till allt. Alltså när man har installerat så lägger man in användaren som vanligt samt en rad i privilegie-tabellen med värdet super_admin.

ELLER - ENKLARE!

När man skapar tabellen i databasen lägger man till en rad i privilegie-tabellen att användare 1 ska få super_admin som privilegie. Då får den första som registrerar sig super_admin egenskaper.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-25 00:05 #38 av: [Fibbe]

Lite sammanfattning av vad som hänt idag

lilacs - har gjort en installation till databasen!

 

Jag har fixat ordning lite med koden för att få det lite mindre rörigt och mer effektivt. Jag har bland annat döpt om alla exception till att börja med preffixet: FxS_Klass_Namn_ för att få mer ordning. Dessa är även flyttad till respektive klass-fil.

Jag har gjort en ny klass som heter FxS_Gallery som håller koll på vilka klasser som är importerade. Som standard importeras klasserna:

FxS_Exception (Innehåller vanliga allmänna exception)
FxS_Gallery
FxS_Mysql 
FxS_Address
FxS_Template
FxS_User

Vill man till exempel hämta information från en användares profil måste klassen FxS_Profile importeras. Detta görs genom den globala variabeln $FxS. Ex:

$FxS->import('FxS_Profile');

Sen kan man leka med FxS_Profile-klassen.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-26 20:34 #39 av: JonteL

Kan gärna vara med :)

Kan dock inte ett dugg om programmering - Dock är hyfsad på Photoshop och desig. Kan det vara till hjälp? :)

Anmäl
2012-01-26 21:01 #40 av: [Fibbe]

Absolut JonteL!

Just nu håller Athinea på med en design tror jag, hon kanske vill ha hjälp med något.

Annars måste givetvis designen utvecklas när det kommer nya funktioner och då behövs designers!

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-26 22:02 #41 av: [Fibbe]

Nu är klass-arkivet fint.

Högst upp i alla filer finns en enhetlig dokumentation över funktioner och information om hur man använder klassen i respektive fil.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-28 14:20 #42 av: [Fibbe]

Nu går det även att ändra lösenord och email från profilen.

Idag ska jag slänga ihop ett forum

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-28 14:21 #43 av: Stephanie

Jag måste försöka få det där att funka Skrikandes Gav upp när jag inte fattade hur man gjorde med Git.

Anmäl
2012-01-28 14:49 #44 av: [Fibbe]

#43

Det verkar finnas en grafisk version för windows också:

http://nathanj.github.com/gitguide/tour.html

Då behöver man inte lära sig massa kommandon

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-01-29 17:21 #45 av: [Fibbe]

Själva forumet är klart, håller på att bygga administration till det. Så man kan hantera inläggen innan jag lägger upp det online.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-02-04 13:54 #46 av: [Fibbe]

Nu har jag hunnit färdigställa grunden till forumet!

Det ligger båda på github och online, det finns ingen dokumentation till FxS_Forum-klassen ännu, jag skapar den så fort jag får tid.

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-02-05 14:02 #47 av: [Fibbe]

Jag har gjort en lite annan design för forumet för enklare anpassning i framtiden.

 

FxS_Forum - klassen, är nu mer dokumenterad!

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl
2012-03-23 18:14 #48 av: [Fibbe]

Nu när jag kan Git utan och innan ska jag spela in en lite videoguide som visar hur man gör. Den kommer i helgen om allt går som det skall!

Mvh Felix

Intresserad av Php, MySQL eller övrig webbprogrammering?
Välkommen till webbprogrammering.ifokus.se

Anmäl

Det finns en till kommentar till den här diskussionen. Den är bara synlig för medlemmar på iFokus. För att läsa kommentaren, logga in eller registrera dig på iFokus.