regrouper 2 formulaires

alexletiti
Invité n'ayant pas de compte PHPfrance

29 mai 2012, 00:25

Bonjour,
voilà j'ai fait (en m'inspirant de divers tutos sur le net) un formulaire qui appel à traitement.php pour vérifier les champs, envoyer à mysql ... et un fichier connect.php

J'ai besoin de mettre des champs d'upload mais je n'y arrive pas.

Voici l'url où vous pourrez voir la source : http://www.baudino.fr/lafaouine/

Voici mon fichier traitement.php :
<?php
include("connect.php");

// parametres email à remplacer par les vôtes
 define('MAIL_DESTINATAIRE','[email protected]'); // remplacer par votre email
 define('MAIL_SUJET','Message du formulaire inscription à La Faouine');
 
$msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement remplis :

";
 $msg_ok = "Votre demande a bien été prise en compte.";
 $message = $msg_erreur;
   
  // Converti le format de la date dans mysql
 $naissance = $_POST['an'].$_POST['mois'].$_POST['jour'];
 $delivre_identite = $_POST['an_deliv'].$_POST['mois_deliv'].$_POST['jour_deliv'];
 $delivre_siret = $_POST['an_siret'].$_POST['mois_siret'].$_POST['jour_siret'];
 
 // Regroupe tous les emplacements dans la même variable
 //$emplacements = '-'.$_POST['emplacement_1'].'--'.$_POST['emplacement_2'].'--'.
 //$_POST['emplacement_3'].'--'.$_POST['emplacement_4'].'--'.$_POST['emplacement_5']'-';
 
 // Converti en majuscule tout ou que la première lettre ...
 $_POST ['nom'] = strtoupper($_POST['nom']); // Tout en majuscule
 $_POST ['ville'] = strtoupper($_POST['ville']);
 $_POST ['pays'] = strtoupper($_POST['pays']);
 $_POST ['lieu_naissance'] = strtoupper($_POST['lieu_naissance']);
 $_POST ['identite'] = strtoupper($_POST['identite']);
 $_POST ['lieu_identite'] = strtoupper($_POST['lieu_identite']);
 $_POST ['lieu_siret'] = strtoupper($_POST['lieu_siret']);
 $_POST ['mail'] = strtolower($_POST['mail']); // Tout en minuscule
 $_POST ['prenom'] = ucfirst($_POST['prenom']); // Première lettre en majuscule
 $_POST ['adresse'] = ucwords($_POST['adresse']); // Première lettre de chaque mot en majuscule
 $_POST ['par_identite'] = ucwords($_POST['par_identite']);
 $_POST ['denomination'] = ucwords($_POST['denomination']);
 $_POST ['par_siret'] = ucwords($_POST['par_siret']);
  
// vérification des champs 
if (empty($_POST['civilite'])) 
$message .= "Civilité -
";
 if (empty($_POST['nom']))
$message .= "Nom -
";
 if (empty($_POST['prenom'])) 
$message .= "Prénom -
";
 if (empty($_POST['adresse'])) 
$message .= "Adresse -
";
 if (empty($_POST['cp']))
$message .= "Code postal -
";
 if (empty($_POST['ville'])) 
$message .= "Ville -
";
 if (empty($_POST['pays'])) 
$message .= "Pays -
";
 if ($_POST['jour'] == 'jj')
$message .= "Jour de naissance - 
";
 if ($_POST['mois'] == 'mm')
$message .= "Mois de naissance - 
";
 if ($_POST['an'] == 'aaaa')
$message .= "Année de naissance - 
";
 if (empty($_POST['lieu_naissance'])) 
$message .= "Lieu de naissance -
";
 if (empty($_POST['nationnalite'])) 
$message .= "Nationnalité -
";
 if ((empty($_POST['fixe']) AND empty($_POST['portable']))) 
$message .= "Téléphone fixe et/ou portable -
";
 if (empty($_POST['type'])) 
$message .= "Particulier ou Professionnel -
";
 if (empty($_POST['type_identite'])) 
$message .= "Pièce d'identité -
";
 if (empty($_POST['identite'])) 
$message .= "N° de la pièce d'identité -
";
 if ($_POST['jour_deliv'] == 'jj')
$message .= "Jour de délivrance de la pièce d'identité - 
";
 if ($_POST['mois_deliv'] == 'mm')
$message .= "Mois de délivrance de la pièce d'identité - 
";
 if ($_POST['an_deliv'] == 'aaaa')
$message .= "Année de délivrance de la pièce d'identité - 
";
 if (empty($_POST['par_identite'])) 
$message .= "Pièce e'identite délivré par -
";
 if (empty($_POST['lieu_identite'])) 
$message .= "Lieu de délivrance de la pièce d'identité -
";
 if (($_POST['type'] == 'Professionnel') AND (empty($_POST['denomination'])))
$message .= "Dénomination sociale -
";
 if (($_POST['type'] == 'Professionnel') AND (empty($_POST['siret'])))
$message .= "N° de SIRET -
";
 if (($_POST['type'] == 'Professionnel') AND ($_POST['jour_siret'] == 'jj'))
$message .= "Jour de délivrance du n° SIRET -
";
 if (($_POST['type'] == 'Professionnel') AND ($_POST['mois_siret'] == 'mm'))
$message .= "Mois de délivrance du n° SIRET -
";
 if (($_POST['type'] == 'Professionnel') AND ($_POST['an_siret'] == 'aaaa'))
$message .= "Année de délivrance du n° SIRET -
";
 if (($_POST['type'] == 'Professionnel') AND (empty($_POST['par_siret'])))
$message .= "N° SIRET délivré par -
";
 if (($_POST['type'] == 'Professionnel') AND (empty($_POST['lieu_siret'])))
$message .= "Lieu de délivrance du n° SIRET -
";
 if($_POST['nb_emplacements'] == '--')
$message .= "Nombre d'emplacements -
";
 if(($_POST['nb_emplacements'] == '1') AND (!is_numeric ($_POST['emplacement_1'])))
$message .= "N° du premier emplacement manquant -
";
 if (($_POST['nb_emplacements'] == "1") AND ((!empty($_POST['emplacement_2'])) 
 OR (!empty($_POST['emplacement_3'])) OR (!empty($_POST['emplacement_4'])) OR (!empty($_POST['emplacement_5']))))
$message .= "Seul le n° du 1er emplacement doit être complété -
 "; 
 if (($_POST['nb_emplacements'] == '2') AND (empty($_POST['emplacement_1'])))
$message .= "N° du 1er emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '2') AND (empty($_POST['emplacement_2'])))
$message .= "N° du 2ème emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '2') AND ((!empty($_POST['emplacement_3'])) 
 OR (!empty($_POST['emplacement_4'])) OR (!empty($_POST['emplacement_5']))))
$message .= "Seul le n° du 1er et du 2ème emplacement doivent être complété -
 ";
 if (($_POST['nb_emplacements'] == '3') AND (empty($_POST['emplacement_1'])))
$message .= "N° du 1er emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '3') AND (empty($_POST['emplacement_2'])))
$message .= "N° du 2ème emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '3') AND (empty($_POST['emplacement_3'])))
$message .= "N° du 3ème emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '3') AND ((!empty($_POST['emplacement_4'])) 
 OR (!empty($_POST['emplacement_5']))))
$message .= "Seul les n° du 1er, 2ème et 3ème emplacement doivent être complété -
 "; 
 if (($_POST['nb_emplacements'] == '4') AND (empty($_POST['emplacement_1'])))
$message .= "N° du 1er emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '4') AND (empty($_POST['emplacement_2'])))
$message .= "N° du 2ème emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '4') AND (empty($_POST['emplacement_3'])))
$message .= "N° du 3ème emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '4') AND (empty($_POST['emplacement_4'])))
$message .= "N° du 4ème emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '4') AND (!empty($_POST['emplacement_5'])))
$message .= "Seul les n° du 1er, 2ème, 3ème et 4ème emplacement doivent être complété -
 ";
 if (($_POST['nb_emplacements'] == '5') AND (empty($_POST['emplacement_1'])))
$message .= "N° du 1er emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '5') AND (empty($_POST['emplacement_2'])))
$message .= "N° du 2ème emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '5') AND (empty($_POST['emplacement_3'])))
$message .= "N° du 3ème emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '5') AND (empty($_POST['emplacement_4'])))
$message .= "N° du 4ème emplacement manquant -
 ";
 if (($_POST['nb_emplacements'] == '5') AND (empty($_POST['emplacement_5'])))
$message .= "N° du 5ème emplacement manquant -
 "; 
 if (($_POST['nb_emplacements'] == '1') AND (!is_numeric ($_POST['emplacement_1'])))
$message .= "Le numéro de l'emplacement 1 doit être un nombre -
 ";
 if (($_POST['nb_emplacements'] =='2') AND (!is_numeric ($_POST['emplacement_2'])))
$message .= "Le numéro de l'emplacement 2 doit être un nombre -
 "; 
 if (($_POST['nb_emplacements'] =='3') AND (!is_numeric ($_POST['emplacement_3'])))
$message .= "Le numéro de l'emplacement 3 doit être un nombre -
 "; 
 if (($_POST['nb_emplacements'] =='4') AND (!is_numeric ($_POST['emplacement_4'])))
$message .= "Le numéro de l'emplacement 4 doit être un nombre -
 "; 
 if (($_POST['nb_emplacements'] =='5') AND (!is_numeric ($_POST['emplacement_5'])))
$message .= "Le numéro de l'emplacement 5 doit être un nombre -
 "; 
 if (($_POST['nb_emplacements'] == '2') and ($_POST['emplacement_1'] == $_POST['emplacement_2']))
$message .= "Les emplacements 1 et 2 sont identitques -
 "; 
 if (($_POST['nb_emplacements'] == '3') and ($_POST['emplacement_1'] == $_POST['emplacement_2']))
$message .= "Les emplacements 1 et 2 sont identitques -
 "; 
 if (($_POST['nb_emplacements'] == '3') and ($_POST['emplacement_1'] == $_POST['emplacement_3']))
$message .= "Les emplacements 1 et 3 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '3') and ($_POST['emplacement_2'] == $_POST['emplacement_3']))
$message .= "Les emplacements 2 et 3 sont identitques -
 "; 
  if (($_POST['nb_emplacements'] == '4') and ($_POST['emplacement_1'] == $_POST['emplacement_2']))
$message .= "Les emplacements 1 et 2 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '4') and ($_POST['emplacement_1'] == $_POST['emplacement_3']))
$message .= "Les emplacements 1 et 3 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '4') and ($_POST['emplacement_1'] == $_POST['emplacement4']))
$message .= "Les emplacements 1 et 4 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '4') and ($$_POST['emplacement_1'] == $_POST['emplacement5']))
$message .= "Les emplacements 1 et 5 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '4') and ($_POST['emplacement_2'] == $$_POST['emplacement_3']))
$message .= "Les emplacements 2 et 3 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '4') and ($_POST['emplacement_2'] == $_POST['emplacement_4']))
$message .= "Les emplacements 2 et 4 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '4') and ($_POST['emplacement_2'] == $$_POST['emplacement_5']))
$message .= "Les emplacements 2 et 5 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '4') and ($_POST['emplacement_3'] == $_POST['emplacement_4']))
$message .= "Les emplacements 3 et 4 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '4') and ($_POST['emplacement_3'] == $_POST['emplacement_5']))
$message .= "Les emplacements 3 et 5 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '4') and ($_POST['emplacement_4'] == $_POST['emplacement_5']))
$message .= "Les emplacements 4 et 5 sont identitques -
 ";
if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_1'] == $_POST['emplacement_2']))
$message .= "Les emplacements 1 et 2 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_1'] == $_POST['emplacement_3']))
$message .= "Les emplacements 1 et 3 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_1'] == $_POST['emplacement_4']))
$message .= "Les emplacements 1 et 4 sont identitques -
 ";
if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_1'] == $_POST['emplacement_5']))
$message .= "Les emplacements 1 et 5 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_2'] == $_POST['emplacement_3']))
$message .= "Les emplacements 2 et 3 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_2'] == $_POST['emplacement_4']))
$message .= "Les emplacements 2 et 4 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_2'] == $_POST['emplacement_5']))
$message .= "Les emplacements 2 et 5 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_3'] == $_POST['emplacement_4']))
$message .= "Les emplacements 3 et 4 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_3'] == $_POST['emplacement_5']))
$message .= "Les emplacements 3 et 5 sont identitques -
 ";
 if (($_POST['nb_emplacements'] == '5') and ($_POST['emplacement_4'] == $_POST['emplacement_5']))
$message .= "Les emplacements 4 et 5 sont identitques -
 "; 
if (($_POST['type'] == 'Particulier') AND (empty($_POST['honneur'])))
$message .= "Attestation sur l'honneur -
";
if (($_POST['type'] == 'Particulier') AND (empty($_POST['honneur_bis'])))
$message .= "Confirmation attestation sur l'honneur -
";
 if (empty($_POST['accord'])) 
$message .= "Conditions générales -
";



 
// si un champ est vide, on affiche le message d'erreur 
if (strlen($message) > strlen($msg_erreur)) {
 
echo $message;
 
// sinon c'est ok 
} else {
 
// on enleve les slashes et espace inutiles 
foreach($_POST as $index => $valeur) {
   $$index = stripslashes(trim($valeur));
 }
 
//Préparation de l'entête du mail
 $mail_entete = "MIME-Version: 1.0\r\n";
 $mail_entete .= "From: {$_POST['nom']} "
 ."<{$_POST['email']}>\r\n";
 $mail_entete .= 'Reply-To: '.$_POST['email']."\r\n";
 $mail_entete .= 'Content-Type: text/plain; charset="iso-8859-1"';
 $mail_entete .= "\r\nContent-Transfer-Encoding: 8bit\r\n";
 $mail_entete .= 'X-Mailer:PHP/' . phpversion()."\r\n";
 
// préparation du corps du mail
 $mail_corps = "Inscription de $civilite $nom $prenom\n";
 $mail_corps .= "$adresse, $cp $ville, $pays\n";
 $mail_corps .= "Né le $jour/$mois/$an à $lieu\n";
 $mail_corps .= "Téléphone fixe : $fixe\n";
 $mail_corps .= "Téléphone portable : $portable\n";
 $mail_corps .= "Adresse e-mail : $mail\n";
  
  // envoi du mail
 $res_mail = mail(MAIL_DESTINATAIRE,MAIL_SUJET,$mail_corps,$mail_entete);
 

foreach($_POST as $index => $valeur) {
   // utilisez addslashes() au lieu de mysql_real_escape_string()
   // si vous n'etes pas sur PHP5 ou si la fonction pose probleme
   $$index = mysql_real_escape_string(trim($valeur));
 }
 

 
// insere les donnees dans mysql
 $sql = "INSERT INTO formulaire VALUES ('', '$civilite', '$nom', '$prenom', '$adresse', '$cp', '$ville', '$pays', '$naissance', '$lieu_naissance', '$fixe',
 '$portable', '$mail', '$type','$type_identite', '$identite', '$delivre_identite', '$par_identite', '$lieu_identite',
 '$denomination', '$siret', '$delivre_siret', '$par_siret', '$lieu_siret', '$nb_emplacements','$emplacement_1', '$emplacement_2', '$emplacement_3', '$emplacement_4',
 '$emplacement_5', '$honneur', '$honneur_bis', '$accord', now())";
 $res_sql = mysql_query($sql);
 
// si le mail a ete envoye par mail et mysql
 if ($res_mail && $res_sql) {
 echo $msg_ok;
 // si mysql a retourné une erreur 
} else if (!$res_sql) {
 echo mysql_error();
 // si le mail n'a pas été envoyé 
} else if (!$res_mail) {
 echo 'Erreur. Le formulaire ne nous a pas été correctement envoyé par email.';
 }
 
}
 ?>

J'ai trouvé un formulaire d'upload qui fonctionne mais je n'arrive pas à l'insérer.
Soit j'ai ça : http://www.baudino.fr/test_mail/mail.php
Et forcément si je clique sur un bouton envoyer, il y a qu'une partie du formulaire de traiter

Ou alors j'ai fait 2 formulaires distinct sur 2 pages séparé, mais je n'arrive pas faire le lien pour la base de données.
Voici l'url : http://192.168.1.254/2pages/ qui appel traitement.php qui renvoie ensuite à traitement_2.php


Si jamais vous avez une solution à mon problème, ça serait vraiment cool car la je ne sais vraiment plus quoi faire.

Merci d'avance.

alexletiti
Invité n'ayant pas de compte PHPfrance

29 mai 2012, 05:40

A la rigueur les 2 pages peuvent être pas mal car la personne peut s'inscrire en 2 fois.Faut juste trouver une façon d'avoir une relation.
La pge 2 sera pour uploader la photocopie de la carte d'identite.

Merci

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 8758 Messages

29 mai 2012, 07:17

Salut,

Ton code est trop dense et illisible sans coloration de syntaxe (balise php).

Les tests d'existences sont à faire avant exploitation sinon, ben undefined index.

Pas de code d'upload dans le formulaire donc on ne peux pas t'aider.


la doc de php sur l'upload

Deuxième solutions : sauvegarde les données du formulaire en session pour pouvoir les utiliser sur la dernière page de traitement.


@+
Il en faut peu pour être heureux ......