Probleme retour erreur
Résolu
nightcryo76
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
nightcryo76 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
nightcryo76 Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
bonjour,
je rencontre un problème avec mon code, jai protéger les extension pour ne pas recevoir de fichier .php et quand je télécharge un fichier .php je ne reçoi pas le message d'erreur de l'extension et il envoi quand même mon formulaire.
voici mon fichier:
~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',str_replace('&','&',$email)))
{
$sujet = 'Contact: '.(strip_tags (stripslashes($_POST['sujet']))) ;
$message = (strip_tags (stripslashes($_POST['objet']))) .'-' . (strip_tags (stripslashes($_POST['prix']))) .'-' . (strip_tags (stripslashes($_POST['message']))) .'-' . (strip_tags (stripslashes($_FILES['monfichier']['name']))) .'-' ;
$headers = "From: <".$email.">\n";
$headers .= "Reply-To: ".$email."\n";
$headers .= "Content-Type: text/plain; charset=\"iso-8859-1\"";
if(mail($destinataire,$sujet,$message,$headers))
{
echo "<strong style=\"color:#FFFFFF;\">Votre annonce a bien ete envoye avec succes et sera mise en ligne prochainement.</strong>";
}
else
{
echo "<strong style=\"color:#FFFFFF;\">Une erreur c'est produite lors de l'envois du message.</strong>";
}
}
else
{
echo "<strong style=\"color:#FFFFFF;\">L'email que vous avez entré est invalide.</strong>";
}
}
else
{
?>
<form action="" method="post" enctype="multipart/form-data">
<fieldset>
<legend><font color="#FFFFFF">deposer une annonce</font></legend>
<p></p>
<label for="sujet" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">pseudo:</font></strong></label> <input type="sujet" name="sujet" id="sujet" /><br />
<p></p>
<label for="email" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">Email:</font></strong></label> <input type="text" name="email" id="email" /><br />
<p></p>
<label for="objet" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">Objet:</font></strong></label> <input type="text" name="objet" id="objet" /><br />
<p></p>
<label for="prix" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">prix:</font></strong></label> <input type="number" name="prix" id="prix" /><br />
<p></p>
<label for="message"><strong><font color="#FFFFFF">Votre annonce:</font></strong></label><br />
<textarea cols="70" rows="4" name="message" id="message"></textarea><br />
<p></p>
<label for="photo" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">photo:</font></strong></label><font color="#FFFFFF"><input type="file" name="monfichier" /></font><br />
<p></p>
<input type="submit" value="Envoyer" />
</fieldset>
</form>
<?php
}
?>
je rencontre un problème avec mon code, jai protéger les extension pour ne pas recevoir de fichier .php et quand je télécharge un fichier .php je ne reçoi pas le message d'erreur de l'extension et il envoi quand même mon formulaire.
voici mon fichier:
<?php
if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error'] > 0) $erreur = "Erreur lors du transfert";
{
// Testons si le fichier n'est pas trop gros
if ($_FILES['monfichier']['size'] <= 1000000)
{
// Testons si l'extension est autorisée
$infosfichier = pathinfo($_FILES['monfichier']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('.jpg', '.jpeg');
if (in_array($extension_upload, $extensions_autorisees))
{
// On peut valider le fichier et le stocker définitivement
move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads/' . basename($_FILES['monfichier']['name']));
echo "";
}
}
}
if(isset($_POST['email']) and isset($_POST['sujet']) and isset($_POST['message']) and isset($_POST['prix']) and isset($_POST['objet']) and isset($_FILES['monfichier']['name']))
{
$destinataire = 'contact@carpepassion.fr';
$email = htmlentities($_POST['email']);
if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`
{
$sujet = 'Contact: '.(strip_tags (stripslashes($_POST['sujet']))) ;
$message = (strip_tags (stripslashes($_POST['objet']))) .'-' . (strip_tags (stripslashes($_POST['prix']))) .'-' . (strip_tags (stripslashes($_POST['message']))) .'-' . (strip_tags (stripslashes($_FILES['monfichier']['name']))) .'-' ;
$headers = "From: <".$email.">\n";
$headers .= "Reply-To: ".$email."\n";
$headers .= "Content-Type: text/plain; charset=\"iso-8859-1\"";
if(mail($destinataire,$sujet,$message,$headers))
{
echo "<strong style=\"color:#FFFFFF;\">Votre annonce a bien ete envoye avec succes et sera mise en ligne prochainement.</strong>";
}
else
{
echo "<strong style=\"color:#FFFFFF;\">Une erreur c'est produite lors de l'envois du message.</strong>";
}
}
else
{
echo "<strong style=\"color:#FFFFFF;\">L'email que vous avez entré est invalide.</strong>";
}
}
else
{
?>
<form action="" method="post" enctype="multipart/form-data">
<fieldset>
<legend><font color="#FFFFFF">deposer une annonce</font></legend>
<p></p>
<label for="sujet" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">pseudo:</font></strong></label> <input type="sujet" name="sujet" id="sujet" /><br />
<p></p>
<label for="email" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">Email:</font></strong></label> <input type="text" name="email" id="email" /><br />
<p></p>
<label for="objet" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">Objet:</font></strong></label> <input type="text" name="objet" id="objet" /><br />
<p></p>
<label for="prix" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">prix:</font></strong></label> <input type="number" name="prix" id="prix" /><br />
<p></p>
<label for="message"><strong><font color="#FFFFFF">Votre annonce:</font></strong></label><br />
<textarea cols="70" rows="4" name="message" id="message"></textarea><br />
<p></p>
<label for="photo" style="display:inline-block;width:100px;"><strong><font color="#FFFFFF">photo:</font></strong></label><font color="#FFFFFF"><input type="file" name="monfichier" /></font><br />
<p></p>
<input type="submit" value="Envoyer" />
</fieldset>
</form>
<?php
}
?>
A voir également:
- Probleme retour erreur
- Retour à la ligne excel formule - Guide
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Erreur 0x80070643 - Accueil - Windows
- Erreur t32 ✓ - Forum Livebox
- Retour à la ligne chatgpt ✓ - Forum MacOS
4 réponses
Salut,
Tu n'as aucun traitement pour le cas où l'extension n'est pas autorisée.
Il faut ajouter un bloc else à la suite du bloc
Bonne journée
Tu n'as aucun traitement pour le cas où l'extension n'est pas autorisée.
Il faut ajouter un bloc else à la suite du bloc
if (in_array($extension_upload, $extensions_autorisees))afin d'afficher un message d'erreur.
Bonne journée
Bonsoir,
J'ai trouvé une autre solution, j'ai utilisé type mime, tout fonctionne impeccablement bien. donc j'ai remplacer sa:
par sa:
J'ai trouvé une autre solution, j'ai utilisé type mime, tout fonctionne impeccablement bien. donc j'ai remplacer sa:
$infosfichier = pathinfo($_FILES['monfichier']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg');
if (in_array($extension_upload, $extensions_autorisees))
par sa:
$type_file = $_FILES['fichier']['type'];
$allowed_types = array(
"image/pjpeg",
"image/jpeg",
);
if (!in_array($_FILES['fichier']['type'], $allowed_types))
die ('fichier incorrect');
Bonjour,
j'ai essayé, je n'ais pas dut bien le codé car quand je met le bloque else sa me met une erreur à la ligne de mon message d'erreur
j'ai essayé, je n'ais pas dut bien le codé car quand je met le bloque else sa me met une erreur à la ligne de mon message d'erreur
Bonjour, voilà le changement apporté a mon codage, mais sa ne fonctionne toujour pas:
if (isset($_FILES['monfichier']) AND $_FILES['monfichier']['error'] > 0) $erreur = "Erreur lors du transfert";
{
// Testons si le fichier n'est pas trop gros
if ($_FILES['monfichier']['size'] <= 1000000)
{
// Testons si l'extension est autorisée
$infosfichier = pathinfo($_FILES['monfichier']['name']);
$extension_upload = $infosfichier['extension'];
$extensions_autorisees = array('jpg', 'jpeg');
if (in_array($extension_upload, $extensions_autorisees))
{
// On peut valider le fichier et le stocker définitivement
move_uploaded_file($_FILES['monfichier']['tmp_name'], 'uploads/' . basename($_FILES['monfichier']['name']));
{
echo 'Upload effectué avec succès !';
}
else //Sinon (la fonction renvoie FALSE).
{
echo 'Echec de l\'upload !';
}
}
}
}