Bonjour à tous,
J'ai un message d'erreur qui apparait lorsque je termine une requête sql, et demande une redirection grâce à
header("Location: index.php");
Le problème n'apparait pas quand je suis en local, que lorsque je met mon site en ligne.
J'ai lu que ça pouvait venir de la présence de contenu généré dans la page avant d''exécuter cette ligne de code, mais la c'est pas le cas, c'est juste une page pour supprimer un élément dans une bdd.
Voici le message d'erreur:
Warning: Cannot modify header information - headers already sent by (output started at /homez.332/creationcph/www/Admin/mod_catalogue/supprimer.php:14) in /homez.332/creationcph/www/Admin/mod_catalogue/supprimer.php on line 34
et le code de ma page:
<?php
// On prolonge la session
session_start();
// On teste si la variable de session existe et contient une valeur
if(empty($_SESSION['login'])) {
// Si inexistante ou nulle, on redirige vers le formulaire de login
header('Location: ../index.php');
exit();
}
?>
<?php
require "../../config.php";
mysql_connect(DB_SERVER,DB_LOGIN,DB_PASS);
mysql_select_db(DB_NAME);
mysql_query('SET NAMES '.DB_ENC);
// On récupère les entrées de l'id
$sql="SELECT * FROM catalogue WHERE id={$_GET['id']}";
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$data=mysql_fetch_assoc($req);
// On défini led fichiers images et on les supprime
if(!empty($data["nom"]) AND $data["nom"] != "default"){
$filename = 'images/min/'.$data["nom"].'.jpg';
$filenamebis = 'images/'.$data["nom"].'.jpg';
unlink($filename);
unlink($filenamebis);
}
$sql = "DELETE FROM catalogue WHERE id={$_GET['id']}";
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
header("Location: index.php");
?>
J'ai aussi essayé une redirection en javascript:
echo '<script language="javascript" type="text/javascript">window.location = "index.php";</script>';
Mais toujours le même problème.
Y a t-il un autre moyen de faire une autre redirection sans erreur ou une partie de mon code à corriger???
Merci beaucoup de votre aide et pour vos futures réponses.