Précédent   Forum des professionnels en informatique > PHP > Langage > Syntaxe
Syntaxe Forum d'entraide sur la syntaxe de PHP et la POO. Avant de poster -> FAQ syntaxe, Cours d'initiation et cours de POO
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 19/05/2011, 12h57   #1
Futur Membre du Club
 
Inscription : mars 2011
Messages : 54
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 54
Points : 17
Points : 17
Par défaut Headers already sent

Bonjour à tous,
Petit soucis d'incompréhension...

J'ai developpé mon site en local, et lorsque je l'ai mis sur mon hébergeur (OVH)
il m'indique ce message d'erreur :

Citation:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /homez.221/benjaminug/www/canardo/OUR-Blog/admin.php:10) in /homez.221/benjaminug/www/canardo/OUR-Blog/PHP-GESTION-NEWS-v3/news_ADMIN/fonctions_adm/_protect.php on line 1

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /homez.221/benjaminug/www/canardo/OUR-Blog/admin.php:10) in /homez.221/benjaminug/www/canardo/OUR-Blog/PHP-GESTION-NEWS-v3/news_ADMIN/fonctions_adm/_protect.php on line 1
_protect.php
Code :
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
<?php session_start();
// ***************************************************************
// Connection a la partie "administration"
// ***************************************************************
// ==> CONFIGURATION de VOS parametres PERSO
// login et mot de passe de l'ADMINISTRATEUR :
   $AdminIdentifiant = 'demo';
   $AdminMotDePasse = 'test';
// ***************************************************************
$login = '';
$pass = '';
$msgerreur = '';
// ------------------------------
// si le visiteur (administrateur ?) a validé le formulaire
// on recupere les donnees
if (isset($_POST['login']) && $_POST['login']!='' && isset($_POST['pass']) && $_POST['pass']!='')
{
    $login = $_POST['login'];
    $pass = $_POST['pass'];
	// --------------------
	if ($login == $AdminIdentifiant && $pass == $AdminMotDePasse) 
	{
		// Si le login et le mot de passe sont corrects
		// on met true dans une variable de session
		$_SESSION["news_SESSION"] = true;   
	// --------------------
	} else {
		$_SESSION["news_SESSION"] = false;
		$msgerreur = 'Identifiant ou mot de passe incorrect';
	}
} 
// ------------------------------
?>
admin.php
Code :
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
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
<title>OUR-Blog.net | News | Administration des Articles</title>
<meta name="DESCRIPTION" content="" />
<meta name="KEYWORDS" content="" />
<link rel="icon" type="image/png" href="design/mafavicon.png" />
<link rel="stylesheet" type="text/css" href="div.css" />
</head>
 
<body>
<div id="container">
	<div class="head">
		<div class="banner"></div>
	</div>
 
	<?php
		include_once 'nav_top.php';
	?>
 
 
	<?php 
		include_once 'admin_alone.php';
	?>
 
	<div class="footer_bg" align="center">
		<div class="footer_txt">OUR-blog.net a Benjamin Prost Entreprises company, all rights reserved 2011.</div>
	</div>
 
</div>
</body>
</html>
Quelqu'un serait-il m'aiguiller un peu plus svp et me dire pourquoi ?
Merci d'avance :-)

Voici le lien du site hébergé : pour ceux que ca pourrait aider : http://benjaminprostblog.com/canardo/OUR-Blog/admin.php
Delvauxo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 13h11   #2
Membre éprouvé
 
Homme Gaetan
Webmaster
Inscription : janvier 2007
Messages : 386
Détails du profil
Informations personnelles :
Nom : Homme Gaetan
Âge : 40
Localisation : France

Informations professionnelles :
Activité : Webmaster
Secteur : Biens de consommation

Informations forums :
Inscription : janvier 2007
Messages : 386
Points : 441
Points : 441
Envoyer un message via MSN à Gaetan_
A quel moment, et ou appelles tu _protect.php ?

Aucun caractère ne doit apparaitre avant :
Gaetan_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 13h15   #3
Futur Membre du Club
 
Inscription : mars 2011
Messages : 54
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 54
Points : 17
Points : 17
Il manque ce fichier pour que ce soit plus compréhensible !

c'est à cause des inlude...

J'ai cerné plus ou moins le problème mais je ne sais comment le résoudre.

Est-ce possible de le résoudre ou alors je dois changer complètement d'idée ???

admin_alone.php
Code :
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
<?php
// ***************************************************************
// ADMIN NEWS : IDENTIFICATION
// ***************************************************************
// Protection de page index ADMIN
   include_once('./PHP-GESTION-NEWS-v3/news_ADMIN/fonctions_adm/_protect.php');
// **************************************
// CONFIGURATION de la NEWS
	include_once('./PHP-GESTION-NEWS-v3/fonctions/news_config.php');
// **************************************
// Accès autorisé si identifié
if (isset($_SESSION['news_SESSION']) && $_SESSION['news_SESSION']==true)
{  
   // Redirection vers la page d administration
   header("location: ./PHP-GESTION-NEWS-v3/news_ADMIN/news_admin.php");
   exit;
}
// ------------------------------------------------------
// sinon affichage du formulaire d'identification
?>
 
 
<!-- identification - connexion -->
<div class="login_box">
<center>
<form id="identification" method="post" action="./admin_alone.php">
<fieldset>
<LEGEND align=top>ADMINISTRATION DES ARTICLES</LEGEND>
	<h3><img src="./PHP-GESTION-NEWS-v3/news_ADMIN/icones/verrouiller.png" alt="" /> Identifiez-vous :</h3>
 
	<table>
	<tr>
	<td align="right"><label class="label15" for="idlogin" ">Identifiant : </label></td>
	<td><input class="champobligatoire" id="idlogin" name="login" size="20" /></td>
	</tr>
	<br />
	<tr>
	<td align="right"><label class="label15" for="idpass" ">Mot de passe : </label></td>
	<td><input class="champobligatoire" id="idpass" name="pass" type="password" size="20" /></td>
	</tr>
	<tr>
	<td></td><td align="right"><button name="btsubmit" type="submit" title="Connexion"><img src="./PHP-GESTION-NEWS-v3/news_ADMIN/icones/arrow_next.png" alt="" /> Connexion</button></td>
	</tr>
	</table>
 
</fieldset>
</form>
</center>
 
 
 
</div>
Delvauxo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 13h23   #4
Membre Expert
 
Avatar de transgohan
 
Homme Baptiste ROUSSEL
Étudiant
Inscription : janvier 2011
Messages : 802
Détails du profil
Informations personnelles :
Nom : Homme Baptiste ROUSSEL
Localisation : France, Territoire de Belfort (Franche Comté)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : janvier 2011
Messages : 802
Points : 1 515
Points : 1 515
Ton session_start() doit absolument être mis avant tout envoi d'affichage.
Donc il doit se trouver avant le doctype.

Va falloir faire migrer cette petite ligne de code.
__________________
Toujours se souvenir que la majorité des ennuis viennent de l'espace occupé entre la chaise et l'écran de l'ordinateur.
transgohan est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 13h30   #5
Membre éprouvé
 
Homme Gaetan
Webmaster
Inscription : janvier 2007
Messages : 386
Détails du profil
Informations personnelles :
Nom : Homme Gaetan
Âge : 40
Localisation : France

Informations professionnelles :
Activité : Webmaster
Secteur : Biens de consommation

Informations forums :
Inscription : janvier 2007
Messages : 386
Points : 441
Points : 441
Envoyer un message via MSN à Gaetan_
Ton include_once 'admin_alone.php' n'est pas en effet en début de script.

Ne change pas tout.

Fait un fichier include "général" que tu appelleras au début de tes pages, juste là pour déclencher ta session et déclarer tes variables.

Tu les interprètes alors plus bas dans tes page.
Gaetan_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 13h31   #6
Futur Membre du Club
 
Inscription : mars 2011
Messages : 54
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 54
Points : 17
Points : 17
Par défaut EN GROS !!!

Voici ce qui pause problème mais comment le résoudre ?
j'ai remplacé le include_once '_protect.php' par son contenu entier et j'ai fait la meme chose avec admin_alone.php !

Comment faire ?

Code :
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
<title>OUR-Blog.net | News | Administration des Articles</title>
<meta name="DESCRIPTION" content="" />
<meta name="KEYWORDS" content="" />
<link rel="icon" type="image/png" href="design/mafavicon.png" />
<link rel="stylesheet" type="text/css" href="div.css" />
</head>
 
<body>
<div id="container">
	<div class="head">
		<div class="banner"></div>
	</div>
 
	<?php
		include_once 'nav_top.php';
	?>
 
 
<?php
// ***************************************************************
// ADMIN NEWS : IDENTIFICATION
// ***************************************************************
// Protection de page index ADMIN
<?php session_start();
// ***************************************************************
// Connection a la partie "administration"
// ***************************************************************
// ==> CONFIGURATION de VOS parametres PERSO
// login et mot de passe de l'ADMINISTRATEUR :
   $AdminIdentifiant = 'demo';
   $AdminMotDePasse = 'test';
// ***************************************************************
$login = '';
$pass = '';
$msgerreur = '';
// ------------------------------
// si le visiteur (administrateur ?) a validé le formulaire
// on recupere les donnees
if (isset($_POST['login']) && $_POST['login']!='' && isset($_POST['pass']) && $_POST['pass']!='')
{
    $login = $_POST['login'];
    $pass = $_POST['pass'];
	// --------------------
	if ($login == $AdminIdentifiant && $pass == $AdminMotDePasse) 
	{
		// Si le login et le mot de passe sont corrects
		// on met true dans une variable de session
		$_SESSION["news_SESSION"] = true;   
	// --------------------
	} else {
		$_SESSION["news_SESSION"] = false;
		$msgerreur = 'Identifiant ou mot de passe incorrect';
	}
} 
// ------------------------------
?>
// **************************************
// CONFIGURATION de la NEWS
	include_once('./PHP-GESTION-NEWS-v3/fonctions/news_config.php');
// **************************************
// Accès autorisé si identifié
if (isset($_SESSION['news_SESSION']) && $_SESSION['news_SESSION']==true)
{  
   // Redirection vers la page d administration
   header("location: ./PHP-GESTION-NEWS-v3/news_ADMIN/news_admin.php");
   exit;
}
// ------------------------------------------------------
// sinon affichage du formulaire d'identification
?>
 
 
<!-- identification - connexion -->
<div class="login_box">
<center>
<form id="identification" method="post" action="./admin_alone.php">
<fieldset>
<LEGEND align=top>ADMINISTRATION DES ARTICLES</LEGEND>
	<h3><img src="./PHP-GESTION-NEWS-v3/news_ADMIN/icones/verrouiller.png" alt="" /> Identifiez-vous :</h3>
 
	<table>
	<tr>
	<td align="right"><label class="label15" for="idlogin" ">Identifiant : </label></td>
	<td><input class="champobligatoire" id="idlogin" name="login" size="20" /></td>
	</tr>
	<br />
	<tr>
	<td align="right"><label class="label15" for="idpass" ">Mot de passe : </label></td>
	<td><input class="champobligatoire" id="idpass" name="pass" type="password" size="20" /></td>
	</tr>
	<tr>
	<td></td><td align="right"><button name="btsubmit" type="submit" title="Connexion"><img src="./PHP-GESTION-NEWS-v3/news_ADMIN/icones/arrow_next.png" alt="" /> Connexion</button></td>
	</tr>
	</table>
 
</fieldset>
</form>
</center>
 
 
 
</div>
 
 
	<div class="footer_bg" align="center">
		<div class="footer_txt">OUR-blog.net a Benjamin Prost Entreprises company, all rights reserved 2011.</div>
	</div>
 
</div>
</body>
</html>
Delvauxo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 13h34   #7
Futur Membre du Club
 
Inscription : mars 2011
Messages : 54
Détails du profil
Informations forums :
Inscription : mars 2011
Messages : 54
Points : 17
Points : 17
Je vois où tu voudrais en venir Gaetan,

include_general.php
Citation:
<?php session_start (); ?>
Je fais appel a ce fichier à l'aide d'un include à chaque début de page ?
Je vois pas très clair :s
Delvauxo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/05/2011, 14h51   #8
Membre régulier
 
Avatar de Pierrot2Mars
 
Homme Pierrot
Développeur Web
Inscription : novembre 2010
Messages : 79
Détails du profil
Informations personnelles :
Nom : Homme Pierrot
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2010
Messages : 79
Points : 96
Points : 96
Citation:
Envoyé par Delvauxo Voir le message
Voici ce qui pause problème mais comment le résoudre ?
j'ai remplacé le include_once '_protect.php' par son contenu entier et j'ai fait la meme chose avec admin_alone.php !

Comment faire ?

Code :
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
<title>OUR-Blog.net | News | Administration des Articles</title>
<meta name="DESCRIPTION" content="" />
<meta name="KEYWORDS" content="" />
<link rel="icon" type="image/png" href="design/mafavicon.png" />
<link rel="stylesheet" type="text/css" href="div.css" />
</head>
 
<body>
<div id="container">
	<div class="head">
		<div class="banner"></div>
	</div>
 
	<?php
		include_once 'nav_top.php';
	?>
 
 
<?php
// ***************************************************************
// ADMIN NEWS : IDENTIFICATION
// ***************************************************************
// Protection de page index ADMIN
<?php session_start();
// ***************************************************************
// Connection a la partie "administration"
// ***************************************************************
// ==> CONFIGURATION de VOS parametres PERSO
// login et mot de passe de l'ADMINISTRATEUR :
   $AdminIdentifiant = 'demo';
   $AdminMotDePasse = 'test';
// ***************************************************************
$login = '';
$pass = '';
$msgerreur = '';
// ------------------------------
// si le visiteur (administrateur ?) a validé le formulaire
// on recupere les donnees
if (isset($_POST['login']) && $_POST['login']!='' && isset($_POST['pass']) && $_POST['pass']!='')
{
    $login = $_POST['login'];
    $pass = $_POST['pass'];
	// --------------------
	if ($login == $AdminIdentifiant && $pass == $AdminMotDePasse) 
	{
		// Si le login et le mot de passe sont corrects
		// on met true dans une variable de session
		$_SESSION["news_SESSION"] = true;   
	// --------------------
	} else {
		$_SESSION["news_SESSION"] = false;
		$msgerreur = 'Identifiant ou mot de passe incorrect';
	}
} 
// ------------------------------
?>
// **************************************
// CONFIGURATION de la NEWS
	include_once('./PHP-GESTION-NEWS-v3/fonctions/news_config.php');
// **************************************
// Accès autorisé si identifié
if (isset($_SESSION['news_SESSION']) && $_SESSION['news_SESSION']==true)
{  
   // Redirection vers la page d administration
   header("location: ./PHP-GESTION-NEWS-v3/news_ADMIN/news_admin.php");
   exit;
}
// ------------------------------------------------------
// sinon affichage du formulaire d'identification
?>
 
 
<!-- identification - connexion -->
<div class="login_box">
<center>
<form id="identification" method="post" action="./admin_alone.php">
<fieldset>
<LEGEND align=top>ADMINISTRATION DES ARTICLES</LEGEND>
	<h3><img src="./PHP-GESTION-NEWS-v3/news_ADMIN/icones/verrouiller.png" alt="" /> Identifiez-vous :</h3>
 
	<table>
	<tr>
	<td align="right"><label class="label15" for="idlogin" ">Identifiant : </label></td>
	<td><input class="champobligatoire" id="idlogin" name="login" size="20" /></td>
	</tr>
	<br />
	<tr>
	<td align="right"><label class="label15" for="idpass" ">Mot de passe : </label></td>
	<td><input class="champobligatoire" id="idpass" name="pass" type="password" size="20" /></td>
	</tr>
	<tr>
	<td></td><td align="right"><button name="btsubmit" type="submit" title="Connexion"><img src="./PHP-GESTION-NEWS-v3/news_ADMIN/icones/arrow_next.png" alt="" /> Connexion</button></td>
	</tr>
	</table>
 
</fieldset>
</form>
</center>
 
 
 
</div>
 
 
	<div class="footer_bg" align="center">
		<div class="footer_txt">OUR-blog.net a Benjamin Prost Entreprises company, all rights reserved 2011.</div>
	</div>
 
</div>
</body>
</html>
Tu fais des blagues ?
Ou est placé ton header() ? Avant, Dans ou Après ton code HTML ?

Comme tout le monde te le dit... il faut placer ton header() AVANT tout code HTML ou affichage de texte par PHP.
Idem pour session_start();
Et enlève les balise <?php et ?> en trop

Code :
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
<?php
// ***************************************************************
// ADMIN NEWS : IDENTIFICATION
// ***************************************************************
session_start();
// ***************************************************************
// Connection a la partie "administration"
// ***************************************************************
// ==> CONFIGURATION de VOS parametres PERSO
// login et mot de passe de l'ADMINISTRATEUR :
   $AdminIdentifiant = 'demo';
   $AdminMotDePasse = 'test';
// ***************************************************************
$login = '';
$pass = '';
$msgerreur = '';
// ------------------------------
// si le visiteur (administrateur ?) a validé le formulaire
// on recupere les donnees
if (isset($_POST['login']) && $_POST['login']!='' && isset($_POST['pass']) && $_POST['pass']!='')
{
    $login = $_POST['login'];
    $pass = $_POST['pass'];
	// --------------------
	if ($login == $AdminIdentifiant && $pass == $AdminMotDePasse) 
	{
		// Si le login et le mot de passe sont corrects
		// on met true dans une variable de session
		$_SESSION["news_SESSION"] = true;   
	// --------------------
	} else {
		$_SESSION["news_SESSION"] = false;
		$msgerreur = 'Identifiant ou mot de passe incorrect';
	}
} 
// ------------------------------
// **************************************
// CONFIGURATION de la NEWS
	include_once('./PHP-GESTION-NEWS-v3/fonctions/news_config.php');
// **************************************
// Accès autorisé si identifié
if (isset($_SESSION['news_SESSION']) && $_SESSION['news_SESSION']==true)
{  
   // Redirection vers la page d administration
   header("location: ./PHP-GESTION-NEWS-v3/news_ADMIN/news_admin.php");
   exit;
}
// ------------------------------------------------------
// sinon affichage du formulaire d'identification
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
<title>OUR-Blog.net | News | Administration des Articles</title>
<meta name="DESCRIPTION" content="" />
<meta name="KEYWORDS" content="" />
<link rel="icon" type="image/png" href="design/mafavicon.png" />
<link rel="stylesheet" type="text/css" href="div.css" />
</head>
 
<body>
<div id="container">
	<div class="head">
		<div class="banner"></div>
	</div>
 
	<?php
		include_once 'nav_top.php';
	?>
 
 
<!-- identification - connexion -->
<div class="login_box">
<center>
<form id="identification" method="post" action="./admin_alone.php">
<fieldset>
<LEGEND align=top>ADMINISTRATION DES ARTICLES</LEGEND>
	<h3><img src="./PHP-GESTION-NEWS-v3/news_ADMIN/icones/verrouiller.png" alt="" /> Identifiez-vous :</h3>
 
	<table>
	<tr>
	<td align="right"><label class="label15" for="idlogin" ">Identifiant : </label></td>
	<td><input class="champobligatoire" id="idlogin" name="login" size="20" /></td>
	</tr>
	<br />
	<tr>
	<td align="right"><label class="label15" for="idpass" ">Mot de passe : </label></td>
	<td><input class="champobligatoire" id="idpass" name="pass" type="password" size="20" /></td>
	</tr>
	<tr>
	<td></td><td align="right"><button name="btsubmit" type="submit" title="Connexion"><img src="./PHP-GESTION-NEWS-v3/news_ADMIN/icones/arrow_next.png" alt="" /> Connexion</button></td>
	</tr>
	</table>
 
</fieldset>
</form>
</center>
 
 
 
</div>
 
 
	<div class="footer_bg" align="center">
		<div class="footer_txt">OUR-blog.net a Benjamin Prost Entreprises company, all rights reserved 2011.</div>
	</div>
 
</div>
</body>
</html>
Pierrot2Mars est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h41.


 
 
 
 
Partenaires

Hébergement Web