Bienvenue, Invité
Merci de vous identifier ou de vous inscrire.    Mot de passe perdu?

Formulaire de contact
(1 lecteur(s)) (1) Invité(s)
Aller en basPage: 12345
SUJET:

Formulaire de contact

#26290
CaPiT
Développeur Magento
Moderator
Messages: 1828
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Sexe: Masculin ronan.capitaine ASPerience Lieu: Finistère ou Nantes Date anniversaire: 07/05

Re:Formulaire de contact

Il y a 1 Année, 12 Mois
Karma: 51  
Mais de rien !

Bonne continuation.
 
Ronan Capitaine
L'administrateur a désactivé l'accès public en écriture.
#27206
ktarr
Expert Boarder
Messages: 121
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Re:Formulaire de contact

Il y a 1 Année, 11 Mois
Karma: 2  
Bonjour,

Après quelques jours de manipulation, j’ai remarqué que les « checkbox » continuait à me narguer…

Quand je coche toutes mes « checkbox » pas de problème à tous les coups l’enregistrement se fait.
Par contre quand ils ne sont pas tous cochés, un coup sur deux le message : « Impossible d'envoyer votre demande. Veuillez réessayer plus tard » apparaît.

Je supprime « try » dans le fichier « IndexController.php » pour voir le message d’erreur Magento et il me dit que mes variables « checkbox » ne sont pas définis… Nul par il sont indiqué comme obligatoire…

L’enregistrement des « checkbox » ('callBack', 'newsletter', 'doc') pause problème dans ce code :

Code :

                $contacts = Mage::getModel('historizecontacts/historizecontacts')
                 ->setName($post['name'])
                 ->setEmail($post['email'])
                 ->setTelephone($post['telephone'])
                 ->setMessage($post['comment'])
->setContacter($post['callBack'])
->setNewsletter($post['newsletter'])
->setDocumentation($post['doc'])
                 ->setWebsiteId(Mage::app()->getStore()->getWebsiteId())
                 ->setCreatedTime(date("Y-m-d G:i:s", Mage::getModel('core/date')->timestamp(time())))
                 ->save();



Mais ou et pourquoi ???
 
L'administrateur a désactivé l'accès public en écriture.
#27207
CaPiT
Développeur Magento
Moderator
Messages: 1828
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Sexe: Masculin ronan.capitaine ASPerience Lieu: Finistère ou Nantes Date anniversaire: 07/05

Re:Formulaire de contact

Il y a 1 Année, 11 Mois
Karma: 51  
Ca parait bizarre.

Tu peux faire des if qui indique que si la valeur est nul tu mets tes paramètres à 0.

Sinon tu peux contourner le problème en créant 3 input de type text qui (avec du Javascript sur les checkbox) prendront les valeurs 0 ou 1. Du coup, plus d'erreur (normalement).
 
Ronan Capitaine
L'administrateur a désactivé l'accès public en écriture.
#27392
ktarr
Expert Boarder
Messages: 121
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Re:Formulaire de contact

Il y a 1 Année, 11 Mois
Karma: 2  
Bonjour,

J’ai choisi d’adjoindre une balise « input hidden » à mes « checkbox » et pour le moment les envois s’enregistres sans problèmes.

Je vais attaquer une autre modification de l’extension et pas des moindres…enregistrer les contacts ayant coché la case « newsletter » dans la table «newsletter_subscriber».
Et pour cette action je pense que je ne dois pas seulement modifier le fichier « indexController » ?
 
L'administrateur a désactivé l'accès public en écriture.
#27396
CaPiT
Développeur Magento
Moderator
Messages: 1828
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Sexe: Masculin ronan.capitaine ASPerience Lieu: Finistère ou Nantes Date anniversaire: 07/05

Re:Formulaire de contact

Il y a 1 Année, 11 Mois
Karma: 51  
Tu peux le faire dans le même indexController puisque c'est la même action.
Par contre, il faudra appelé le modèle qui gère les newsletter, pour pouvoir effectuer la sauvegarde. Au pire du peux t'inspirer de la partie Customer qui effectue cette tâche.

Je n'ai pas de Magento devant moi donc je ne peux pas t'aiguiller plus, juste répondre à certaines questions.
 
Dernière édition: 25/02/10 à  11:36 Par CaPiT.
Ronan Capitaine
L'administrateur a désactivé l'accès public en écriture.
#27439
ktarr
Expert Boarder
Messages: 121
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Re:Formulaire de contact

Il y a 1 Année, 11 Mois
Karma: 2  
Merci encore,

Après plusieurs essais, la solution qui fonctionne est celle-ci :
Code :

$resource = Mage::getSingleton('core/resource'); 
$read= $resource->getConnection('core_read');
$rows = array (
'store_id' => Mage::app()->getStore()->getWebsiteId(),
'subscriber_email' => $post['email'],
'subscriber_status' => '1',
);
$table = 'newsletter_subscriber';
$affectedRows = $read->insert($table, $rows);


Je n’ai pas réussit à adapter la solution « appeler le model » même en m’inspirent de « customer ». L’enregistrement ce fait dans la session et avec un internaute enregistré comme client alors que moi il n’est pas forcement client, c’est par le formulaire de contact que la demande est faite.

Maintenant, j’ai une nouvelle complication a résoudre le nom et le prénom à afficher dans l’admin > Inscrits à la newsletter.
Le problème est que je n’ai pas d’« entity_id » à enregistrer dans la table « customer_entity_varchar » toujours pour la même raison : le demandeur n’est pas enregistré comme client.

J’ai bien une idée mettre une condition if dans le fichier « Grid » ou sont générer les colonnes et soit aller chercher les infos dans « customer_entity_varchar » ou si contact dans « historizecontacts » mais il faut que je comprenne le fonctionnement/cheminement du select…Et c’est pas une mince affaire…

Sinon je suis ouvert à toutes autres solutions
 
L'administrateur a désactivé l'accès public en écriture.
#27469
CaPiT
Développeur Magento
Moderator
Messages: 1828
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur
Sexe: Masculin ronan.capitaine ASPerience Lieu: Finistère ou Nantes Date anniversaire: 07/05

Re:Formulaire de contact

Il y a 1 Année, 11 Mois
Karma: 51  
Ce ne sera pas possible je pense.

Pourquoi ne pas simplement utiliser historizecontacts?
 
Ronan Capitaine
L'administrateur a désactivé l'accès public en écriture.
#27472
ktarr
Expert Boarder
Messages: 121
graphgraph
Personne n'est hors ligne Cliquez ici pour voir le profil de cet utilisateur

Re:Formulaire de contact

Il y a 1 Année, 11 Mois
Karma: 2  
Il me faut les deux, l’enregistrement a la newsletter des clients dont les infos sont enregistrées dans plusieurs tables et l’enregistrement des contacts qui eux sont dans la table « historizecontacts ».

Je vais chercher autre chose pour récupérer les noms et prénoms…Pas encore facile cette histoire…
 
L'administrateur a désactivé l'accès public en écriture.
Revenir en hautPage: 12345
Modérateur: admin, neurone, Gabriiiel, CaPiT