php/mysql

Tags:    php mysql

Hej

Nogle der kan et smart måde og hente info ud af en mysql database'r
har en side hvor jeg skal hente info fra flere Tabler men i samme mysql database.

F.eks
Brugernavn fra tabel user
og besøg fra tabel besøg




6 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Hej Caspar,

Det er nemmest hvis du kan fortælle hvilke data du behøver og hvordan dine tabeller er opbygget.

Mvh
Mark S. Johansen



Hey Caspar. Tror ikke jeg forstår dit spørgsmål.

Du bruger SELECT-forespørgsler til at tilgå databaset. Normalt vil man bruge flere forespørgsler hvis flere tabellers data skal ud.
Eller JOIN's hvis de har noget til fælles.



altså hvis jeg har en side med div. info.

Hvor jeg skal vise:
Hvor mange besøgende der har været på siden.
Hvor mange billeder der er i gallariet.
Hvor mange brugere der i på siden.

men

Info om besøgende ligger i mysql tabel "Besog"
Info om gallariet ligger i mysql tabel "Gallari"
og info om bruger ligger i mysql tabel "user"

håber det er nemmer og forstå nu ? :D

Men Theis jeg skal bare lave flere select ?
Noget i den her stil eller ? Synes det ser meget forkert ud. :)
Fold kodeboks ind/udPHP kode 




Tjah, den smarteste måde er nok bare at skrive den kode der skal lave udtrækket. Har du flere steder hvordan laver samme udtræk kan du pakke det ind i en funktion.

Bruger du MySQLi API, kan du pakke dine API kald ind i et objekt, kaldet Databaseobjekt, som udfører disse kald ud fra et generisk synspunkt. Derefter pakker du kald til DatabaseObjekt ind i en model lign. klasse. Kald til denne model lign. klasse sker fra en controller lign. klasse som evt. sender data til en view lign. klasse. Og derved har du et MVC lign. setup. Men det nok at gå lidt for langt, men noget der bare ligner.

Så kan du benytte et færdigt framework, her er kan nævnes Zend, CakePHP, Symfony2, kohana m.fl. Men nu efterspurgte du jo en smart måde til hente data. Måske er Doctrine noget du kan bruge, men hvis det ikke skal være så avanceret igen:

Så er der PDO, eller MySQLi



Indlæg senest redigeret d. 09.10.2012 23:15 af Bruger #10216
Michael. Det lyder sku skide smart :D Men det er lang tid siden jeg har rodet med hjemmesider. Og er kommet til og love og lave en til en ven, Så vil gerne holde det på det gamle. mysql :D

Men kan man ikke gøre sådan her ?
Fold kodeboks ind/udPHP kode 


eller er det hel hen i hampen ?



og er kommet til og love og lave en til en ven, Så vil gerne holde det på det gamle. mysql :D

du er opmærksom på at i en af de næste vertioner af PHP er det gamle mysql API ikke understøttet merer, og så skal coden skrives om.
læs http://dk.php.net/manual/en/mysqlinfo.api.choosing.php

du kan lave et lille hop over til mysqli, ved at anvende "Procedural style" som du er vandt til.
hovedreglen er at alle mysql functioner bare får tilføjet et i,
mysql_xxx bliver til mysqli_xxx. men functionen kan have ændret parameter rækkefølge.
mysql_fetch_assoc bliver til mysqli_fetch_assoc
mysql_query($sql) bliver til mysqli_query($conn,$sql) , læg mærke til førhen var connection link default parameter, nu er den påkrævet som første parameter

men med tiden bør du omskrive det til OOP, og gerne anvende Prepared Statements læs feks denne guide http://www.eksperten.dk/guide/1480




t