Jacky_sd Posted February 18, 2015 Share Posted February 18, 2015 Hello guys! I really really really hope anyone can help me because I am quite desperate about a little project I'm making. I want to construct a sort of online catalog for books with a "shoppingcart" and a profile for every user, but object orientated. I have a database with the table products which contains: ID, title, author, genre, price etc etc etc My main question is: How can I get one single field from the database with e.g. a function called getPrice(); I tried everything but nothing displays the data the way i want to. I simply want to have a sql-statement in this function and when I am calling the function getPrice() later on it displays just the number and no Array, code or whatever. Is there a way to call getPrice() and get "20.00" back? Please Help! Quote Link to comment https://forums.phpfreaks.com/topic/294688-need-help-understanding-oo-programming/ Share on other sites More sharing options...
requinix Posted February 18, 2015 Share Posted February 18, 2015 Rather than have getPrice() do a query, and then have other methods doing their own queries, just do one query at the very start to get all the information at once. Store that in an array inside the object, then make getPrice() just get the one value out of it. class Product { private $data = array(); public function __construct($id) { $this->data = // get all the data for product #id } public function getPrice() { return $this->data["price"]; } }A bit simplistic but that should demonstrate my point. 2 Quote Link to comment https://forums.phpfreaks.com/topic/294688-need-help-understanding-oo-programming/#findComment-1505976 Share on other sites More sharing options...
Jacky_sd Posted February 20, 2015 Author Share Posted February 20, 2015 Thanks got it! Quote Link to comment https://forums.phpfreaks.com/topic/294688-need-help-understanding-oo-programming/#findComment-1506257 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.