object aanmaken in een klasse van dezelfde klasse

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

19/09/2004 23:21:00
Quote Anchor link
ik wil een functie maken om een gebruiker te verwijderen, maar hier zit een controle in, namelijk zoiets als control_delete_right, die controlleert of de persoon die wil verwijderen wel het recht ervoor heeft


in code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php

$verwijder_gebruiker
= new User (2);
$verwijder_gebruiker->delete_user (6);

//waarbij 2 de id van de te verwijderen persoon voorstelt
//en 6 de id van de persoon die 2 zal verwijderen


?>


hiervoor heb ik deze classe ontworpen :

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?
class User
{
    var
$userid;

    function
User($userid)
    {

      $this->userid = $userid;
    }
    
    function
delete_user ($delete_userid)
    {

       $gebruiker = new User ($delete_userid);
       if ($gebruiker->control_delete_right ()) {
          ....
       }

       else
          echo "geen rechten om user ".$userid." te verwijderen";
    }

    function
control_delete_right()
    {
       ..
    }
}

?>



maar dat werkt niet
kan je een object maken van dezelfde klasse User ?

zo nee, hoe kan ik het anders doen, zonder de functie control_delete_right als het ware te gaan overtypen..
 
PHP hulp

PHP hulp

16/01/2025 04:04:02
 
Mitch X

Mitch X

19/09/2004 23:32:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?
class Users
{
    var
$userid;

    function
User($userid)
    {

      $this->userid = $userid;
    }
    
    function
delete_user ($delete_userid)
    {

       $gebruiker = new User ($delete_userid);
       if ($gebruiker->control_delete_right ()) {
          ....
       }

       else
          echo "geen rechten om user ".$userid." te verwijderen";
    }

    function
control_delete_right()
    {
       ..
    }
}

?>


En dan:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php

$del
= new Users;
$del->User(2);
$del->delete_user(6);

//waarbij 2 de id van de te verwijderen persoon voorstelt
//en 6 de id van de persoon die 2 zal verwijderen


?>
 

19/09/2004 23:43:00
Quote Anchor link
dat is toch hetzelfde niet?
 
Eris -

Eris -

19/09/2004 23:47:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

$verwijder_gebruiker
= new User (2);
$verwijder_gebruiker->delete_user (6);  
?>

of
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php

$del
= new Users;
$del->User(2);
$del->delete_user(6);

//waarbij 2 de id van de te verwijderen persoon voorstelt
//en 6 de id van de persoon die 2 zal verwijderen


?>

Zie je nu het verschil? De laatste is goed
 

20/09/2004 00:02:00
Quote Anchor link
ok, ik zal eens testen, dus het is effectief mogelijk om een object te maken van de klasse waarin je die maakt ?
 
Mitch X

Mitch X

20/09/2004 00:16:00
Quote Anchor link
WTF?
 

20/09/2004 00:27:00
Quote Anchor link
ik heb het dus getest,
en het werkt

maar het zou anders ook gewerkt hebben met klasse User en functie User

de delete_userid werd namelijk niet correct doorgegeven aan het nieuwe object

maar ben dus toch iets te weten gekomen:
een object maken in een klasse uit diezelfde klasse werkt dus in php, geen problemen met environment !!!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.