rgb192
asked on
Related question that allowed me to create this procedural code to loop through all the users
Related question that allowed me to create this procedural code to loop through all the users
https://www.experts-exchange.com/questions/28315794/create-many-instances-of-an-object-with-different-usernames.html
problem is the code is procedural and I need to close the foreach bracket } at the end of code
and if password changes, it is hard coded
I want an object oriented class to do this.
https://www.experts-exchange.com/questions/28315794/create-many-instances-of-an-object-with-different-usernames.html
// next create your Name Array
$input = array('user1','anotherUser', 'anotherUser2','bob');
foreach ($input as $uName) {
//from a config file. I decided to create object this each time to initiate the constructor
$m_instance = new mam($config);
$m_instance->default_username=$uName;
// works if all the users have 'password' as their password
$m_instance->default_password='password';
$m_instance->method();
//just to make sure that the instance is destructed
unset($m_instance);
// needs } at the end of code to close the foreach
}
problem is the code is procedural and I need to close the foreach bracket } at the end of code
and if password changes, it is hard coded
I want an object oriented class to do this.
ASKER
I think there should be a class with a constructor that accepts username and password.
Because if one user decides to change their password, this code requires if statements
I do not understand how setter and getter would work in this example
maybe set the username, password
and have the $mam class get the username,password
but I do not want to change the $mam class because I did not create it and class already works
Because if one user decides to change their password, this code requires if statements
I do not understand how setter and getter would work in this example
maybe set the username, password
and have the $mam class get the username,password
but I do not want to change the $mam class because I did not create it and class already works
... a class with a constructor that accepts username and passwordThat makes sense to me. The class would probably look up the user record (based on the username and password) and load the user record into memory. Perhaps it would store the user record information in the PHP session. There could be a lot of user information. For example you could connect the user to her viewing and purchase history, locale, and local business promotions. You could create a social graph of friends. All of these things could be created in the object at instantiation.
If() statements are not an evil. They are an indispensable tool to control the flow of logic.
$mam would make sense as a variable name, but the class name would not have a dollar-sign.
Where is the Mam class defined? Is this part of a tutorial or classroom lesson? It's not familiar to me.
ASKER
Where is the Mam class defined? Is this part of a tutorial or classroom lesson? It's not familiar to me.
custom code that interacts with our existing data to interact with users
If() statements are not an evil. They are an indispensable tool to control the flow of logic.
I would prefer object oriented class so I could learn, how can username and pass be initialized if the password is different for every user
$input = array('user1','anotherUser
$usernamePassword1 = array('user1','pass'),
$usernamePassword2 = array('anotherUser2','pass
$usernamePassword3 = array('anotherUser2','pass
$usernamePassword4 = array('bob',bobpass');
Each different "user" (however that term is defined) would be represented by a unique object instance of some kind of "user" class.
What would you have us make of the code here?
https://www.experts-exchange.com/questions/28336179/Related-question-that-allowed-me-to-create-this-procedural-code-to-loop-through-all-the-users.html?anchorAnswerId=39774985#a39774985
What would you have us make of the code here?
https://www.experts-exchange.com/questions/28336179/Related-question-that-allowed-me-to-create-this-procedural-code-to-loop-through-all-the-users.html?anchorAnswerId=39774985#a39774985
ASKER
Each different "user" (however that term is defined) would be represented by a unique object instance of some kind of "user" class.okay the user class will have a constructor with two variables username and password
What would you have us make of the code here?I created an example where each username had a different password.
I do not even understand how to do this with procedural if
maybe procedural case
and I think that there will be copy paste errors as new users are added.
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
database connection is an answer because only mam class has access to database
(does not work for me personally)
thanks
related question:
https://www.experts-exchange.com/questions/28336597/Assume-that-mam-class-is-a-black-box-new-user-class-does-not-have-access-to-database.html
(does not work for me personally)
thanks
related question:
https://www.experts-exchange.com/questions/28336597/Assume-that-mam-class-is-a-black-box-new-user-class-does-not-have-access-to-database.html
OOP and procedural code coexist beautifully, and it's the programmer's task to know what tool to use for the job at hand. Sometimes you need a hammer, sometimes you need a wrench.
What you might consider is the use of setter() and getter() functions in concert with protected properties. This would be better form than just injecting properties into the objects. Good description and example here:
http://php.net/manual/en/language.oop5.visibility.php#108711