Bonjour,

Je suis actuellement en contrat de professionnalisation dans une petite boite fournissant du Wimax ( http://www.lgtel.fr ) ou je suis chargé de maintenir et de faire évoluer le site conçu à la base avec symfony.

N’étant pas du tout habituer a l'utilisation du framework, j'ai eu un départ difficile mais petit a petit, j'ai commencer a gérer (un peu ) le framework.

J'ai eu une formation de deux jours sur les formulaires, la génération de modules ect, mais ce fut bien cours xD.

Bon, fini de raconter ma vie xD.

Pourriez vous m'aider a comprendre l'appel d'objet dans symfony, j'ai beaucoup de mal avec cette notion.

Je développe actuellement une appli d'envoi de sms depuis le web basé sur les api ovh et une bdd MySQL.

Voila ma fonction :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
27
28
29
30
31
32
33
34
35
36
    public function executeSendsms(sfWebRequest $request)
    {
        $this->forward404Unless($request->isMethod(sfRequest::POST));
        $form = new SipSmsForm();
        $this->sipline = SipLinePeer::getByUserId($this->getUser()->getId());
        $form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
        if ($form->isValid())
        {
            $Sipsms = $form->save();
            $Sipsms->setDateEnvoi(date('Y-m-d'));
            $Sipsms->setUserId($this->getUser()->getId());
            $Sipsms->save();
            try {
                $soap = new SoapClient("https://www.ovh.com/soapi/soapi-re-1.12.wsdl",array("trace"=> 1,"exceptions"=>0));
                $session = $soap->login("cb2850-ovh", "dAKoWvo1","fr", false);
                $result = $soap->telephonySmsSend($session, "sms-cb2850-1", "+33".substr($this->sipline->getNumber(),1), $Sipsms->getNumEnvoi(), $Sipsms->getTextSms(), "", "", "", "", "", "");
                $this->message = "telephonySmsSend successfull ". "+33".substr($this->sipline->getNumber(),1)." ".$Sipsms->getNumEnvoi()."\n";
                $soap->logout($session);
                $profile = sfGuardUserProfilePeer::getByID($this->getUser()->getId());
                $profile->getSmsCredit();
                var_dump($profile);
                $profile = $profile - 1;
                $profile->setSmsCredit($Profile);
                $profile->Save();

                }
            catch(SoapFault $fault) {
                 echo $fault;
                }
            $this->redirect('account/Sms');
        }
        else
        {
            $this->form = $form;
            $this->setTemplate('Infosms');
        }

Mon problème se situe au niveau de la partie rouge du code. J'essaye de décrémenté ma variable profile, mais mon var_dump, au lieu de me renvoyer un INT, me renvoi l'objet complet.

Je ne sais pas comment récupéré uniquement mon sms_crédit dispo dans ma table SfGuardUserProfile.

Si vous aviez une idées, vous me sortiriez une grosse épine du pied :-D.

Merci d'avance,

Djillian

P.S : Si besoin est, je tiens à votre disposition tous les morceaux de code nécessaire.