Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2685 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Pkoi elle veut pas la methode etre en public??

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Pkoi elle veut pas la methode etre en public??

n°1283779
bakastef
Posté le 14-01-2006 à 22:23:46  profilanswer
 

:bounce:  :hello:   Yop
 
 
Voila, je developpe un site en (full) objet, et je rencontre un petit probleme.
 
Dans UNE de mes nombreuses classes, il y a 2 methodes qui ne veulent pas etre déclaré en public. (ni meme en privé j ai teste pas curiosite)
 
Evidemment ca me retourne :" Parse error: parse error, unexpected T_PUBLIC in ...", mais je vois pas pkoi
 :pt1cable:  :sweat:     :ouch:    :heink:  
 
Alors si quelqu un a une idee... :jap:  
 
Merci d'avance.
     


---------------
triste époque ou il est plus difficile de casser un préjugé qu'un atome(A.Einstein)
mood
Publicité
Posté le 14-01-2006 à 22:23:46  profilanswer
 

n°1283781
naceroth
Posté le 14-01-2006 à 22:26:41  profilanswer
 

Nous non plus.
 
(boule de cristal, extrait de code, tout ça)

n°1283783
bakastef
Posté le 14-01-2006 à 22:30:00  profilanswer
 

oki je veut bien, voici la classe, tu l'auras voulu
 
 
edit: pour aider un peu, adaptateurMySQL c'est une classe singleton qui implemente une interface adaptateurBD afin de rendre independant le format de la bdd avec mes classes entités.
 
Rien à dire sur les classes entContact et entVilles, elles sont plus simples que cette classe.

Code :
  1. include ("entContact.php" );
  2. include ("entVille.php" );
  3.   class entEntreprise
  4.   {
  5.       private $TabContacts;
  6.      private $Taille;
  7.       private $Siret;
  8.      private $Nom;
  9.      private $Secteur;
  10.      private $Tel;
  11.      private $Fax;
  12.      private $AdrNum;
  13.      private $AdrRue;
  14.      private $AdrComp;
  15.      private $NomVille;
  16.      private $CodePostal;
  17.      function __construct($Siret, $Nom, $Secteur, $Tel, $Fax, $AdrNum, $AdrRue, $AdrComp, $NomVille, $CodePostal)
  18.      {
  19.       // initialisation du TabContacts
  20.       $this->TabContacts = array();
  21.      $this->Taille = 0;
  22.       $this->Siret = $Siret;
  23.       $this->Nom = $Nom;
  24.       $this->Secteur = $Secteur;
  25.       $this->Tel = $Tel;
  26.       $this->Fax = $Fax;
  27.       $this->AdrNum = $AdrNum;
  28.       $this->AdrRue = $AdrRue;
  29.       $this->AdrComp = $AdrComp;
  30.      $this->NomVille = $NomVille;
  31.      $this->CodePostal = $CodePostal;
  32.      }
  33.  //**************************
  34.  //     Ascesseurs
  35.  //**************************
  36.     public function getSiret()
  37.     {
  38.      return $this->Siret;
  39.     }
  40.      
  41.     public function getTaille()
  42.     {
  43.      //return $this->Taille;
  44.      return sizeof($this->TabContacts);
  45.     }
  46.      
  47.     private function existeVille($NomVille, $CodePostal)
  48.     // Fonction qui recherche l'existence d'un enregistrement ville ds la BDD
  49.     // retourne False si erreur d'execution de requete, -1 si pas de résultat, l'id de l'enregistrement sinon
  50.     {
  51.      $Req = "SELECT IdVille FROM Ville WHERE NomVille='".$NomVille."' AND CodePostal='".$CodePostal."' ";
  52.       if ( $Res=adaptateuMySQL::getInstance()->selectQuery($Req) == FALSE)
  53.        { return FALSE; }
  54.       if ( $Res=adaptateuMySQL::getInstance()->selectQuery($Req) == -1)
  55.        { return -1; }
  56.       else
  57.       {
  58.        //-------------------------------------------------
  59.        //nouvelle ville saisie existe ds la base de donnée
  60.      
  61.        $Id= $Res[0][0];  // resultat unique ds la1ere case du premier tableau
  62.        return $Id;
  63.      }
  64.      
  65.     function createVille($NomVille, $CodePostal)
  66.     // Fonction qui créée une nouvelle ville ds la BDD
  67.     // retourne TRUE si la ville estcrée, FALSE sinon
  68.     {
  69.      $Req=" INSERT INTO Ville (NomVille, CodePostal)
  70.        VALUES ('".$this->NomVille."', '".$this->CodePostal."') ";
  71.      return (adaptateuMySQL::getInstance()->executeQuery($Req) );
  72.     }
  73.     function modifEntreprise($Siret, $Nom, $Secteur, $Tel, $Fax, $AdrNum, $AdrRue, $AdrComp, $NomVille, $CodePostal)
  74.     // Methode qui permet de modifier les infrmation d'une entreprise: ds l'objet et ds la BDD
  75.     // retourne TRUE si modif effectuée, FALSE sinon
  76.     {
  77.      $modifVille=0;        
  78.      if ( ( $NomVille != $this->NomVille) || ( $CodePostal != $this->CodePostal) )
  79.       { $modifVille=1; }
  80.  
  81.      
  82.   //*********************************
  83.   // requete de mise à jour de la BDD  (en premier car source d'erreur)
  84.   //*********************************
  85.      //--------------------------------------------------------------------------------------------------------------------------
  86.      if ( $modifVille==0 )  // pas de modif ville, requete uniquement sur infos de Entreprise
  87.       {
  88.        $Req = "UPDATE Entreprise SET
  89.         (SIRET = '".$Siret."', Nom = '".$Nom."', Secteur = '".$Secteur."',
  90.          Tel = '".$Tel."', Fax = '".$Fax."', AdrNum = '".$AdrNum."',
  91.          AdrRue = '".$AdrRue."', AdrComp = '".$AdrComp."')";
  92.       if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  93.        { return FALSE;}  
  94.       }
  95.       //--------------------------------------------------------------------------------------------------------------------------
  96.       else      // modification de la ville:
  97.             //  * test ville existe (cp+Nom),
  98.       {       //  * Si existe, modifie juste l'id ds la table entreprise
  99.             //  * sinon, création d'un new enregistrement Ville, puis recup de l'id de cet enreg
  100.             //    (auto incremente) , puis update entreprise avec new ID
  101.        
  102.    
  103.       if ( $Id=existeVille($this->NomVille, $this->CodePostal) == FALSE)
  104.        { return FALSE; }
  105.       if ( $Id=existeVille($this->NomVille, $this->CodePostal) != -1)
  106.        {
  107.        //-------------------------------------------------
  108.        //nouvelle ville saisie existe ds la base de donnée  
  109.        $Req = "UPDATE Entreprise SET
  110.         (SIRET = '".$Siret."', Nom = '".Nom."', Secteur = '".$Secteur."',
  111.          Tel = '".$Tel."', Fax = '".$Fax."', AdrNum = '".$AdrNum."',
  112.          AdrRue = '".$AdrRue."', AdrComp = '".$AdrComp."', IdVille = '".$Id."')";
  113.        if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  114.         { return FALSE;}
  115.        }
  116.        else
  117.        {
  118.        //-------------------------------------------------------
  119.        //nouvelle ville saisie n'existe pas ds la base de donnée
  120.        
  121.        
  122.        if( createVlle($this->NomVille, $this->CodePostal) )       //création ville
  123.         {
  124.          
  125.          if ( $Id=existeVille($this->NomVille, $this->CodePostal) == FALSE)
  126.          { return FALSE; }
  127.          if ( $Id=existeVille($this->NomVille, $this->CodePostal) != -1)   // recup new ID
  128.           {
  129.            $Req = "UPDATE Entreprise SET
  130.              (SIRET = '".$Siret."', Nom = '".$Nom."', Secteur = '".$Secteur."',
  131.              Tel = '".$Tel."', Fax = '".$Fax."', AdrNum = '".$AdrNum."',
  132.              AdrRue = '".$AdrRue."', AdrComp = '".$AdrComp."', IdVille = '".$Id."')";
  133.            if(!adaptateuMySQL::getInstance()->executeQuery($Req))   // MAJ entreprise avec new id ville
  134.             { return FALSE;}
  135.           }
  136.          else{ return FALSE;}
  137.         }
  138.        else{ return FALSE;}
  139.        }
  140.       }
  141.        
  142.   //****************************************
  143.   // mise à jour des attributs de l instance
  144.   //****************************************
  145.      $this->Siret = $Siret;
  146.       $this->Nom = $Nom;
  147.       $this->Secteur = $Secteur;
  148.       $this->Tel = $Tel;
  149.       $this->Fax = $Fax;
  150.       $this->AdrNum = $AdrNum;
  151.       $this->AdrRue = $AdrRue;
  152.       $this->AdrComp = $AdrComp;        
  153.      $this->NomVille=$NomVille;
  154.      $this->CodePostal = $CodePostal;
  155.  
  156.      return TRUE;
  157.      }
  158.      
  159.     public function addEntreprise()
  160.     // fonction qui ajoute une entreprise ds la base de données
  161.     // retourne TRUE si l'ajout est effectué, FALSE sinon
  162.     {
  163.      if ( $Id=existeVille($this->NomVille, $this->CodePostal) == FALSE)
  164.      { return FALSE; }
  165.      if ( $Id=existeVille($this->NomVille, $this->CodePostal) != -1)    
  166.      {
  167.         // ville existe recup ID
  168.        $Req =" INSERT INTO Entreprise
  169.         VALUES (SIRET = '".$this->Siret."', Nom = '".$this->Nom."', Secteur = '".$this->Secteur."',
  170.           Tel = '".$this->Tel."', Fax = '".$this->Fax."', AdrNum = '".$this->AdrNum."',
  171.           AdrRue = '".$this->AdrRue."', AdrComp = '".$this->AdrComp."', IdVille = '".$Id."')";
  172.       if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  173.        {return false;}
  174.      }
  175.      else
  176.      {
  177.       //ville a créer+recup Id+ inserer new entreprise
  178.       if( createVlle($this->NomVille, $this->CodePostal) )       //création ville
  179.         {
  180.          
  181.          if ( $Id=existeVille($this->NomVille, $this->CodePostal) == FALSE)
  182.          { return FALSE; }
  183.          if ( $Id=existeVille($this->NomVille, $this->CodePostal) != -1)   // recup new ID
  184.           {
  185.            $Req =" INSERT INTO Entreprise
  186.              VALUES (Siret='".$this->Siret."', Nom='".$this->Nom."', Secteur='".$this->Secteur."',
  187.                Tel='".$this->Tel."', Fax='".$this->Fax."', AdrNum='".$this->AdrNum."',
  188.                AdrRue='".$this->AdrRue."', AdrComp='".$this->AdrComp."', IdVille='".$Id."')";
  189.            if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  190.             {return false;}
  191.           }
  192.          else{ return FALSE;}
  193.         }
  194.        else{ return FALSE;}
  195.        }
  196.      }
  197.      return TRUE;
  198.     }
  199.    
  200.      public function delEntreprise()
  201.     // Fonction qui vasupprimer une entreprise ds la base de donnees
  202.     // returne TRUE si l'entreprise est supprimée, FALSE sinon
  203.     {
  204.      
  205.      $Req = "SELECT COUNT(E.IdVille) FROM Entreprise E, Ville V
  206.        WHERE E.IdVille=V.IdVille
  207.         AND V.NomVille='".$this->NomVille."'
  208.         AND V.CodePostal= '".$this->CodePostal."' ";  
  209.      if($Res=adaptateuMySQL::getInstance()->selectQuery($Req) ==FALSE)
  210.       { return FALSE; }
  211.      if($Res=adaptateuMySQL::getInstance()->selectQuery($Req) != -1)
  212.      {
  213.       if ( ($Res[0][0]) < 2 )  // ville non referencée ou uniquement par l'entreprise en cours d effacement
  214.       {
  215.        // efface ville
  216.        $Req = "DELETE FROM Ville   
  217.          WHERE IdVille=( SELECT IdVille FROM Entreprise  
  218.              WHERE Siret='".$this->Siret."')
  219.            ";
  220.        if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  221.         {return FALSE;}
  222.        // efface entreprise
  223.        $Req = "DELETE FROM Entreprise WHERE SIRET = '".$this->Siret."'";
  224.        if(adaptateuMySQL::getInstance()->executeQuery($Req))
  225.         {return TRUE; }
  226.        else{return FALSE;}
  227.       }
  228.       else      // ville utilisee par d'autre entreprises
  229.       {
  230.        //efface entreprise
  231.        $Req = "DELETE FROM Entreprise WHERE SIRET = '".$this->Siret."'";
  232.        if(adaptateuMySQL::getInstance()->executeQuery($Req))
  233.         {return TRUE; }
  234.        else{return FALSE;}
  235.       }
  236.      }
  237.      else {return FALSE;}
  238.      return TRUE;
  239.      }
  240.      
  241.      
  242.      
  243.     // fonctions pour les contacts
  244.     public function createTabContacts()
  245.     {
  246.      // requete
  247.      $Req = "SELECT * FROM Contact WHERE Siret = '".$this->Siret."'";
  248.      $Res = adaptateuMySQL::getInstance()->selectQuery($Req);
  249.      foreach ($Res as $ligne)
  250.      {
  251.       $this->TabContacts[$this->Taille] = new entContact($ligne[0], $ligne[1], $ligne[2], $ligne[3], $ligne[4], $ligne[5]);
  252.      $this->Taille = $this->Taille + 1;
  253.      }
  254.     }
  255.      
  256.     public function addContact($id, $n, $pren, $email, $t, $p)
  257.     {
  258.      $cont = new Contact($id, $n, $pren, $email, $t, $p);
  259.      $cont.addContact();
  260.      
  261.      $this->Taille = $this->Taille + 1;
  262.      $this->TabContacts[$this->Taille] = $cont;
  263.     }
  264.      
  265.     public function chercheContact($id)
  266.     {
  267.      $cpt = 0;
  268.      while (($this->TabContacts[$cpt].getId() != $id) && ($cpt < $this->Taille))
  269.      {
  270.      $cpt = $cpt + 1;
  271.      }
  272.      
  273.      if ($cpt == $this->Taille)
  274.          return -1;
  275.      else
  276.        return $cpt;
  277.     }
  278.      
  279.     public function delContact($id)
  280.     {
  281.      if (($cpt = chercheContact($id)) == -1)
  282.          return false;
  283.      else
  284.      {
  285.       $this->TabContacts[$cpt].delContact(); // enlève le contact de la BD
  286.       unset($this->TabContacts[$cpt]); // détruit l'objet contact
  287.        
  288.       // décalage de la fin du tableau
  289.       while ($cpt < ($this->Taille - 1))
  290.       {
  291.        $this->TabContacts[$cpt] = $this->TabContacts[$cpt + 1];
  292.        $cpt = $cpt + 1;      
  293.       }
  294.       $this->Taille = $this->Taille - 1;
  295.       return true;
  296.      }      
  297.     }  
  298.      
  299.     public function modifContact($id, $n, $pren, $email, $t, $p)
  300.     {
  301.      if (($cpt = chercheContact($id)) == -1)
  302.          return false;
  303.      else
  304.      {
  305.       $this->TabContacts[$cpt].modifContact(); // modifie le contact dans la BD
  306.       return true;
  307.      }
  308.      }
  309.   }


Message édité par bakastef le 14-01-2006 à 22:49:44

---------------
triste époque ou il est plus difficile de casser un préjugé qu'un atome(A.Einstein)
n°1283784
bakastef
Posté le 14-01-2006 à 22:31:27  profilanswer
 

j  oubliais, c est addEntreprise, et modifEntreprise ki veulent pas etre public    ^^


Message édité par bakastef le 14-01-2006 à 22:35:05

---------------
triste époque ou il est plus difficile de casser un préjugé qu'un atome(A.Einstein)
n°1283785
Manu la Sc​ience
...la science ... pas toujours
Posté le 14-01-2006 à 22:39:57  profilanswer
 

Il manque pas un passage d'arguments pour les deux fonctions ?
 
addEntreprise($maville, ....)


---------------
Proverbe chinois: il vaut mieux apprendre à pêcher à un mendiant que de lui donner du poisson...
n°1283786
bakastef
Posté le 14-01-2006 à 22:44:58  profilanswer
 

nope, elles ont pas de parametres puisque c est les attributs que l'objet a recu a sa creation ou a la modif qui vont etre enregistré en dur ds la bdd..


---------------
triste époque ou il est plus difficile de casser un préjugé qu'un atome(A.Einstein)
n°1283788
bakastef
Posté le 14-01-2006 à 22:46:43  profilanswer
 

A la limite, que les fonctions marchent ou pas c est un autre probleme; la je peux meme pas tester car il me plante l'erreur avant d'executer quoi que ce soit..  :(


---------------
triste époque ou il est plus difficile de casser un préjugé qu'un atome(A.Einstein)
n°1283790
sielfried
Posté le 14-01-2006 à 23:05:21  profilanswer
 

Quand t'as une parse error, ça t'indique une ligne.
 
Donne-nous ce que t'as à cette ligne, et à celle d'avant.


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
n°1283791
naceroth
Posté le 14-01-2006 à 23:05:31  profilanswer
 

Moui, c'est un peu logique qu'elles ne veulent pas du public tes deux fonctions, tu les déclares comme fonctions à l'intérieur d'une méthode, pas comme méthodes elle-même :)

n°1283794
bakastef
Posté le 14-01-2006 à 23:27:11  profilanswer
 

Ben les numeros de ligne, c est les lignes de declaration des 2 fonctions
l85 et 179
 
Et non je les declare pas en tant que fonction... j ai pas le choix, je suis oblige de viré les public pour que ca marche... prb, ben j'y ai plus acces  apres...  


---------------
triste époque ou il est plus difficile de casser un préjugé qu'un atome(A.Einstein)
mood
Publicité
Posté le 14-01-2006 à 23:27:11  profilanswer
 

n°1283800
masklinn
í dag viðrar vel til loftárása
Posté le 15-01-2006 à 00:05:49  profilanswer
 

fonction "existeVille" pas fermée, les deux suivantes sont déclarées à l'intérieur...
 
(à part ça je vois fichtrement pas ce que la création ou le test d'existence d'une ville foutent dans une classe gérant une entreprise [:pingouino])
 
D'ailleurs j'aime bien également le side-effect de la suppression d'une entreprise qui peut parfaitement, au passage, supprimer une ville [:dawa]


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1283835
naceroth
Posté le 15-01-2006 à 01:16:38  profilanswer
 

bakastef a écrit :

Ben les numeros de ligne, c est les lignes de declaration des 2 fonctions
l85 et 179
 
Et non je les declare pas en tant que fonction... j ai pas le choix, je suis oblige de viré les public pour que ca marche... prb, ben j'y ai plus acces  apres...


 
Ah bah non, dès que tu fermes pas la méthode qui précède avant d'en déclarer une nouvelle, tu déclares une fonction normale :) Le plus amusant dans ton truc, c'est que malgré ça, le nombre de { = le nombre de } :D

n°1283974
Dj YeLL
$question = $to_be || !$to_be;
Posté le 15-01-2006 à 14:48:30  profilanswer
 

Je veux pas dire, mais c'est porco comme code :o
 
Les boucle sont fermée à la nimp ... je ne sais même pas comment on peut arriver à un tel résultat :D
 
BOn, essaye voir ça :
 

Code :
  1. <?php
  2.  
  3. include ("entContact.php" );
  4. include ("entVille.php" );
  5. class entEntreprise
  6. {
  7.    private $TabContacts;
  8.    private $Taille;
  9.  
  10.    private $Siret;
  11.    private $Nom;
  12.    private $Secteur;
  13.    private $Tel;
  14.    private $Fax;
  15.    private $AdrNum;
  16.    private $AdrRue;
  17.    private $AdrComp;
  18.    private $NomVille;
  19.    private $CodePostal;
  20.  
  21.    function __construct($Siret, $Nom, $Secteur, $Tel, $Fax, $AdrNum, $AdrRue, $AdrComp, $NomVille, $CodePostal)
  22.    {
  23.        // initialisation du TabContacts
  24.        $this->TabContacts = array();
  25.        $this->Taille = 0;
  26.    
  27.        $this->Siret = $Siret;
  28.        $this->Nom = $Nom;
  29.        $this->Secteur = $Secteur;
  30.        $this->Tel = $Tel;
  31.        $this->Fax = $Fax;
  32.        $this->AdrNum = $AdrNum;
  33.        $this->AdrRue = $AdrRue;
  34.        $this->AdrComp = $AdrComp;
  35.        $this->NomVille = $NomVille;
  36.        $this->CodePostal = $CodePostal;
  37. }
  38.  
  39.  
  40. //**************************
  41. //     Ascesseurs
  42. //**************************
  43. public function getSiret()
  44. {
  45.    return $this->Siret;
  46. }
  47.  
  48. public function getTaille()
  49. {
  50.    //return $this->Taille;
  51.    return sizeof($this->TabContacts);
  52. }
  53.  
  54.  
  55. private function existeVille($NomVille, $CodePostal)
  56. // Fonction qui recherche l'existence d'un enregistrement ville ds la BDD
  57. // retourne False si erreur d'execution de requete, -1 si pas de résultat, l'id de l'enregistrement sinon
  58. {
  59.    $Req = "SELECT IdVille FROM Ville WHERE NomVille='".$NomVille."' AND CodePostal='".$CodePostal."' ";
  60.    if ( $Res=adaptateuMySQL::getInstance()->selectQuery($Req) == FALSE)
  61.    { return FALSE; }
  62.    if ( $Res=adaptateuMySQL::getInstance()->selectQuery($Req) == -1)
  63.    { return -1; }
  64.    else
  65.    {
  66.        //-------------------------------------------------
  67.        //nouvelle ville saisie existe ds la base de donnée
  68.    
  69.        $Id= $Res[0][0];        // resultat unique ds la1ere case du premier tableau
  70.        return $Id;
  71.    }
  72. }
  73.  
  74. function createVille($NomVille, $CodePostal)
  75. // Fonction qui créée une nouvelle ville ds la BDD
  76. // retourne TRUE si la ville estcrée, FALSE sinon
  77. {
  78.    $Req="    INSERT INTO Ville (NomVille, CodePostal)
  79.    VALUES ('".$this->NomVille."', '".$this->CodePostal."') ";
  80.  
  81.    return (adaptateuMySQL::getInstance()->executeQuery($Req) );
  82. }
  83.  
  84.  
  85. function modifEntreprise($Siret, $Nom, $Secteur, $Tel, $Fax, $AdrNum, $AdrRue, $AdrComp, $NomVille, $CodePostal)
  86. // Methode qui permet de modifier les infrmation d'une entreprise: ds l'objet et ds la BDD
  87. // retourne TRUE si modif effectuée, FALSE sinon
  88. {
  89.  
  90.    $modifVille=0;
  91.  
  92.    if ( ( $NomVille != $this->NomVille) || ( $CodePostal != $this->CodePostal) )
  93.    {    $modifVille=1; }
  94.  
  95.  
  96.    //*********************************
  97.    // requete de mise à jour de la BDD  (en premier car source d'erreur)
  98.    //*********************************
  99.    
  100.    //--------------------------------------------------------------------------------------------------------------------------
  101.    if ( $modifVille==0 )        // pas de modif ville, requete uniquement sur infos de Entreprise
  102.    {
  103.        $Req = "UPDATE Entreprise SET
  104.        (SIRET = '".$Siret."', Nom = '".$Nom."', Secteur = '".$Secteur."',
  105.        Tel = '".$Tel."', Fax = '".$Fax."', AdrNum = '".$AdrNum."',
  106.        AdrRue = '".$AdrRue."', AdrComp = '".$AdrComp."')";
  107.  
  108.        if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  109.        { return FALSE;}
  110.    }
  111.    //--------------------------------------------------------------------------------------------------------------------------
  112.    else                        // modification de la ville:
  113.    //        * test ville existe (cp+Nom),
  114.    {                            //        * Si existe, modifie juste l'id ds la table entreprise
  115.        //        * sinon, création d'un new enregistrement Ville, puis recup de l'id de cet enreg
  116.        //          (auto incremente) , puis update entreprise avec new ID
  117.  
  118.  
  119.        if ( $Id=existeVille($this->NomVille, $this->CodePostal) == FALSE)
  120.        { return FALSE; }
  121.        if ( $Id=existeVille($this->NomVille, $this->CodePostal) != -1)
  122.        {
  123.            //-------------------------------------------------
  124.            //nouvelle ville saisie existe ds la base de donnée
  125.            
  126.            $Req = "UPDATE Entreprise SET
  127.            (SIRET = '".$Siret."', Nom = '".Nom."', Secteur = '".$Secteur."',
  128.            Tel = '".$Tel."', Fax = '".$Fax."', AdrNum = '".$AdrNum."',
  129.            AdrRue = '".$AdrRue."', AdrComp = '".$AdrComp."', IdVille = '".$Id."')";
  130.            
  131.            if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  132.            { return FALSE;}
  133.        }
  134.        else
  135.        {
  136.            //-------------------------------------------------------
  137.            //nouvelle ville saisie n'existe pas ds la base de donnée
  138.    
  139.  
  140.            if( createVlle($this->NomVille, $this->CodePostal) )                            //création ville
  141.            {
  142.            
  143.                if ( $Id=existeVille($this->NomVille, $this->CodePostal) == FALSE)
  144.                { return FALSE; }
  145.                if ( $Id=existeVille($this->NomVille, $this->CodePostal) != -1)            // recup new ID
  146.                {
  147.                    $Req = "UPDATE Entreprise SET
  148.                    (SIRET = '".$Siret."', Nom = '".$Nom."', Secteur = '".$Secteur."',
  149.                    Tel = '".$Tel."', Fax = '".$Fax."', AdrNum = '".$AdrNum."',
  150.                    AdrRue = '".$AdrRue."', AdrComp = '".$AdrComp."', IdVille = '".$Id."')";
  151.  
  152.                    if(!adaptateuMySQL::getInstance()->executeQuery($Req))            // MAJ entreprise avec new id ville
  153.                    { return FALSE;}
  154.                }
  155.                else{ return FALSE;}
  156.            }
  157.            else{ return FALSE;}
  158.        }
  159.    }
  160.  
  161.  
  162.    //****************************************
  163.    // mise à jour des attributs de l instance
  164.    //****************************************
  165.    $this->Siret = $Siret;
  166.    $this->Nom = $Nom;
  167.    $this->Secteur = $Secteur;
  168.    $this->Tel = $Tel;
  169.    $this->Fax = $Fax;
  170.    $this->AdrNum = $AdrNum;
  171.    $this->AdrRue = $AdrRue;
  172.    $this->AdrComp = $AdrComp;
  173.    $this->NomVille=$NomVille;
  174.    $this->CodePostal = $CodePostal;
  175.  
  176.    return TRUE;
  177. }
  178.  
  179. public function addEntreprise()
  180. // fonction qui ajoute une entreprise ds la base de données
  181. // retourne TRUE si l'ajout est effectué, FALSE sinon
  182. {
  183.    if ( $Id=existeVille($this->NomVille, $this->CodePostal) == FALSE)
  184.    { return FALSE; }
  185.    if ( $Id=existeVille($this->NomVille, $this->CodePostal) != -1)
  186.    {
  187.        // ville existe recup ID
  188.  
  189.        $Req ="    INSERT INTO Entreprise
  190.        VALUES (SIRET = '".$this->Siret."', Nom = '".$this->Nom."', Secteur = '".$this->Secteur."',
  191.        Tel = '".$this->Tel."', Fax = '".$this->Fax."', AdrNum = '".$this->AdrNum."',
  192.        AdrRue = '".$this->AdrRue."', AdrComp = '".$this->AdrComp."', IdVille = '".$Id."')";
  193.        if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  194.        {return false;}
  195.    }
  196.    else
  197.    {
  198.        //ville a créer+recup Id+ inserer new entreprise
  199.  
  200.        if( createVlle($this->NomVille, $this->CodePostal) )                            //création ville
  201.        {
  202.    
  203.            if ( $Id=existeVille($this->NomVille, $this->CodePostal) == FALSE)
  204.            { return FALSE; }
  205.            if ( $Id=existeVille($this->NomVille, $this->CodePostal) != -1)            // recup new ID
  206.            {
  207.                $Req ="    INSERT INTO Entreprise
  208.                VALUES (Siret='".$this->Siret."', Nom='".$this->Nom."', Secteur='".$this->Secteur."',
  209.                Tel='".$this->Tel."', Fax='".$this->Fax."', AdrNum='".$this->AdrNum."',
  210.                AdrRue='".$this->AdrRue."', AdrComp='".$this->AdrComp."', IdVille='".$Id."')";
  211.                if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  212.                {return false;}
  213.            }
  214.            else{ return FALSE;}
  215.        }
  216.        else{ return FALSE;}
  217.    }
  218.  
  219. return TRUE;
  220. }
  221.  
  222. public function delEntreprise()
  223. // Fonction qui vasupprimer une entreprise ds la base de donnees
  224. // returne TRUE si l'entreprise est supprimée, FALSE sinon
  225. {
  226.  
  227. $Req = "SELECT COUNT(E.IdVille) FROM Entreprise E, Ville V
  228. WHERE E.IdVille=V.IdVille
  229. AND V.NomVille='".$this->NomVille."'
  230. AND V.CodePostal= '".$this->CodePostal."' ";
  231.  
  232. if($Res=adaptateuMySQL::getInstance()->selectQuery($Req) ==FALSE)
  233. { return FALSE; }
  234. if($Res=adaptateuMySQL::getInstance()->selectQuery($Req) != -1)
  235. {
  236.  
  237. if ( ($Res[0][0]) < 2 )        // ville non referencée ou uniquement par l'entreprise en cours d effacement
  238. {
  239. // efface ville
  240.  
  241. $Req = "DELETE FROM Ville
  242. WHERE IdVille=( SELECT IdVille FROM Entreprise
  243. WHERE Siret='".$this->Siret."')
  244. ";
  245. if(!adaptateuMySQL::getInstance()->executeQuery($Req))
  246. {return FALSE;}
  247.  
  248.  
  249. // efface entreprise
  250.  
  251. $Req = "DELETE FROM Entreprise WHERE SIRET = '".$this->Siret."'";
  252. if(adaptateuMySQL::getInstance()->executeQuery($Req))
  253. {return TRUE; }
  254. else{return FALSE;}
  255. }
  256. else                        // ville utilisee par d'autre entreprises
  257. {
  258. //efface entreprise
  259.  
  260. $Req = "DELETE FROM Entreprise WHERE SIRET = '".$this->Siret."'";
  261. if(adaptateuMySQL::getInstance()->executeQuery($Req))
  262. {return TRUE; }
  263. else{return FALSE;}
  264. }
  265. }
  266. else {return FALSE;}
  267.  
  268. return TRUE;
  269. }
  270.  
  271.  
  272.  
  273. // fonctions pour les contacts
  274. public function createTabContacts()
  275. {
  276. // requete
  277. $Req = "SELECT * FROM Contact WHERE Siret = '".$this->Siret."'";
  278. $Res = adaptateuMySQL::getInstance()->selectQuery($Req);
  279. foreach ($Res as $ligne)
  280. {
  281. $this->TabContacts[$this->Taille] = new entContact($ligne[0], $ligne[1], $ligne[2], $ligne[3], $ligne[4], $ligne[5]);
  282. $this->Taille = $this->Taille + 1;
  283. }
  284. }
  285.  
  286. public function addContact($id, $n, $pren, $email, $t, $p)
  287. {
  288. $cont = new Contact($id, $n, $pren, $email, $t, $p);
  289. $cont.addContact();
  290.  
  291. $this->Taille = $this->Taille + 1;
  292. $this->TabContacts[$this->Taille] = $cont;
  293. }
  294.  
  295. public function chercheContact($id)
  296. {
  297. $cpt = 0;
  298. while (($this->TabContacts[$cpt].getId() != $id) && ($cpt < $this->Taille))
  299. {
  300. $cpt = $cpt + 1;
  301. }
  302.  
  303. if ($cpt == $this->Taille)
  304. return -1;
  305. else
  306. return $cpt;
  307. }
  308.  
  309. public function delContact($id)
  310. {
  311. if (($cpt = chercheContact($id)) == -1)
  312. return false;
  313. else
  314. {
  315. $this->TabContacts[$cpt].delContact(); // enlève le contact de la BD
  316. unset($this->TabContacts[$cpt]); // détruit l'objet contact
  317.  
  318. // décalage de la fin du tableau
  319. while ($cpt < ($this->Taille - 1))
  320. {
  321. $this->TabContacts[$cpt] = $this->TabContacts[$cpt + 1];
  322. $cpt = $cpt + 1;
  323. }
  324. $this->Taille = $this->Taille - 1;
  325. return true;
  326. }
  327. }
  328.  
  329. public function modifContact($id, $n, $pren, $email, $t, $p)
  330. {
  331. if (($cpt = chercheContact($id)) == -1)
  332. return false;
  333. else
  334. {
  335. $this->TabContacts[$cpt].modifContact(); // modifie le contact dans la BD
  336. return true;
  337. }
  338. }
  339. }
  340. ?>


 
Mais je ne te promets rien, j'ai essayé de fermer les { } là où il le fallait mais je suis pas devin.


---------------
Gamertag: CoteBlack YeLL

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Pkoi elle veut pas la methode etre en public??

 

Sujets relatifs
Quelqu'un veut bien m'aider?[Résolu] isset qui veut pas marché :(
stopper une methode au bout de x secondes[CSS] Problème de conteneur qui ne veut pas s'étendre
Calculatrice Bistromathique pour vendredi => sa veut dire quoi ??variable et méthode "de classe" en Javascript ...
ques ca veut dire ca ?Methode d'authentification => failles ?
ULIMIT : Qui veut un script anti fenetres ???Xml / ISO et python qui veut pas des caractères non ascii [Résolu]
Plus de sujets relatifs à : Pkoi elle veut pas la methode etre en public??


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR