Bonjour,

J'ai vu sur le net que cette erreur était assez courante :

Warning: Cannot modify header information - headers already sent by (output started at /home/monsite/www/genxml.php:41) in /home/monsite/www/genxml.php on line 1
Je n'arrive pas à régler cette erreur survenue lors de la mise en ligne du site.

Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php header("Content-type: text/xml");
 
include("dbinfo.php"); //connexion à la bdd
// début du fichier xml
 
$dom = new DOMDocument("1.0");
$node = $dom->createElement("activites");
$parnode = $dom->appendChild($node);
 
// démarre une connexion mysql
 
$connection = mysql_connect('localhost', $username, $password);
if (!$connection) {
    die('Not connected : ' . mysql_error());
}
 
$db_selected = mysql_select_db($database, $connection);
if (!$db_selected) {
    die('Can\'t use db : ' . mysql_error());
}
 
$query = 'SELECT ps_typeactivite.id_typeactivite AS idTa, ps_activiteproduct.id_product, ps_activite.name AS nameActivite, ps_activite.lat, ps_activite.lng, ps_activite.ville, 
ps_activite.adresse, ps_activite.cp, ps_activite.img, ps_activiteproduct.position,
ps_typeactivite.name AS nameTypeactivite, ps_activite_lang.description AS descriptionActivite
FROM ps_activite, ps_activite_lang, ps_activiteproduct, ps_typeactivite
WHERE ps_activite.id_activite = ps_activite_lang.id_activite
AND ps_activite.id_activite = ps_activiteproduct.id_activite
AND ps_activite.typeactivite_id = ps_typeactivite.id_typeactivite
ORDER BY ps_activiteproduct.position ASC';
$result = mysql_query($query);
if (!$result) {
    die('Invalid query: ' . mysql_error());
}
 
while ($row = \mysql_fetch_assoc($result)) {
    // ADD TO XML DOCUMENT NODE  
    $node = $dom->createElement("activite");
    $newnode = $parnode->appendChild($node);
    $newnode->setAttribute("id_product", $row['id_product']);
    $newnode->setAttribute("idTa", $row['idTa']);
    $newnode->setAttribute("nameActivite", utf8_encode($row['nameActivite']));
    $newnode->setAttribute("lat", $row['lat']);
    $newnode->setAttribute("lng", $row['lng']);
    $newnode->setAttribute("ville", utf8_encode($row['ville']));
    $newnode->setAttribute("adresse", utf8_encode($row['adresse']));
    $newnode->setAttribute("cp", $row['cp']);
    $newnode->setAttribute("img", utf8_encode($row['img']));
    $newnode->setAttribute("position", $row['position']);
    $newnode->setAttribute("nameTypeactivite", utf8_encode($row['nameTypeactivite']));
    $newnode->setAttribute("descriptionActivite", utf8_encode($row['descriptionActivite']));
}
 
// affichage
echo $dom->saveXML();?>
Tout marchait très bien en local. De plus, j'ai aussi cette erreur concernait la ligne du while :

Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/monsite/www/genxml.php on line 41

Merci à vous.