8443 sujets

Développement web côté serveur, CMS

Bonjour

Voici mon premier message su ce forum...

J'ai une page contact.php qui contient 3 formulaires différents. L'utilisateur remplit seulement l'un des 3 selon le type d'infos à traiter.
Je n'ai pas de problèmes pour remplir ma base avec les contenus des formulaires
MAIS mon probème actuel est le suivant.
Je souhaite m'envoyer un mail en même temps que je remplis une des 3 tables de la base (en fait juste après avoir rempli la table correspondante).
Avant j'appelais un fichier formulaires.php externe, mais je veux maintenant executer toutes ces actions dans ma page contact.php.
Comment ajouter une infos dans les "action" de mes formulaires pour sélectionner la bonne fonction d'écriture dans une table et d'envoi de mail (ex : function services() ; function projets() ; function conseil() )...

pour l'instant j'ai : <form action="<?php echo htmlspecialchars($_SERVER['PHP_SELF']); ?>
je cherche à passer une info (valeur de variable ?, paramètre ?, nom de fonction ?...)
pour que ce soit la bonne fonction concernée par l'un des 3 formulaires présents sur la page qui s'execute.

Merci d'avance
Tu pourrais lui passer une variable de type $_GET avec :

<?php
if(isset($_GET['action'])){
        if($_GET['action']=="services")
           //traitement du formulaire service
        elseif($_GET['action']=="produits")
             //traitement du formulaire produits
         //etc
}
else{ ?>
<form action="<?= htmlspecialchars($_SERVER['PHP_SELF']).'?action=services' ?> 


Modifié par Su4p (02 Mar 2011 - 10:30)
Tu pourrais lui passer une variable de type $_GET avec :


if(isset($_GET['action'])){
        if($_GET['action']=="services")
           //traitement du formulaire service
        elseif($_GET['action']=="produits")
             //traitement du formulaire produits
         //etc
}
else{ ?>
<form action="<?= htmlspecialchars($_SERVER['PHP_SELF']).'?action=services' ?> 


Modifié par Su4p (02 Mar 2011 - 10:30)
Ouais enfin la procédure classique (logique?) pour identifier si un formulaire a été soumis c'est par son bouton submit.


<form... blablabla

<input type="submit" name="produits_submit" value="Enregistrer" />
</form>

<form... blablabla

<input type="submit" name="services_submit" value="Enregistrer" />
</form>


Et :


if (!empty($_POST['services_submit']))
{
// fait tes trucs ici
}
else if (!empty($_POST['produits_submit']))
{
// ou là
}

Modifié par jb_gfx (03 Mar 2011 - 21:13)