cs_sokebana
Messages postés48Date d'inscriptionjeudi 26 juin 2008StatutMembreDernière intervention21 mars 2009
-
8 nov. 2008 à 11:39
sitajony
Messages postés103Date d'inscriptionjeudi 6 novembre 2008StatutMembreDernière intervention 9 juin 2010
-
10 nov. 2008 à 17:21
Bonjour
je débute complètement et bien entendu je veux un formulaire bien trop complexe pour moi...
j'ai réussi à faire un formulaire simple avec que des zones de texte, ça marche (sauf message de validation soue IE, c'est ok sous ff)
le nouveau formulaire est celui là:
- des champs texte simple
- un champ avec menu déroulant pour un seul choix
- 4 champ parcourir pour uploader 4 image (que je voudrais recevoir par mail en piece jointe)
il me semble avoir bien fait la partie html... mais alors la partie PHP (et je n'y connais rien) c'est le gros bazard... je te colle des bouts de ci des morceaux de ça.... je n'ai pas réussi à trouver un tuto qui prend en compte ses trois parametres cités ci dessus.
quelqu'un aurait il un peu de temps à me donner pour me faire marcher ce machin ou m'envoyer vers un totu qui prend en compte tes ses parametres.
par avance un grand merci à celui/celle qui 'aidera
voici le html <form id= "form1" name="form1" enctype="multipart/form-data" method="post" action="formule_complete.php">
----
Titre - Accroche*,
,
----
Activité*,
,
----
Nom*,
,
----
Prenom*,
,
----
Mail*,
,
----
Adresse*,
,
----
Code postal*,
,
----
Ville*,
,
----
Téléphone*,
,
----
Portable*,
,
----
Site web*,
,
----
Gamme de prix* ( - et +),
,
----
Zone géographique couverte,
<label>
<select name="zone_activite" class="fond" id="zone activité">
onChange="chgpage(this.form)">
<option selected="selected">Choix de la zone </option>
<option value="no">Nord Ouest </option>
<option value="ne">Nord Est</option>
<option value="idf">Ile de France</option>
<option value="se">Sud Est</option>
<option value="so">Sud Ouest</option>
</select>
</label>,
<?php // récupération des variables
// donné un autre nom au variable pour évité les problèmes avec Register Global à ON
$formTitre = $_POST['titre'];
$formActivite = $_POST['activite'];
$formNom = $_POST['nom'];
$formPrenom = $_POST['prenom'];
$formMail = $_POST['mail'];
$formAdresse = $_POST['adresse'];
$formCode_postal = $_POST['code_postal'];
$formville = $_POST['ville'];
$formTelephone = $_POST['tel'];
$formPortable = $_POST['port'];
$formSite_web = $_POST['site_web'];
$formGamme_de_prix = $_POST['gamme_prix'];
$formZone_activite = $_POST['zone_activite'];
$formFichier = $_FILES['fichier'];
$formDescription = $_POST['description'];
if (isset($_FILES['image']))
{
//$_FILES existe
foreach ($_FILES['fichier']['name'] as $key => $value) {
$fichier=$value;//nom reel de l'image
$size=$_FILES['fichier']['size'][$key]; //poids de l'image en octets
$tmp=$_FILES['fichier']['tmp_name'][$key];//nom temporaire de l'image (sur le serveur)
$type=$_FILES['fichier']['type'][$key];//type de l'image
//On récupère la taille de l'image
list($width,$height)=getimagesize($tmp);
if (is_uploaded_file($tmp)) //permet de vérifier si le fichier a été uplodé via http
{
//vérification du type de l'img, son poids et sa taille
if ($type=="image/pjg" && $size<=100000 && $width<=600 && $height<=600 )
{// type mime gif, poids < à 20500 octets soit environ 20Ko, largeur hauteur 100px
//Pour supprimer les espaces dans les noms de fichiers car celà entraîne une erreur lorsque vous voulez l'afficher
$fichier = preg_replace ("` `i","",$fichier);//ligne facultative :)
//On vérifie s'il existe une image qui a le même nom dans le répertoire
if (file_exists('./images_up/'.$fichier))
{
//Le fichier existe on rajoute dans son nom le timestamp du moment pour le différencier de la première (comme cela on est sûr de ne pas avoir 2 images avec le même nom :) )
$nom_final= preg_replace("`.jpg`is",date("U").".jpg",$fichier);
}
else {
$nom_final=$fichier; //l'image n'existe pas on garde le même nom
}
//on déplace l'image dans le répertoire final
if (move_uploaded_file($tmp,'./images_up/'.$nom_final)) {
//Message indiquant que tout s'est bien passé
//Pour le test on affiche l'image
echo '';
echo '
';
}
else {
//l'image ne peut être déplacée, on supprime le fichier temporaire
@ unlink ($tmp);
echo 'L\'image n\'a pu être déplacée !';
}
}
else {
//Le type mime, ou la taille ou le poids est incorrect
echo 'Votre image a été rejetée (poids, taille ou type incorrect)';
}
}
}
}
echo '[javascript:history.back(); Retour]';
// pour éviter des erreurs de Notice dans le cas ou le champs est resté vide, on aurait pu mettre !
// $formMail = (!isset($_POST['mail']))?$_POST['mail']:'none';
// Dans le cas ou les variables sont destiné à allimenter un base de donné il faut toujours valider les valeurs pour éviter les problèmes d'injection ! cf Google
//En règle général on traite les variables avec les fonctions htmlentities, mysql_escape_string(),addslash() ...
// Dans l'exemple on va juste vérifier que le nom, le prenom et le mail soit pas vide.
if(!empty($formTitre) && !empty($formActivite) && !empty($formNom) && !empty($formPrenom) && !empty($formMail) && !empty($formAdresse) && !empty($formCode_Postal) && !empty($formVille) && !empty($formTelephone) &&!empty($formPortable) &&!empty($formSite_web) &&!empty($formGamme_prix) &&!empty ($formZone_activite) && !empty($Fichier) ){
//ok pas vide //on convertie les caractètres HTML du commentaire
$formDescription = htmlentities($formDescription);
//mise en forme du mail
$message = "$formNom $formPrenom soumet son inscription à l'annuaire -Formule complete- de l'espace mariage.\n \n ";
// on envois le mail http://fr.php.net/manual/fr/ref.mail.php // bool mail ( string to, string subject, string message [, string additional_headers [, string additional_parameters]] )
// ATTENTION en général vous n'avez pas de serveur de mail sur votre machine !
// à tester sur le net directment en cas de problème avec la fonction mail
if( mail('contact@sokebana.net','Nouvelle inscription -Formule complète- de l\'Espace Mariage',$message. "\n Activité:" .$formActivite. "\n Titre:".$formTitre. "\n Site web:" .$formSite_web. "\n Gamme de prix:" .$formGamme_prix. "\n \n Mail:" .$formMail "\n Adresse:".$formAdresse. "\n Code postal:".$formCode_postal. "\n Ville:".$formVille. "\n Telephone:".$formTelephone. "\n Portable".$formPortable. "\n Zone couverte".$formZone_activite. "\n fichier".$formFichier."\n \n Vignette:".$formFichier." \n" )" Description: " $formDescription"\n" ){
echo ('<title>Votre soumission est prise en compte</title>
<link href="style.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
body {
background-repeat: no-repeat;
background:#321c0b;
color:#FFFFDD;
font-size:12px;
font-family:Verdana;
background-image: url(../photos-espace-mariage/fond-mariage.jpg);
}
Le seul espace mariage en France où les professionnels du mariage répondent à vos questions et vous guident tout au long des préparatifs de votre mariage
,
----
<!-- CSS Tabs -->
<li>Accueil</li>
<li>Conseils</li>
<li>Forum</li>
<li>A la Une</li>
<li>Coup de coeur</li>
<li>Prestataires</li>
<li>Appels d\'offre</li>
<li>Salons du mariage</li>
<li>Boite à outils</li>
cs_sokebana
Messages postés48Date d'inscriptionjeudi 26 juin 2008StatutMembreDernière intervention21 mars 2009 10 nov. 2008 à 12:41
oui je disais aussi que je fais les tests sous firefox (ff) et g bien le message de remerciement, par contre sous IE (internet explorer), j'ai la page vide avce seulement le background
Vous n’avez pas trouvé la réponse que vous recherchez ?
sitajony
Messages postés103Date d'inscriptionjeudi 6 novembre 2008StatutMembreDernière intervention 9 juin 2010 10 nov. 2008 à 13:07
Ah bon? C'est bizare que sa soit différent dans different navigateur tu peux me r'envoyer l'archive de la source avec les modifications que t'a fait et qui marche comme moi je crois que je me suis perdu XD c'est en bordel...
sitajony
Messages postés103Date d'inscriptionjeudi 6 novembre 2008StatutMembreDernière intervention 9 juin 2010 10 nov. 2008 à 15:42
Biensure les images ne seront pas en pièce jointe mais téléchargable depuis le mail...
J'ai fais que la vignette après si sa marche je peux faire avec les images 1, 2, 3, 4.
sitajony
Messages postés103Date d'inscriptionjeudi 6 novembre 2008StatutMembreDernière intervention 9 juin 2010 10 nov. 2008 à 15:55
Ya du nouveaux le contenue de la page est là seulement si le style est enlevé mais au début sa met erreur internet puis comme je dois actualiser pour voir si sa marche oui sa marche la page s'affiche mais le titre est "serveur introuvable" et sa met veuillez remplir tout les champ mais comme la version de mon IE est ancienne peut être qu'avec toit sa marche mieux. J'ai mis à jour le lien tu peux recliquer dessus.
Je viens de me rendre compte que le lien est bloqué par code source attends je te donne l'adresse:
http://sitajony.hbg.fr/source.rar
sitajony
Messages postés103Date d'inscriptionjeudi 6 novembre 2008StatutMembreDernière intervention 9 juin 2010 10 nov. 2008 à 16:41
Lol oui sa s'améliore mais le problemme c'est que le mail n'est pas encodé en HTML du coup ce n'est pas un lien qui s'affiche mais la source du lien. Et de plus le nom du fichier aparament s'appelle array il faudrait que je trouve comment afficher le nom du fichier avec l'extension.
Je te dis quand ya du nouveaux.