Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > MVC
MVC Forum de support sur le développement d'applications de type modèle-vue-contrôleur avec Zend Framework ainsi que vos questions sur les plugins, les helpers etc. Avant de poster -> Cours MVC, FAQ ZF Controller
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/03/2008, 09h37   #1
Futur Membre du Club
 
Inscription : octobre 2007
Messages : 54
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 54
Points : 17
Points : 17
Par défaut Zend et Javascript

Bonjour à tous,


Voila j'essaye d'utiliser du Javascript sur mon site et je voudrai avoir de l'aide.
J'ai dans ma partie admin la possibilité de creer des utilisateurs et je voudrai par exemple a la fin de l'insertion en base de tous mes attributs envoyer un petit message comme quoi c'a s'est bien passé.

Code :
1
2
3
4
5
 
 
echo"<script type=\"text/javascript\">" ;
echo "alert('Utilisateur ajouté !');";					
echo"</script>";
Ceci ne marche pas et je comprend pas pourquoi...

je l'ai placé juste apres l'insertion :
$utilisateur->insert($data);

avez vous des idées ?
figatelliSTI est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2008, 10h46   #2
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Salut

J'imagine que tu utilises une architecture MVC ?
À la fin de ton insertion en base, il faut renvoyer vers une URL qui confirme que tout s'est bien passé, ce qui permet d'éviter les problèmes de renvois de données POST.

Dans l'idée :
Le contrôleur :
Code :
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
37
38
39
40
41
42
43
44
45
46
47
48
49
class UserController extends Zend_Controller_Action
{
    protected $_flashMessenger;
 
    public function init()
    {
        $index_url = $this->_request->getBaseUrl().'/user';
        $this->view->actions = array(
            'index' => $index_url,
            'add' => $index_url.'/add',
            'delete' => $index_url.'/delete',
            'edit' => $index_url.'/edit',
            'login' => $index_url.'/login',
            'search' => $index_url.'/search',
            'view' => $index_url.'/view',
        );
        $this->_flashMessenger = $this->_helper->getHelper('FlashMessenger');
        $this->view->messages = array();
        $messages = $this->_flashMessenger->getMessages();
        if(is_array($messages))
        {
            $this->view->messages = $messages;
        }
    }
 
    public function addAction()
    {
        if($this->_request->isPost())
        {
            if(!$add_form->isValid($_POST))
            {
                foreach($add_form->getMessages() as $field)
                {
                    foreach($field as $message)
                    {
                        $this->_flashMessenger->addMessage($message);
                    }
                }
                $this->_response->setRedirect($this->view->actions['add']);
            }
            else
            {
                $table->add(...);
                $this->_flashMessenger->addMessage(sprintf(User::MSG_ADDED, $add_form->getValue('name')));
                $this->_response->setRedirect($this->view->actions['add']);
            }
        }
    }
}
La Vue :
Code :
1
2
3
4
5
6
7
8
        <?php if(!empty($this->messages)): ?>
            <p>
            Messages :
            <?php foreach($this->messages as $message): ?>
                <?php echo $this->escape($message); ?><br/>
            <?php endforeach; ?>
            </p>
        <?php endif; ?>
J'utilise le helper FlashMessenger pour trasnmettre les messages (erreur, succès) d'une requête à l'autre.
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2008, 11h09   #3
Futur Membre du Club
 
Inscription : octobre 2007
Messages : 54
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 54
Points : 17
Points : 17
merci beaucoup pour ta reponse et ton code ca devrai m'aider grandement
figatelliSTI est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2008, 11h12   #4
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
J'oubliais la doc du FlashMessenger, j'ai l'impression qu'ils se sont trompés dans l'arbo donc elle n'est pas forcément simple à trouver : http://framework.zend.com/apidoc/cor...Messenger.html
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h43.


 
 
 
 
Partenaires

Hébergement Web