Page 1 sur 1

Modifier un lien automatiquement après un appel.

Posté : 02 août 2009, 20:11
par Wilou26
Bonjour,

Je voudrais mettre en place sur mon site un système qui modifie un lien sur la page d'accueil lorsque quelqu'un appel un numéro.

Voici ce que je veut faire :

Une personne va sur mon site, et veut mettre sont lien sur ma page d'accueil.
Elle appelle un numéro ( Allopass, Webopass ... ) une fois le code obtenu la personne est redirigé vers une autre page ou elle doit remplir un formulaire avec son lien et une fois qu'elle a validé son lien est mit en page d'accueil jusqu'à temps que quelqu'un d'autre fasse la même chose.

Je ne sais pas comment faire pour le formulaire ou la personne doit mettre son lien et je ne sais pas non plus comment faire pour que le lien soit mit en page d'acceuil


Mon site est en PHP et n'est pas encore en ligne.

Dsl si je ne suis pas plus clair dans mes explications.

Re: Modifier un lien automatiquement après un appel.

Posté : 02 août 2009, 22:35
par niuxe
Hello Wilou 26,

En effet, je n'ai pas tout à fait saisie ce que tu veux faire. J'ai compris que si la personne saisit le Allopass, elle est redirigée vers un formulaire. Est ce que Allopass donne toujours le même code ? Si c'est le cas, ce serait un truc du style (simplifié):
$codeAlloPass = "un code";
if($_POST['AlloPass'] == $codeAlloPass){
  //redirection formulaire lien
  header("location:chemin/formulaireLien.php");
}else{
  //page d'accueil
}
Une fois que l'internaute a remplit le formulaire, tu récupères les valeurs via la superglobale $_POST (<form action="" method="POST"...). Tu vérifies que les champs soient remplis correctement et après insertion dans la table. Ça devrait faire un truc du style (simplifié) :
<?php
function formLien(){
?>
    <form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>" method="post">
        <p>
            <label>prenom :</label>
            <input type="text" name="prenom" value="<?php echo (!empty($_POST["prenom"]))? $_POST["prenom"] :""; ?>" />
        </p>
        <p>
            <label>nom :</label>
            <input type="text" name="nom" value="<?php echo (!empty($_POST["nom"]))? $_POST["nom"] :""; ?>" />
        </p>
        <p>
            <label>email :</label>
            <input type="text" name="email" value="<?php echo (!empty($_POST["email"]))? $_POST["email"] :""; ?>" />
        </p>
        <p>
            <label>lien :</label>
            <input type="text" name="lien" value="<?php echo (!empty($_POST["lien"]))? $_POST["lien"] :""; ?>" />
        </p>
        <p>
            <input type="hidden" name="formLien" value="__envoi" />
            <input type="submit" />
        </p>
    </form>
<?php
}
function controleFormLien(){
    $erreur = array();

    if(empty($_POST["prenom"]))
        $erreur[] = "Veuillez remplir votre prénom.";   
    if(empty($_POST["nom"]))
        $erreur[] = "Veuillez remplir votre nom.";
    if(!filter_var($_POST["email"],FILTER_VALIDATE_EMAIL))
        $erreur[] = "Votre adresse courriel semble incorrect.";
    if(!filter_var($_POST["email"],FILTER_VALIDATE_URL))
        $erreur[] = "Votre URL semble incorrect.";
    
    if(!empty($erreur))
        return $erreur;
}


if(!empty($_POST["formLien"]) && $_POST["formLien"] == "__envoi"){
    if( $erreur = controleFormLien()){
        echo "<ul>\n";
        for($i = 0;$i < count($erreur); $i++){
            echo "\t<li>".$erreur[$i]."</li>\n";
        }
        echo "</ul>\n";
        formLien();
    }else{
        $connect = mysql_connect("localhost","root","") or die("erreur de connexion serveur"); //mauvaise pratique
        mysql_select_db("laBase",$connect) or die("erreur de connexion à la bdd"); //mauvaise pratique
        $donneesBdd = array();
        foreach($_POST as $k => $v){
            $donneesBdd[] = mysql_real_escape_string($_POST[$k]);
        }
        list($prenom, $nom, $mail, $lien) = $donneesBdd;
            $sql = "INSERT INTO table_lien (prenom,nom,email,lien) ";
            $sql .= "VALUES ('$prenom','$nom','$mail','$lien')";
        mysql_query($sql) or die(mysql_error()); //mauvaise pratique
        
        header("location:accueil.php");
    }
}else{
    formLien();
}
?>
*code fait de tête. Je peux m'être trompé :$

Après dans ta page d'accueil, tu n'as plus qu'à afficher le résultat du formulaire.

Si tu as des questions, n'hésite pas. :)

Bonne soirée à toi.

Re: Modifier un lien automatiquement après un appel.

Posté : 03 août 2009, 13:15
par Wilou26
Bonjour Nolem,

Merci pour ta réponse.

C'est exactement ce que je veut faire

Je vais essayer d'ici ce soir de mettre en ligne une version test toute simple pour voir comment cela ce présente.
Dès que je l'ai mise en ligne je te préviens et je pense que j'aurais d'autre question.

Re: Modifier un lien automatiquement après un appel.

Posté : 03 août 2009, 19:07
par jojolapine
ça ira mieux avec ça... : http://fr.allopass.com/fr/documentation
(enfin j'espère parceque vous voir foncer tout les deux tête baissée dans des solutions e-paiements... :shock: )

Re: Modifier un lien automatiquement après un appel.

Posté : 03 août 2009, 19:20
par dunbar
Salut,

En dehors de la réflexion trés pertinante de jojolapine allopass ne donne JAMAIS deux fois le même code (encore une chance, et c'est logique), le formulaire dans lequel le code est entré dois être valider par le serveur allopass, donc en gros l'exemple donner plus haut est une trés mauvaise idée parce que je ne voie pas comment tu va vérifier que le code est correct.
Donc va visiter le lien qu'a donner jojolapine et prend la peine de l'étudier au risque de perdre des $$$$$$$$$ :wink:

Et n'oublier pas d'acheter un casque :|

Re: Modifier un lien automatiquement après un appel.

Posté : 03 août 2009, 21:05
par Wilou26
Bonsoir,

Merci pour vos réponses,

Voila je viens de mettre en ligne une version de test vous pourrais voir ce que sa donne mais je suis bloquer.
Une fois le formulaire remplis, il ne veut pas partir vers la base de données et comment faire pour que le lien qui se situe à l'accueil du site utilise celui qui aura été enregistrer dans la base de données ?

Re: Modifier un lien automatiquement après un appel.

Posté : 03 août 2009, 21:15
par jojolapine
Je croit qu'il va falloir partir sur des objectif plus simples (pour l'instant)....
Car tu ne maitrises visiblement pas le php...
Commence déjà par essayer de faire un fomulaire tout simple qui remplit une base de donnée et essaye d'en récupérer les valeurs...
Si tu n'arrives déjà pas à faire ça, tu es vraiment très loins de mettre en place une solution de paiement en ligne... :s
Toujorus est-il que si tu as des soucis sur la première étape que je viens de te proposer, montre nous ton code, tes différents essais, tes résultats, les erreurs affichées, etc etc....