Ce forum ne peut être utilisé que par les clients de CyberMailing bénéficiant de cette option.

Vous y présentez votre projet et vos objectifs et nous vous aidons à les atteindre.
Ce forum est visible par tous, mais seuls les utilisateurs de CyberMailing peuvent y participer.
richard44
 
Messages: 110
Enregistré le: Sam Avr 03, 2010 12:42 pm

formulaire avec plusieurs champs...

par richard44 Mar Oct 01, 2013 4:10 am

Bonjour Lionel,

Voici ce que j'aimerai faire:

Je voudrais que mes affiliés aient une page personnalisée avec des liens d'affiliation.

1ere page:
Champs prénom
Champs ID d'affiliation
Champs ID d'affiliation
Champs ID d'affiliation
Champs ID d'affiliation
Champs ID d'affiliation

2ème page:

Cette page appartient à prénom

lien d'affiliation perso
lien d'affiliation perso
lien d'affiliation perso
lien d'affiliation perso
lien d'affiliation perso

Personnalisation de la page pour chaque affilié sans que les donné passe par l'URL.

Est-il possible de faire ça sans base de donnée ?

Amicalement,

Richard
Lionel Palazzi
Administrateur du site
 
Messages: 520
Enregistré le: Lun Mar 22, 2010 2:08 pm

Re: formulaire avec plusieurs champs...

par Lionel Palazzi Mar Oct 01, 2013 2:25 pm

Bonjour Richard

Pour répondre, je suis embetté, il y a t'il cybermailing entre la page 1 et la page 2 ?

Si non, la réponse est simple, le formulaire envoi les infos avec la méthode POST et on récupère les données sur la page 2 avec $_POST['nom_du_champs']
au lieu de avec $_GET quand on récupère dans les données de l'url.

exemple :

Code: Tout sélectionner
Voici votre information <?php echo $_SESSION['nom-du-champs']; ?>


Si oui, c'est + compliqué (sauf en version pro), et c'est de cette façon que j'ai travaillé tous mes premiers sites :
Il faut, une page, un script intermédiaire après la page 1

page1 -> script -> cybermailing -> page 2

la page 1 envoie en POST
le script récupère les données du POST et en profite pour remplir des variables de SESSION
Code: Tout sélectionner
<?php
session_start(); // toujours commencer par ceci dès qu'on touche au sessiosn
$_SESSION = $_POST;
?>

Le script reconstruit un formulaire d'inscription cybermailing avec uniquement des champs cachés (contentant les données reçues en post
Code: Tout sélectionner
<?php
foreach($_POST as $key => $va) {
$form = $form.'<input type="hidden" name="'.$key.'" value="'.$val.'">'
}
?>

Je suppose que l'email est de l'abonné fait partie des données.
on ajoute le no de liste si il n'y est pas

Code: Tout sélectionner
<?php $form = $form.'<input type="hidden" name="Liste" value="123456">'  ?>


Enfin, on affichele formulaire qui va être automatiquement envoyé.

Code: Tout sélectionner
<html>
<body onload="document.forms[0].submit()">
<form action="http://www.cybermailing.com/mailing/subscribe" method="POST">
<?php echo $form; ?>
    <p>Si cette page reste affich&eacute;e plus de quelques secondes,
    <input type="submit" value="Cliquez ici"></p>
</form>
</body>
</html>


Cybermailing redirige ensuite sur la page 2 sans transmettre les infos dans l'url si la case correspondante n'est pas cochée
la page 2 récupère les variables de SESSSION pour faire l'affichage que tu veux.

Code: Tout sélectionner
<?php
session_start(); // toujours démarrer par ceci quand tu utilises les sessions
?>


Code: Tout sélectionner
Voici votre information <?php echo $_SESSION['nom-du-champs']; ?>


Une session dure en général 30 minutes (config du serveur) et permet de stocker (donc temporairement) les données du visiteur.

Par contre, pour pouvoir faire cela en version non pro, il faut que l'adresse email de l'abonné soit déjà dans ton compte.
Si elle n'y est pas, le problème, c'est que le passage script -> cybermailing n'est pas autorisé, dans les fait cela passera, mais un de ces jours je vais créer une barrière.
Si elle n'y est pas, il faut forcément page_visible -> cybermailing

En version pro cette restriction n'existe pas et avec la librairie client de l'API
Tu peux faire page1 -> page2 en POST (tu ne t'occupes pas de faire transiter le visiteur par cybermailing) et dans page 2 tu met un simple

Code: Tout sélectionner
<?php
$_POST['function'] = 'subscribe';
cyberMailing_connect::talk($_POST);
 ?>


Ce qui fait que ton serveur relais les infos à cybermailing
richard44
 
Messages: 110
Enregistré le: Sam Avr 03, 2010 12:42 pm

Re: formulaire avec plusieurs champs...

par richard44 Mar Oct 01, 2013 3:25 pm

Merci Lionel pour ta réponse hyper détaillée.

Voici ce que je veux (pas de cybermailing entre les 2).

Une page ou la personne rentre son prénom et ses lien d'affiliation
Code: Tout sélectionner
<form method="POST" action="inscription.php">
Votre prénom: <input type="text" name="c"><br />
Votre lien d'affiliation N°1: <input type="text" name="c"><br />
Votre lien d'affiliation N°2: <input type="text" name="c"><br />
Votre lien d'affiliation N°3: <input type="text" name="c"><br />
Votre lien d'affiliation N°4: <input type="text" name="c"><br />
Votre lien d'affiliation N°5: <input type="text" name="c"><br />
</form>


Et la deuxième page (nommée inscription) je veux que ça soit sa page personnelle d'affiliation avec ses liens personnels


Si tu peux me mettre le code des 2 pages car je ne suis pas très fort en code. :(

Amicalement,

Rick44
Lionel Palazzi
Administrateur du site
 
Messages: 520
Enregistré le: Lun Mar 22, 2010 2:08 pm

Re: formulaire avec plusieurs champs...

par Lionel Palazzi Mer Oct 02, 2013 4:02 pm

Salut Richard

Je peux mais à quoi ca sert ?
Je m'explique, à quoi ca sert de leur afficher ce qu'ils te donnent.
Et qu'imagine tu qu'il se passe si il ferment leur page et reviennent.
Il faut qu'il entrent encore leur données pour que tu puisses les réafficher ?

Si c'est pour développer ton programme d'affiliation, je ne vois pas comment tu peux
te passer de base de données, c'est à toi de leur donner leur liens.
Il faut que tu gère leur connection (login mot de passe) leur attribue un identifiant d'affilié
et utilise cet identifiant pour coder leur lien et l'afficher.

En tout cas, pour faire ce que tu veux faire:

PAGE1
Code: Tout sélectionner
<form method="POST" action="inscription.php">
Votre prénom: <input type="text" name="prenom"><br />
Votre lien d'affiliation N°1: <input type="text" name="L1"><br />
Votre lien d'affiliation N°2: <input type="text" name="L2"><br />
Votre lien d'affiliation N°3: <input type="text" name="L3"><br />
Votre lien d'affiliation N°4: <input type="text" name="L4"><br />
Votre lien d'affiliation N°5: <input type="text" name="L5"><br />
</form>


PAGE2 (inscriptions.php)
Code: Tout sélectionner
<h1>Page Personelle</h1>
<p>Vos informations : </p>
Votre prénom: <?php echo $_POST['prenom'] ?><br />
Votre lien d'affiliation N°1: <?php echo $_POST['L1'] ?><br />
Votre lien d'affiliation N°2: <?php echo $_POST['L2'] ?><br />
Votre lien d'affiliation N°3: <?php echo $_POST['L3'] ?><br />
Votre lien d'affiliation N°4: <?php echo $_POST['L4'] ?><br />
Votre lien d'affiliation N°5: <?php echo $_POST['L5'] ?><br />



Mais je crois que cela ne sert à rien...
Retourner vers « %s » Conseils Personnalisés

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré