Bonjour,
J'avoue être dans l'expectative la plus totale là ! J'ai des formulaires de backoffice qui ont été testés avec succès en local sur FF et qui ne fonctionnent plus une fois en ligne sur firefox et safari (sous windows).
Tout se passe comme si ces formulaires n'étaient jamais postés. Une idée ?
Voici le code de l'un d'eux :
<?php
include "session.php";

include "inc_menu.php";
?>
<h4><a href="index.php">Retour à la liste des actus</a></h4>
<h3>Nouvelle actualité</h3>
<?php
if (isset($_POST['envoye']))
{
/* Récupération des valeurs des champs du formulaire */
$titre = addslashes($_POST['titre']);
$date = $_POST['date'];
$texte = addslashes($_POST['texte']);
$lien = $_POST['lien'];

//----------------------------
// VARIABLES pour l'upload d'image
//----------------------------
$target = '../illustration/'; // Repertoire cible
$jpg = 'jpg'; // Extension du fichier sans le .
$gif = 'gif'; // Extension du fichier sans le .
$max_size = 400000; // Taille max en octets du fichier
$width_max = 300; // Largeur max de l'image en pixels
$height_max = 300; // Hauteur max de l'image en pixels
//---------------------------------------------
// DEFINITION DES VARIABLES LIEES AU FICHIER image
//---------------------------------------------
$image = $_FILES['image']['name'];
$taille = $_FILES['image']['size'];
$tmp = $_FILES['image']['tmp_name'];

/* Expression régulière permettant de vérifier que le lien (adresse) est au bon format -*/
$regex_lien = '`^http://[-[:alnum:]]+\.[-[:alnum:]]+\.[a-zA-Z]{2,4}(:[0-9]+)?$`';

/* Expression régulière permettant de vérifier qu'aucun en-tête n'est inséré dans nos champs */
$regex_head = '/[\n\r]/';

/* Si le formulaire n'est pas posté de notre site on renvoie
* vers la page d'accueil */
if($_SERVER['HTTP_REFERER'] != 'http://www.nomdedomaine/backoffice/new_actu.php')
{
header('Location: http://www.nomdedomaine/module_news/index.php');
}
/* On vérifie que tous les champs sont remplis */
elseif (empty($date)
|| empty($titre)
|| empty($texte))
{$alert = 'Les champs "date", "titre" et "texte" doivent être renseignés';}
/* Si un lien est soumis on vérifie que son format est correct */
elseif ((!empty($lien)) && (!preg_match($regex_lien, $lien)) )
{
$alert = 'Mauvais format de lien : '.$lien.'<br/>L\'adresse doit être du type "http://www.adresse.truc" ou "http://nom.hebergeur.truc"';
}
/* On vérifie qu'il n'y a aucun header dans les champs */
elseif (preg_match($regex_head, $titre)
|| preg_match($regex_head, $date)
|| preg_match($regex_head, $texte)
|| preg_match($regex_head, $lien)
|| preg_match($regex_head, $image))
{ $alert = 'En-têtes interdites dans les champs du formulaire'; }
/* Si aucun problème on envoie les modifs*/

else
{
if (!empty($image))
{
if((substr($image, -3) == $jpg) OR (substr($image, -3) == $gif)) // On récupère les dimensions du fichier
{
$infos_img = getimagesize($_FILES['image']['tmp_name']); // On vérifie les dimensions et le poids de l'image
if(($infos_img[0] <= $width_max) && ($infos_img[1] <= $height_max) && ($_FILES['image']['size'] <= $max_size))
{
// Si c'est OK, on teste l'upload
if(move_uploaded_file($_FILES['image']['tmp_name'],$target.$_FILES['image']['name']))
{
$sqlQuery = "INSERT INTO actu (titre, date, texte, lien, illus) VALUES ('$titre', '$date', '$texte', '$lien', '$image')";
if ($result = MYSQL_QUERY($sqlQuery)) {$alert='Nouvelle actu enregistrée !';} else {$alert='Il y a un problème, contactez le webmaster';}
}
else // Sinon on affiche une erreur système
{ $alert='Problème lors de l\'upload ! Contactez le webmaster';}
}
else // Sinon on affiche une erreur pour les dimensions et taille de l'image
{$alert='Problème dans les dimensions ou le poids de l\'image ! Poids maximum : 40 ko. Taille maximum : 300 pixels';}
}
else // Sinon on affiche une erreur pour l'extension
{$alert= 'Votre image ne comporte pas l\'extension .jpg ou.gif !'; }
}//fin de si une image est postée
else
{
$sqlQuery = "INSERT INTO actu (titre, date, texte, lien) VALUES ('$titre', '$date', '$texte', '$lien')";
if ($result = MYSQL_QUERY($sqlQuery)) {$alert='Nouvelle actu enregistrée !';} else {$alert='Il y a un problème, contactez le webmaster';}
}//fin de si pas d'image postée
}//fin d'envoi des modifs
} //fin de "si formulaire posté"

//----------------------
// FORMULAIRE
//----------------------
if (!empty($alert)) {echo '<p><span class="erreur">'.$alert.'</span></p>';}

echo '<form enctype="multipart/form-data" name="EditActuForm" action="'.$PHP_SELF.'" method="post">';
echo '<fieldset>';
echo '<p>';
echo '<label for="titre">Titre :</label>';
echo '<input type="text" id="titre" name="titre" size="40" value=""/>';
echo '</p>';
echo '<p>';
echo '<label for="date">Date :</label>';
echo '<input type="text" id="date" name="date" size="15" value=""/>&nbsp;<a href="javascript:show_calendar(\'EditActuForm.date\');">> Sélectionnez une date</a>';
echo '</p>';
echo '<p>';
echo '<label for="texte">Texte :</label>';
echo '<textarea id="texte" name="texte" cols="37" rows="4">';
echo '</textarea>';
echo '</p>';
echo '<p>';
echo '<label for="lien">Lien :</label>';
echo '<input type="text" id="lien" name="lien" size="40" value=""/>';
echo '</p>';
echo '<p>';
echo '<label for="image">Illustration :</label>';
echo '<input type="file" id="image" name="image"/>';
echo '</p>';

echo '<input type="submit" name="envoye" value="Enregistrer"/>';
echo '</fieldset>';
echo '</form>';

?>
</body>
</html>