[PHP] probleme d'affichage de liens (news)

Résolu
jerryp -  
jerryp Messages postés 143 Statut Membre -
Bonjour,
j'ai récement créé un site web pour un vendeur de voitures...

afin que ce dernier puisse mettre ses annonces en ligne, j'ai modifié un peu un script de news...

j'ai donc un formulaire sur une page "rediger_news.php" qui contient un champ pour le titre, et un champ pour le contenu... j'ai aussi ajouté un champ "input type="file"" afin de pouvoir ajouter des photos...
Ensuite, j'ai une page "administration.php" qui traite le formulaire et qui affiche l'annonce dans une page "annonces.php"... dans cette page administration, j'ai un script qui uploade les images et qui est sensé afficher un lien vers celles-ci dans l'annonce... Et c'est là que ça coince...
L'image est correctement uploadée, mais le lien qui s'affiche dans l'annonce est invalide et donne sur une page "forbidden"...

voici ma page "administration.php" :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
   <head>
       <title>Balcicars Bütgenbach</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <style type="text/css">
        body
		{
		background-image: url("../images/fond-francais-allemand.jpg");
		}
		h2, th, td, h3
        {
            text-align:center;
        }
        table
        {
            border-collapse:collapse;
            border:2px solid black;
            margin:auto;
        }
        th, td
        {
            border:1px solid black;
        }
        </style>
    </head>
    
    <body>
 
<h2><a href="rediger_news.php">Ajouter une annonce</a></h2>
<h3><a href="../annonces.php">Retour à la liste d'annonces</a></h3>

<?php
mysql_connect("localhost", "*****", "*****");
mysql_select_db("balcicars_be");
//-----------------------------------------------------
// Vérification 1 : est-ce qu'on veut poster une news ?
//-----------------------------------------------------
if (isset($_POST['titre']) AND isset($_POST['contenu']))
{
    $titre = addslashes($_POST['titre']);
    $contenu = addslashes($_POST['contenu']);
    // On vérifie si c'est une modification de news ou pas
    if ($_POST['id_news'] == 0)
    {
        // Ce n'est pas une modification, on crée une nouvelle entrée dans la table
        mysql_query('INSERT INTO news(titre, contenu) VALUES(\''. $titre. '\', \''. $contenu.'\')')or die(mysql_error());
    }
    else
    {
        // On protège la variable "id_news" pour éviter une faille SQL
        $_POST['id_news'] = addslashes($_POST['id_news']);
        // C'est une modification, on met juste à jour le titre et le contenu
        mysql_query("UPDATE news SET titre='" . $titre . "', contenu='" . $contenu . "' WHERE id='" . $_POST['id_news'] . "'")or die(mysql_error());
    }
}
 
//--------------------------------------------------------
// Vérification 2 : est-ce qu'on veut supprimer une news ?
//--------------------------------------------------------
if (isset($_GET['supprimer_news'])) // Si on demande de supprimer une news
{
    // Alors on supprime la news correspondante
    // On protège la variable "id_news" pour éviter une faille SQL
    $_GET['supprimer_news'] = addslashes($_GET['supprimer_news']);
    mysql_query('DELETE FROM news WHERE id=\'' . $_GET['supprimer_news'] . '\'');
}
?>
<table><tr>
<th>Modifier</th>
<th>Supprimer</th>
<th>Titre</th>
</tr>
<?php
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC')or die(mysql_error());
while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les news
{
?>
<tr>
<td><?php echo '<a href="rediger_news.php?modifier_news=' . $donnees['id'] . '">'; ?>Modifier</a></td>
<td><?php echo '<a href="administration.php?supprimer_news=' . $donnees['id'] . '">'; ?>Supprimer</a></td>
<td><?php echo stripslashes($donnees['titre']); ?></td>
</tr>
<?php
} // Fin de la boucle qui liste les news
?>
</table>
<?php
$i = 0;

$poid_max_avatar = 10000000;
$largeur_max_avatar = 100000000000000000;
$longeur_max_avatar = 100000000000000000;

        //On définit les variables :
        $maxsize = $poid_max_avatar; //Poid de l'image
        $maxwidth = $largeur_max_avatar; //Largeur de l'image
        $maxheight = $longeur_max_avatar; //Longueur de l'image
        $extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
       
        if ($_FILES['photo1']['error'] > 0)
        {
                $i++;
				
        }
		
        if ($_FILES['photo1']['size'] > $maxsize)
        {
                $i++;
				
        }

        $image_sizes = getimagesize($_FILES['photo1']['tmp_name']);
        if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight)
        {
                $i++;
				
        }
       
        $extension_upload = strtolower(substr(  strrchr($_FILES['photo1']['name'], '.')  ,1));
        if (!in_array($extension_upload,$extensions_valides) )
        {
                $i++;
				
        }

if ($i == 0)
    {
		//On déplace l'avatar
		$avatar = time();
		$nomavatar = str_replace(' ','',$avatar).".".$extension_upload;
		$avatar = "../upload-admin/".str_replace(' ','',$avatar).".".$extension_upload;
		move_uploaded_file($_FILES['photo1']['tmp_name'],$avatar);
		$sql  = 'UPDATE news SET image="' . $nomavatar .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql)
    }
	;
	?>
	<?php
$j = 0;

$poid_max_avatar_2 = 10000000;
$largeur_max_avatar_2 = 100000000000000000;
$longeur_max_avatar_2 = 100000000000000000;

        //On définit les variables :
        $maxsize_2 = $poid_max_avatar_2; //Poid de l'image
        $maxwidth_2 = $largeur_max_avatar_2; //Largeur de l'image
        $maxheight_2 = $longeur_max_avatar_2; //Longueur de l'image
        $extensions_valides_2 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
       
        if ($_FILES['photo2']['error'] > 0)
        {
                $j++;
				
        }
		
        if ($_FILES['photo2']['size'] > $maxsize_2)
        {
                $j++;
				
        }

        $image_sizes_2 = getimagesize($_FILES['photo2']['tmp_name']);
        if ($image_sizes_2[0] > $maxwidth_2 OR $image_sizes_2[1] > $maxheight_2)
        {
                $j++;
				
        }
       
        $extension_upload_2 = strtolower(substr(  strrchr($_FILES['photo2']['name'], '.')  ,1));
        if (!in_array($extension_upload_2,$extensions_valides_2) )
        {
                $j++;
				
        }

if ($j == 0)
    {
		//On déplace l'avatar
		$avatar_2 = time();
		$nomavatar_2 = str_replace(' ','',$avatar_2).".".$extension_upload_2;
		$avatar_2 = "../upload-admin/".str_replace(' ','',$avatar_2).".".$extension_upload_2;
		move_uploaded_file($_FILES['photo2']['tmp_name'],$avatar_2);
		$sql2  = 'UPDATE news SET image2="' . $nomavatar_2 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql2);
    }
	
	?>
	<?php
$k = 0;

$poid_max_avatar_3 = 10000000;
$largeur_max_avatar_3 = 100000000000000000;
$longeur_max_avatar_3 = 100000000000000000;

        //On définit les variables :
        $maxsize_3 = $poid_max_avatar_3; //Poid de l'image
        $maxwidth_3 = $largeur_max_avatar_3; //Largeur de l'image
        $maxheight_3 = $longeur_max_avatar_3; //Longueur de l'image
        $extensions_valides_3 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
       
        if ($_FILES['photo3']['error'] > 0)
        {
                $k++;
				
        }
		
        if ($_FILES['photo3']['size'] > $maxsize_3)
        {
                $k++;
				
        }

        $image_sizes_3 = getimagesize($_FILES['photo3']['tmp_name']);
        if ($image_sizes_3[0] > $maxwidth_3 OR $image_sizes_3[1] > $maxheight_3)
        {
                $k++;
				
        }
       
        $extension_upload_3 = strtolower(substr(  strrchr($_FILES['photo3']['name'], '.')  ,1));
        if (!in_array($extension_upload_3,$extensions_valides_3) )
        {
                $k++;
				
        }

if ($k == 0)
    {
		//On déplace l'avatar
		$avatar_3 = time();
		$nomavatar_3 = str_replace(' ','',$avatar_3).".".$extension_upload_3;
		$avatar_3 = "../upload-admin/".str_replace(' ','',$avatar_3).".".$extension_upload_3;
		move_uploaded_file($_FILES['photo3']['tmp_name'],$avatar_3);
		$sql3  = 'UPDATE news SET image3="' . $nomavatar_3 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql3);
    }
	
	?>
	<?php
$l = 0;

$poid_max_avatar_4 = 10000000;
$largeur_max_avatar_4 = 100000000000000000;
$longeur_max_avatar_4 = 100000000000000000;

        //On définit les variables :
        $maxsize_4 = $poid_max_avatar_4; //Poid de l'image
        $maxwidth_4 = $largeur_max_avatar_4; //Largeur de l'image
        $maxheight_4 = $longeur_max_avatar_4; //Longueur de l'image
        $extensions_valides_4 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
       
        if ($_FILES['photo4']['error'] > 0)
        {
                $l++;
				
        }
		
        if ($_FILES['photo4']['size'] > $maxsize_4)
        {
                $l++;
				
        }

        $image_sizes_4 = getimagesize($_FILES['photol']['tmp_name']);
        if ($image_sizes_4[0] > $maxwidth_4 OR $image_sizes_4[1] > $maxheight_4)
        {
                $l++;
				
        }
       
        $extension_upload_4 = strtolower(substr(  strrchr($_FILES['photo4']['name'], '.')  ,1));
        if (!in_array($extension_upload_4,$extensions_valides_4) )
        {
                $l++;
				
        }

if ($l == 0)
    {
		//On déplace l'avatar
		$avatar_4 = time();
		$nomavatar_4 = str_replace(' ','',$avatar_4).".".$extension_upload_4;
		$avatar_4 = "../upload-admin/".str_replace(' ','',$avatar_4).".".$extension_upload_4;
		move_uploaded_file($_FILES['photo4']['tmp_name'],$avatar_4);
		$sql4  = 'UPDATE news SET image4="' . $nomavatar_4 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql4);
    }
	
	?>
	<?php
$m = 0;

$poid_max_avatar_5 = 10000000;
$largeur_max_avatar_5 = 100000000000000000;
$longeur_max_avatar_5 = 100000000000000000;

        //On définit les variables :
        $maxsize_5 = $poid_max_avatar_5; //Poid de l'image
        $maxwidth_5 = $largeur_max_avatar_5; //Largeur de l'image
        $maxheight_5 = $longeur_max_avatar_5; //Longueur de l'image
        $extensions_valides_5 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
       
        if ($_FILES['photo5']['error'] > 0)
        {
                $m++;
				
        }
		
        if ($_FILES['photo5']['size'] > $maxsize_5)
        {
                $m++;
				
        }

        $image_sizes_5 = getimagesize($_FILES['photo5']['tmp_name']);
        if ($image_sizes_5[0] > $maxwidth_5 OR $image_sizes_5[1] > $maxheight_5)
        {
                $m++;
				
        }
       
        $extension_upload_5 = strtolower(substr(  strrchr($_FILES['photo5']['name'], '.')  ,1));
        if (!in_array($extension_upload_5,$extensions_valides_5) )
        {
                $m++;
				
        }

if ($m == 0)
    {
		//On déplace l'avatar
		$avatar_5 = time();
		$nomavatar_5 = str_replace(' ','',$avatar_5).".".$extension_upload_5;
		$avatar_5 = "../upload-admin/".str_replace(' ','',$avatar_5).".".$extension_upload_5;
		move_uploaded_file($_FILES['photo5']['tmp_name'],$avatar_5);
		$sql5  = 'UPDATE news SET image5="' . $nomavatar_5 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql5);
    }

	mysql_close();
	?>
</body>
</html>


Je sais que cette page est très mal organisée et difficile à lire... mais je n'ai pas vraiment le temps de m'en occuper maintenant... désolé...

et ma page "annonces.php" :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Balcicars Annonces Angebote</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <style type="text/css">
        h1
        {
            text-align:center;
			color: rgb(168, 0, 8);
			text-decoration: underline;
        }
        h3
        {
			text-align: center;
            background-color: black;
            color: white;
            font-size: 0.9em;
            margin-bottom: 0px;
        }
        .news p
        {
            background-color:#CCCCCC;
            margin-top:0px;
        }
        .news
        {
            width:70%;
            margin:auto;
        }
		body
		{
		width: 800px;
		margin: auto;
		margin-top: 10px;
		margin-bottom: 10px;
		background-image: url("images/fond-francais-allemand.jpg");
		}
		.retour-fr
		{
		color: rgb(43, 72, 123);
		font-weight: bold;
		}
		.retour-de
		{
		color: rgb(43, 72, 123);
		font-weight: bold;
		}
		a
		{
		color: red;
		font-weight: bold;
		}

        </style>
    </head>
    
    <body>
<h1>Annonces.</h1>
<h1>Angebote.</h1>

 
<?php
mysql_connect("localhost", "*****", "*****");
mysql_select_db("balcicars_be");
// On récupère les 5 dernières news
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC LIMIT 0, 1000')or die(mysql_error());
while ($donnees = mysql_fetch_array($retour))
{
?>
<div class="news">
    <h3>
        <?php echo $donnees['titre']; ?>
    </h3>
    
    <p>
    <?php
    // On enlève les éventuels antislash PUIS on crée les entrées en HTML (<br />)
    $contenu = nl2br(stripslashes($donnees['contenu']));
    echo $contenu; ?>
	<br/><br/>
	<?php
	
	echo '<a href="./upload-admin/'.$donnees['image'].'">Photo 1</a><br/>';
	
	echo '<a href="./upload-admin/'.$donnees['image2'].'">Photo 2</a><br/>';
	
	echo '<a href="./upload-admin/'.$donnees['image3'].'">Photo 3</a><br/>';
	
	echo '<a href="./upload-admin/'.$donnees['image4'].'">Photo 4</a><br/>';
	
	echo '<a href="./upload-admin/'.$donnees['image5'].'">Photo 5</a><br/>';
    
	?>
	<br/>
	
    </p>
</div>
<?php
} // Fin de la boucle des news
?>
<p class="retour-fr">Veuillez cliquer <a href="francais.html">ICI</a> pour retourner à la page d'acceuil en français.</p>
<p class="retour-de">Klicken Sie bitte <a href="allemand.html">HIER</a> um zur Deutschen Hauptseite zu gelangen.</p>
</body>
</html>


J'ai bien évidemment créé dans la base de données un champ id, un champ titre, un champ contenu et les différents champ image, image2, 3, 4, 5...

Le lien est incorrect, mais le chemin de l'image n'est même pas stocké dans la base de données...
J'ai déjà demandé dans plusieurs forums, mais je n'ai pas eu de réponse correcte... vous êtes mon dernier espoir...


Je vous remercie chaleureusement,

jerryp
A voir également:

182 réponses

el_linwin Messages postés 521 Statut Membre 90
 
Bonjour jerryp,

Oups, petites coquilles de ma part traînaient dans la dernière mouture. Tentez avec cette version:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Balcicars Bütgenbach</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
body
{
background-image: url("../images/fond-francais-allemand.jpg");
}
h2, th, td, h3
{
text-align:center;
}
table
{
border-collapse:collapse;
border:2px solid black;
margin:auto;
}
th, td
{
border:1px solid black;
}
</style>
</head>

<body>

<h2><a href="rediger_news.php">Ajouter une annonce</a></h2>
<h3><a href="../annonces.php">Retour à la liste d'annonces</a></h3>

<?php
// Début du bloc PHP
mysql_connect("localhost", "*****", "*****");
mysql_select_db("balcicars_be");
//-----------------------------------------------------
// Vérification 1 : est-ce qu'on veut poster une news ?
//-----------------------------------------------------
if (isset($_POST['titre']) AND isset($_POST['contenu']))
{
$titre = addslashes($_POST['titre']);
$contenu = addslashes($_POST['contenu']);
// On vérifie si c'est une modification de news ou pas
if ($_POST['id_news'] == 0)
{
// Ce n'est pas une modification, on crée une nouvelle entrée dans la table
mysql_query('INSERT INTO news(titre, contenu) VALUES(\''. $titre. '\', \''. $contenu.'\')')or die(mysql_error());
}
else
{
// On protège la variable "id_news" pour éviter une faille SQL
$_POST['id_news'] = addslashes($_POST['id_news']);
// C'est une modification, on met juste à jour le titre et le contenu
mysql_query("UPDATE news SET titre='" . $titre . "', contenu='" . $contenu . "' WHERE id='" . $_POST['id_news'] . "'")or die(mysql_error());
}
}

//--------------------------------------------------------
// Vérification 2 : est-ce qu'on veut supprimer une news ?
//--------------------------------------------------------
if (isset($_GET['supprimer_news'])) // Si on demande de supprimer une news
{
// Alors on supprime la news correspondante
// On protège la variable "id_news" pour éviter une faille SQL
$_GET['supprimer_news'] = addslashes($_GET['supprimer_news']);
mysql_query('DELETE FROM news WHERE id=\'' . $_GET['supprimer_news'] . '\'');
}
?>
<table><tr>
<th>Modifier</th>
<th>Supprimer</th>
<th>Titre</th>
</tr>
<?php
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC')or die(mysql_error());
while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les news
{
?>
<tr>
<td><?php echo 'a href="rediger_news.php?modifier_news='.$donnees['id'].'">';?>Modifier</a></td>
<td><?php echo 'a href="administration.php?supprimer_news='.$donnees['id'].'">';?>Supprimer</a></td>
<td><?php echo stripslashes($donnees['titre']);?></td>
</tr>
<?php
} // Fin de la boucle qui liste les news
?>
</table>

<?php
// Déclaration ici: les 5 avatars sont validés sur les mêmes extensions
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

// Avatar 1
$i = 0;
$poid_max_avatar = 10000000;
$largeur_max_avatar = 100000000000000000;
$longeur_max_avatar = 100000000000000000;

//On définit les variables :
$maxsize = $poid_max_avatar; //Poid de l'image
$maxwidth = $largeur_max_avatar; //Largeur de l'image
$maxheight = $longeur_max_avatar; //Longueur de l'image

if ($_FILES['photo1']['error'] > 0)
{
$i++;
}

if ($_FILES['photo1']['size'] > $maxsize)
{
$i++;
}

$image_sizes = getimagesize($_FILES['photo1']['tmp_name']);
if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight)
{
$i++;
}

$extension_upload = strtolower(substr( strrchr($_FILES['photo1']['name'], '.') ,1));
if (!in_array($extension_upload,$extensions_valides) )
{
$i++;
}

if ($i == 0)
{
//On déplace l'avatar
$avatar = time();
$nomavatar = str_replace(' ','',$avatar).".".$extension_upload;
$avatar = "../upload-admin/".str_replace(' ','',$avatar).".".$extension_upload;
move_uploaded_file($_FILES['photo1']['tmp_name'],$avatar);­
$sql = 'UPDATE news SET image="' . $nomavatar .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql);
}

// Avatar 2
$j = 0;

$poid_max_avatar_2 = 10000000;
$largeur_max_avatar_2 = 100000000000000000;
$longeur_max_avatar_2 = 100000000000000000;

//On définit les variables :
$maxsize_2 = $poid_max_avatar_2; //Poid de l'image
$maxwidth_2 = $largeur_max_avatar_2; //Largeur de l'image
$maxheight_2 = $longeur_max_avatar_2; //Longueur de l'image
//$extensions_valides_2 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo2']['error'] > 0)
{
$j++;
}

if ($_FILES['photo2']['size'] > $maxsize_2)
{
$j++;
}

$image_sizes_2 = getimagesize($_FILES['photo2']['tmp_name']);
if ($image_sizes_2[0] > $maxwidth_2 OR $image_sizes_2[1] > $maxheight_2)
{
$j++;
}

$extension_upload_2 = strtolower(substr( strrchr($_FILES['photo2']['name'], '.') ,1));
// $extensions_valides est toujours valide
if (!in_array($extension_upload_2,$extensions_valides) )
{
$j++;
}

if ($j == 0)
{
//On déplace l'avatar
$avatar_2 = time();
$nomavatar_2 = str_replace(' ','',$avatar_2).".".$extension_upload_2;
$avatar_2 = "../upload-admin/".str_replace(' ','',$avatar_2).".".$extension_upload_2;
move_uploaded_file($_FILES['photo2']['tmp_name'],$avatar_2);
$sql2 = 'UPDATE news SET image2="' . $nomavatar_2 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql2);
}

// Avatar 3
$k = 0;

$poid_max_avatar_3 = 10000000;
$largeur_max_avatar_3 = 100000000000000000;
$longeur_max_avatar_3 = 100000000000000000;

//On définit les variables :
$maxsize_3 = $poid_max_avatar_3; //Poid de l'image
$maxwidth_3 = $largeur_max_avatar_3; //Largeur de l'image
$maxheight_3 = $longeur_max_avatar_3; //Longueur de l'image
//$extensions_valides_3 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo3']['error'] > 0)
{
$k++;
}

if ($_FILES['photo3']['size'] > $maxsize_3)
{
$k++;
}

$image_sizes_3 = getimagesize($_FILES['photo3']['tmp_name']);
if ($image_sizes_3[0] > $maxwidth_3 OR $image_sizes_3[1] > $maxheight_3)
{
$k++;
}

$extension_upload_3 = strtolower(substr( strrchr($_FILES['photo3']['name'], '.') ,1));
// $extensions_valides est toujours valide
if (!in_array($extension_upload_3,$extensions_valides) )
{
$k++;
}

if ($k == 0)
{
//On déplace l'avatar
$avatar_3 = time();
$nomavatar_3 = str_replace(' ','',$avatar_3).".".$extension_upload_3;
$avatar_3 = "../upload-admin/".str_replace(' ','',$avatar_3).".".$extension_upload_3;
move_uploaded_file($_FILES['photo3']['tmp_name'],$avatar_3);
$sql3 = 'UPDATE news SET image3="' . $nomavatar_3 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql3);
}

// Avatar 4
$l = 0;

$poid_max_avatar_4 = 10000000;
$largeur_max_avatar_4 = 100000000000000000;
$longeur_max_avatar_4 = 100000000000000000;

//On définit les variables :
$maxsize_4 = $poid_max_avatar_4; //Poid de l'image
$maxwidth_4 = $largeur_max_avatar_4; //Largeur de l'image
$maxheight_4 = $longeur_max_avatar_4; //Longueur de l'image
//$extensions_valides_4 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo4']['error'] > 0)
{
$l++;
}

if ($_FILES['photo4']['size'] > $maxsize_4)
{
$l++;
}

$image_sizes_4 = getimagesize($_FILES['photo4']['tmp_name']); // photol corrigé en photo4
if ($image_sizes_4[0] > $maxwidth_4 OR $image_sizes_4[1] > $maxheight_4)
{
$l++;
}

$extension_upload_4 = strtolower(substr( strrchr($_FILES['photo4']['name'], '.') ,1));
// $extensions_valides est toujours valide
if (!in_array($extension_upload_4,$extensions_valides) )
{
$l++;
}

if ($l == 0)
{
//On déplace l'avatar
$avatar_4 = time();
$nomavatar_4 = str_replace(' ','',$avatar_4).".".$extension_upload_4;
$avatar_4 = "../upload-admin/".str_replace(' ','',$avatar_4).".".$extension_upload_4;
move_uploaded_file($_FILES['photo4']['tmp_name'],$avatar_4);
$sql4 = 'UPDATE news SET image4="' . $nomavatar_4 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql4);
}

// Avatar 5
$m = 0;

$poid_max_avatar_5 = 10000000;
$largeur_max_avatar_5 = 100000000000000000;
$longeur_max_avatar_5 = 100000000000000000;

//On définit les variables :
$maxsize_5 = $poid_max_avatar_5; //Poid de l'image
$maxwidth_5 = $largeur_max_avatar_5; //Largeur de l'image
$maxheight_5 = $longeur_max_avatar_5; //Longueur de l'image
//$extensions_valides_5 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo5']['error'] > 0)
{
$m++;
}

if ($_FILES['photo5']['size'] > $maxsize_5)
{
$m++;
}

$image_sizes_5 = getimagesize($_FILES['photo5']['tmp_name']);
if ($image_sizes_5[0] > $maxwidth_5 OR $image_sizes_5[1] > $maxheight_5)
{
$m++;
}

$extension_upload_5 = strtolower(substr( strrchr($_FILES['photo5']['name'], '.') ,1));
// $extensions_valides est toujours valide
if (!in_array($extension_upload_5,$extensions_valides) )
{
$m++;
}

if ($m == 0)
{
//On déplace l'avatar
$avatar_5 = time();
$nomavatar_5 = str_replace(' ','',$avatar_5).".".$extension_upload_5;
$avatar_5 = "../upload-admin/".str_replace(' ','',$avatar_5).".".$extension_upload_5;
move_uploaded_file($_FILES['photo5']['tmp_name'],$avatar_5);
$sql5 = 'UPDATE news SET image5="' . $nomavatar_5 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql5);
}

mysql_close();
// Fin du bloc PHP
?>
</body>
</html>

Cordialement,
el_linwin
0
jerryp Messages postés 143 Statut Membre 24
 
bonjour,

j'ai tenté avec la dernière version mais lorsque je vais sur la page, elle est toujours blanche... Et en affichant la source de la page, je n'ai rien du tout non plus...

encore merci,

cordialement,
jerryp
0
el_linwin Messages postés 521 Statut Membre 90
 
Bonjour jerryp,

Deux nouvelles coquilles corrigées:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Balcicars Bütgenbach</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
body
{
background-image: url("../images/fond-francais-allemand.jpg");
}
h2, th, td, h3
{
text-align:center;
}
table
{
border-collapse:collapse;
border:2px solid black;
margin:auto;
}
th, td
{
border:1px solid black;
}
</style>
</head>

<body>

<h2><a href="rediger_news.php">Ajouter une annonce</a></h2>
<h3><a href="../annonces.php">Retour à la liste d'annonces</a></h3>

<?php
// Début du bloc PHP
mysql_connect("localhost", "*****", "*****");
mysql_select_db("balcicars_be");
//-----------------------------------------------------
// Vérification 1 : est-ce qu'on veut poster une news ?
//-----------------------------------------------------
if (isset($_POST['titre']) AND isset($_POST['contenu']))
{
$titre = addslashes($_POST['titre']);
$contenu = addslashes($_POST['contenu']);
// On vérifie si c'est une modification de news ou pas
if ($_POST['id_news'] == 0)
{
// Ce n'est pas une modification, on crée une nouvelle entrée dans la table
mysql_query('INSERT INTO news(titre, contenu) VALUES(\''. $titre. '\', \''. $contenu.'\')')or die(mysql_error());
}
else
{
// On protège la variable "id_news" pour éviter une faille SQL
$_POST['id_news'] = addslashes($_POST['id_news']);
// C'est une modification, on met juste à jour le titre et le contenu
mysql_query("UPDATE news SET titre='" . $titre . "', contenu='" . $contenu . "' WHERE id='" . $_POST['id_news'] . "'")or die(mysql_error());
}
}

//--------------------------------------------------------
// Vérification 2 : est-ce qu'on veut supprimer une news ?
//--------------------------------------------------------
if (isset($_GET['supprimer_news'])) // Si on demande de supprimer une news
{
// Alors on supprime la news correspondante
// On protège la variable "id_news" pour éviter une faille SQL
$_GET['supprimer_news'] = addslashes($_GET['supprimer_news']);
mysql_query('DELETE FROM news WHERE id=\'' . $_GET['supprimer_news'] . '\'');
}
?>
<table><tr>
<th>Modifier</th>
<th>Supprimer</th>
<th>Titre</th>
</tr>
<?php
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC')or die(mysql_error());
while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les news
{
?>
<tr>
<td><?php echo '<a href="rediger_news.php?modifier_news='.$donnees['id'].'">';?>Modifier</a></td>
<td><?php echo '<a href="administration.php?supprimer_news='.$donnees['id'].'">';?>Supprimer</a></td>
<td><?php echo stripslashes($donnees['titre']);?></td>
</tr>
<?php
} // Fin de la boucle qui liste les news
?>
</table>

<?php
// Déclaration ici: les 5 avatars sont validés sur les mêmes extensions
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

// Avatar 1
$i = 0;
$poid_max_avatar = 10000000;
$largeur_max_avatar = 100000000000000000;
$longeur_max_avatar = 100000000000000000;

//On définit les variables :
$maxsize = $poid_max_avatar; //Poid de l'image
$maxwidth = $largeur_max_avatar; //Largeur de l'image
$maxheight = $longeur_max_avatar; //Longueur de l'image

if ($_FILES['photo1']['error'] > 0)
{
$i++;
}

if ($_FILES['photo1']['size'] > $maxsize)
{
$i++;
}

$image_sizes = getimagesize($_FILES['photo1']['tmp_name']);
if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight)
{
$i++;
}

$extension_upload = strtolower(substr( strrchr($_FILES['photo1']['name'], '.') ,1));
if (!in_array($extension_upload,$extensions_valides) )
{
$i++;
}

if ($i == 0)
{
//On déplace l'avatar
$avatar = time();
$nomavatar = str_replace(' ','',$avatar).".".$extension_upload;
$avatar = "../upload-admin/".str_replace(' ','',$avatar).".".$extension_upload;
move_uploaded_file($_FILES['photo1']['tmp_name'],$avatar);­
$sql = 'UPDATE news SET image="' . $nomavatar .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql);
}

// Avatar 2
$j = 0;

$poid_max_avatar_2 = 10000000;
$largeur_max_avatar_2 = 100000000000000000;
$longeur_max_avatar_2 = 100000000000000000;

//On définit les variables :
$maxsize_2 = $poid_max_avatar_2; //Poid de l'image
$maxwidth_2 = $largeur_max_avatar_2; //Largeur de l'image
$maxheight_2 = $longeur_max_avatar_2; //Longueur de l'image
//$extensions_valides_2 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo2']['error'] > 0)
{
$j++;
}

if ($_FILES['photo2']['size'] > $maxsize_2)
{
$j++;
}

$image_sizes_2 = getimagesize($_FILES['photo2']['tmp_name']);
if ($image_sizes_2[0] > $maxwidth_2 OR $image_sizes_2[1] > $maxheight_2)
{
$j++;
}

$extension_upload_2 = strtolower(substr( strrchr($_FILES['photo2']['name'], '.') ,1));
// $extensions_valides est toujours valide
if (!in_array($extension_upload_2,$extensions_valides) )
{
$j++;
}

if ($j == 0)
{
//On déplace l'avatar
$avatar_2 = time();
$nomavatar_2 = str_replace(' ','',$avatar_2).".".$extension_upload_2;
$avatar_2 = "../upload-admin/".str_replace(' ','',$avatar_2).".".$extension_upload_2;
move_uploaded_file($_FILES['photo2']['tmp_name'],$avatar_2);
$sql2 = 'UPDATE news SET image2="' . $nomavatar_2 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql2);
}

// Avatar 3
$k = 0;

$poid_max_avatar_3 = 10000000;
$largeur_max_avatar_3 = 100000000000000000;
$longeur_max_avatar_3 = 100000000000000000;

//On définit les variables :
$maxsize_3 = $poid_max_avatar_3; //Poid de l'image
$maxwidth_3 = $largeur_max_avatar_3; //Largeur de l'image
$maxheight_3 = $longeur_max_avatar_3; //Longueur de l'image
//$extensions_valides_3 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo3']['error'] > 0)
{
$k++;
}

if ($_FILES['photo3']['size'] > $maxsize_3)
{
$k++;
}

$image_sizes_3 = getimagesize($_FILES['photo3']['tmp_name']);
if ($image_sizes_3[0] > $maxwidth_3 OR $image_sizes_3[1] > $maxheight_3)
{
$k++;
}

$extension_upload_3 = strtolower(substr( strrchr($_FILES['photo3']['name'], '.') ,1));
// $extensions_valides est toujours valide
if (!in_array($extension_upload_3,$extensions_valides) )
{
$k++;
}

if ($k == 0)
{
//On déplace l'avatar
$avatar_3 = time();
$nomavatar_3 = str_replace(' ','',$avatar_3).".".$extension_upload_3;
$avatar_3 = "../upload-admin/".str_replace(' ','',$avatar_3).".".$extension_upload_3;
move_uploaded_file($_FILES['photo3']['tmp_name'],$avatar_3);
$sql3 = 'UPDATE news SET image3="' . $nomavatar_3 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql3);
}

// Avatar 4
$l = 0;

$poid_max_avatar_4 = 10000000;
$largeur_max_avatar_4 = 100000000000000000;
$longeur_max_avatar_4 = 100000000000000000;

//On définit les variables :
$maxsize_4 = $poid_max_avatar_4; //Poid de l'image
$maxwidth_4 = $largeur_max_avatar_4; //Largeur de l'image
$maxheight_4 = $longeur_max_avatar_4; //Longueur de l'image
//$extensions_valides_4 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo4']['error'] > 0)
{
$l++;
}

if ($_FILES['photo4']['size'] > $maxsize_4)
{
$l++;
}

$image_sizes_4 = getimagesize($_FILES['photo4']['tmp_name']); // photol corrigé en photo4
if ($image_sizes_4[0] > $maxwidth_4 OR $image_sizes_4[1] > $maxheight_4)
{
$l++;
}

$extension_upload_4 = strtolower(substr( strrchr($_FILES['photo4']['name'], '.') ,1));
// $extensions_valides est toujours valide
if (!in_array($extension_upload_4,$extensions_valides) )
{
$l++;
}

if ($l == 0)
{
//On déplace l'avatar
$avatar_4 = time();
$nomavatar_4 = str_replace(' ','',$avatar_4).".".$extension_upload_4;
$avatar_4 = "../upload-admin/".str_replace(' ','',$avatar_4).".".$extension_upload_4;
move_uploaded_file($_FILES['photo4']['tmp_name'],$avatar_4);
$sql4 = 'UPDATE news SET image4="' . $nomavatar_4 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql4);
}

// Avatar 5
$m = 0;

$poid_max_avatar_5 = 10000000;
$largeur_max_avatar_5 = 100000000000000000;
$longeur_max_avatar_5 = 100000000000000000;

//On définit les variables :
$maxsize_5 = $poid_max_avatar_5; //Poid de l'image
$maxwidth_5 = $largeur_max_avatar_5; //Largeur de l'image
$maxheight_5 = $longeur_max_avatar_5; //Longueur de l'image
//$extensions_valides_5 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo5']['error'] > 0)
{
$m++;
}

if ($_FILES['photo5']['size'] > $maxsize_5)
{
$m++;
}

$image_sizes_5 = getimagesize($_FILES['photo5']['tmp_name']);
if ($image_sizes_5[0] > $maxwidth_5 OR $image_sizes_5[1] > $maxheight_5)
{
$m++;
}

$extension_upload_5 = strtolower(substr( strrchr($_FILES['photo5']['name'], '.') ,1));
// $extensions_valides est toujours valide
if (!in_array($extension_upload_5,$extensions_valides) )
{
$m++;
}

if ($m == 0)
{
//On déplace l'avatar
$avatar_5 = time();
$nomavatar_5 = str_replace(' ','',$avatar_5).".".$extension_upload_5;
$avatar_5 = "../upload-admin/".str_replace(' ','',$avatar_5).".".$extension_upload_5;
move_uploaded_file($_FILES['photo5']['tmp_name'],$avatar_5);
$sql5 = 'UPDATE news SET image5="' . $nomavatar_5 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql5);
}

mysql_close();
// Fin du bloc PHP
?>
</body>
</html>


En espérant que cette version porte plus bonheur... (je croise les doigts... aïe ça fait mal ! ;) )

Cordialement,
el_linwin
0
jerryp Messages postés 143 Statut Membre 24
 
bonjour,

redésolé pour cette réponse tardive, encore ce foutu orage qui va et vient sans cesse...

J'ai essayé le code, le résultat est toujours le même....

Faut quand même pas non plus croiser les doigts trop fort, faudrait pas se faire mal non plus :-)

merci en tout les cas !

cordialement,
jerryp
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
el_linwin Messages postés 521 Statut Membre 90
 
Bonsoir jerryp,

J'ai essayé chez moi la partie HTML du code (la partie PHP n'est pas interprétée, et je n'ai pas d'espace page personnelles actif pour tester des bouts de code PHP), et j'obtiens sur un magnifique fond blanc, l'affichage des hyperliens:

Ajouter une annonce
Retour à la liste d'annonces

Obtenez-vous aussi leur affichage, ou vous n'avez qu'une page blanche ?

Cordialement,
el_linwin
0
jerryp Messages postés 143 Statut Membre 24
 
bonjour,

non, je n'obtient qu'une magnifique(:-D) page blanche sans liens, sans texte, sans rien du tout...

cordialement,
jerryp
0
jerryp Messages postés 143 Statut Membre 24
 
bonjour,

petite précision, je fais tous les tests online, le site est déjà en ligne...

cordialement,
jerryp
0
el_linwin Messages postés 521 Statut Membre 90
 
Bonsoir jerryp,

Bon, je crois qu'on commence à tenir un indice.
J'ai testé chez moi le fichier administration.php sur mes navigateurs Opéra et Firefox, j'obtiens un affichage proprement déguelasse, à partir du moment où le navigateur passe sur un code PHP qu'il ne comprend pas. Mais, dans les deux cas, j'ai un affichage !

Compte tenu du code, je doute que le résultat puisse être différent sous IE, vu que ce ne sont que des balises communes qui sont employées. Par contre, je n'ai pas de serveur MySQL actif, et encore moins de base de donnée...

Je commence fortement à soupçonner que le serveur MySQL ne dialogue pas bien avec PHP et, à fortiori, avec le navigateur qui est plus ou moins tributaire de la chaîne pour afficher quelque chose. Vous mentionniez plus haut dans la discussion qu'aucune trace d'enregistrement ne figure au niveau de la base de données...

Or, bien que je ne sois pas spécialiste des bases de données, il me semble que si le dialogue se faisait bien mais que les données transmises étaient farfelues (à cause d'un bug dans le programme), on en verrait une trace quelque part. En programmation, lorsque j'essaie d'inscrire des données dans un fichier mais que ma routine bugue, le fichier contient des séquences dignes d'un psychopathe paranoïaque, épileptique et sournois tant que j'y suis à ajouter des adjectifs.

D'ailleurs, maintenant que j'y pense, à aucun moment ne figure dans le code un moyen de vérifier si les opérations d'E/S concernant la base de données se sont effectivement bien déroulées. Peut-être faudrait-il commencer par là, sinon je crains que nous ne nous en sortions pas.

Cordialement,
el_linwin
0
jerryp Messages postés 143 Statut Membre 24
 
bonjour,

j'ai essayé aec les navigateurs opera et IE, mais aucun n'affiche quoi que ce soit...

mais quelle est la version de PHP qui est utilisée ici ? car je pense que celle du serveur est la version 4... mais je sais changer en version 5...

sinon, comment vérifier si tout se passe bien au niveau de l'interaction entre PHP et MySQL ?

merci

cordialement,
jerryp
0
el_linwin Messages postés 521 Statut Membre 90
 
Bonsoir jerryp,

Normalement, le PHP4 suffit amplement pour ce projet.
Voici la version modifiée du début du code PHP dans le fichier:

<?php
// Début du bloc PHP
$connexion=mysql_connect("localhost", "*****", "*****");
if (!$connexion) {
echo "Impossible de se connecter au serveur MySQL : ".mysql_error();
exit;
}
$base_de_donnees=mysql_select_db("balcicars_be");
if (!$base_de_donnees) {
echo "Impossible de se connecter à la base de données : ".mysql_error();
exit;
}

Si un de ces deux appels renvoie une erreur, on saura à quoi s'en tenir.

Cordialement,
el_linwin
0
jerryp Messages postés 143 Statut Membre 24
 
bonjour,

ce code ne m'affiche rien non plus...
que ce soit sur une page a part , ou directement sur la page administration...

cordialement,
jerryp
0
el_linwin Messages postés 521 Statut Membre 90
 
Bonsoir jerryp,

Bon, je vous propose le test suivant, déjà pour savoir si le système PHP fonctionne correctement.
Il suffit d'exécuter ce fichier sur le serveur en tant que fichier .php, peu importe le nom.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Balcicars Bütgenbach</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
body
{
background-image: url("../images/fond-francais-allemand.jpg");
}
h2, th, td, h3
{
text-align:center;
}
table
{
border-collapse:collapse;
border:2px solid black;
margin:auto;
}
th, td
{
border:1px solid black;
}
</style>
</head>

<body>

<h2><a href="rediger_news.php">Ajouter une annonce</a></h2>
<h3><a href="../annonces.php">Retour à la liste d'annonces</a></h3>

<?php
?>
<table><tr>
<th>Modifier</th>
<th>Supprimer</th>
<th>Titre</th>
</tr>

<tr>
<td>
<?php echo '<a href="https://www.google.fr/?gws_rd=ssl">Bonjour Google !</a>' ?>
</td>
<td>
<?php echo '<a href="https://www.google.fr/?gws_rd=ssl">Re-bonjour Google !</a>' ?>
</td>
<td>
<?php echo "<a>Etc...</a>" ?>

</td>
</tr>
<?php

?>
</table>

</body>
</html>


Il doit faire afficher deux liens que vous connaissez bien, et une version modifiée du tableau initialement prévu, très orientée vers un célèbre moteur de recherche.

Cordialement,
el_linwin
0
jerryp Messages postés 143 Statut Membre 24
 
bonsoir,

ce code fonctionne nickel... j'ai un tableau qui s'affiche avec deux liens donnant sur google.fr

cordialement,
jerryp
0
el_linwin Messages postés 521 Statut Membre 90
 
Bonsoir jerryp,

Bon, première étape de franchie, PHP4 fonctionne.
Je crois que j'ai trouvé quelque-chose d'intéressant.

Dans votre code, vous employez 'OR' et 'AND' dans les tests conditionnels, alors qu'il est préférable (pour cause de priorité d'évaluation) d'employer '||" et '&&'. Je vous transmet le code d'origine (qui fonctionnait le mieux, finalement) ainsi remanié, pour voir... (j'ai tenu compte d'un deux-points mal placé et du photol corrigé en photo4:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd";>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
<title>Balcicars Bütgenbach</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
body
{
background-image: url("../images/fond-francais-allemand.jpg");
}
h2, th, td, h3
{
text-align:center;
}
table
{
border-collapse:collapse;
border:2px solid black;
margin:auto;
}
th, td
{
border:1px solid black;
}
</style>
</head>

<body>

<h2><a href="rediger_news.php">Ajouter une annonce</a></h2>
<h3><a href="../annonces.php">Retour à la liste d'annonces</a></h3>

<?php
mysql_connect("localhost", "*****", "*****");
mysql_select_db("balcicars_be");
//-----------------------------------------------------
// Vérification 1 : est-ce qu'on veut poster une news ?
//-----------------------------------------------------
if (isset($_POST['titre']) && isset($_POST['contenu']))
{
$titre = addslashes($_POST['titre']);
$contenu = addslashes($_POST['contenu']);
// On vérifie si c'est une modification de news ou pas
if ($_POST['id_news'] == 0)
{
// Ce n'est pas une modification, on crée une nouvelle entrée dans la table
mysql_query('INSERT INTO news(titre, contenu) VALUES(\''. $titre. '\', \''. $contenu.'\')')or die(mysql_error());
}
else
{
// On protège la variable "id_news" pour éviter une faille SQL
$_POST['id_news'] = addslashes($_POST['id_news']);
// C'est une modification, on met juste à jour le titre et le contenu
mysql_query("UPDATE news SET titre='" . $titre . "', contenu='" . $contenu . "' WHERE id='" . $_POST['id_news'] . "'")or die(mysql_error());
}
}

//--------------------------------------------------------
// Vérification 2 : est-ce qu'on veut supprimer une news ?
//--------------------------------------------------------
if (isset($_GET['supprimer_news'])) // Si on demande de supprimer une news
{
// Alors on supprime la news correspondante
// On protège la variable "id_news" pour éviter une faille SQL
$_GET['supprimer_news'] = addslashes($_GET['supprimer_news']);
mysql_query('DELETE FROM news WHERE id=\'' . $_GET['supprimer_news'] . '\'');
}
?>
<table><tr>
<th>Modifier</th>
<th>Supprimer</th>
<th>Titre</th>
</tr>
<?php
$retour = mysql_query('SELECT * FROM news ORDER BY id DESC')or die(mysql_error());
while ($donnees = mysql_fetch_array($retour)) // On fait une boucle pour lister les news
{
?>
<tr>
<td><?php echo '<a href="rediger_news.php?modifier_news=' . $donnees['id'] . '">'; ?>Modifier</a></td>
<td><?php echo '<a href="administration.php?supprimer_news=' . $donnees['id'] . '">'; ?>Supprimer</a></td>
<td><?php echo stripslashes($donnees['titre']); ?></td>
</tr>
<?php
} // Fin de la boucle qui liste les news
?>
</table>
<?php
$i = 0;

$poid_max_avatar = 10000000;
$largeur_max_avatar = 100000000000000000;
$longeur_max_avatar = 100000000000000000;

//On définit les variables :
$maxsize = $poid_max_avatar; //Poid de l'image
$maxwidth = $largeur_max_avatar; //Largeur de l'image
$maxheight = $longeur_max_avatar; //Longueur de l'image
$extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo1']['error'] > 0)
{
$i++;

}

if ($_FILES['photo1']['size'] > $maxsize)
{
$i++;

}

$image_sizes = getimagesize($_FILES['photo1']['tmp_name']);
if ($image_sizes[0] > $maxwidth || $image_sizes[1] > $maxheight)
{
$i++;

}

$extension_upload = strtolower(substr( strrchr($_FILES['photo1']['name'], '.') ,1));
if (!in_array($extension_upload,$extensions_valides) )
{
$i++;

}

if ($i == 0)
{
//On déplace l'avatar
$avatar = time();
$nomavatar = str_replace(' ','',$avatar).".".$extension_upload;
$avatar = "../upload-admin/".str_replace(' ','',$avatar).".".$extension_upload;
move_uploaded_file($_FILES['photo1']['tmp_name'],$avatar);­
$sql = 'UPDATE news SET image="' . $nomavatar .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql);
}
?>
<?php
$j = 0;

$poid_max_avatar_2 = 10000000;
$largeur_max_avatar_2 = 100000000000000000;
$longeur_max_avatar_2 = 100000000000000000;

//On définit les variables :
$maxsize_2 = $poid_max_avatar_2; //Poid de l'image
$maxwidth_2 = $largeur_max_avatar_2; //Largeur de l'image
$maxheight_2 = $longeur_max_avatar_2; //Longueur de l'image
$extensions_valides_2 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo2']['error'] > 0)
{
$j++;

}

if ($_FILES['photo2']['size'] > $maxsize_2)
{
$j++;

}

$image_sizes_2 = getimagesize($_FILES['photo2']['tmp_name']);
if ($image_sizes_2[0] > $maxwidth_2 || $image_sizes_2[1] > $maxheight_2)
{
$j++;

}

$extension_upload_2 = strtolower(substr( strrchr($_FILES['photo2']['name'], '.') ,1));
if (!in_array($extension_upload_2,$extensions_valides_2) )
{
$j++;

}

if ($j == 0)
{
//On déplace l'avatar
$avatar_2 = time();
$nomavatar_2 = str_replace(' ','',$avatar_2).".".$extension_upload_2;
$avatar_2 = "../upload-admin/".str_replace(' ','',$avatar_2).".".$extension_upload_2;
move_uploaded_file($_FILES['photo2']['tmp_name'],$avatar_2);
$sql2 = 'UPDATE news SET image2="' . $nomavatar_2 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql2);
}

?>
<?php
$k = 0;

$poid_max_avatar_3 = 10000000;
$largeur_max_avatar_3 = 100000000000000000;
$longeur_max_avatar_3 = 100000000000000000;

//On définit les variables :
$maxsize_3 = $poid_max_avatar_3; //Poid de l'image
$maxwidth_3 = $largeur_max_avatar_3; //Largeur de l'image
$maxheight_3 = $longeur_max_avatar_3; //Longueur de l'image
$extensions_valides_3 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo3']['error'] > 0)
{
$k++;

}

if ($_FILES['photo3']['size'] > $maxsize_3)
{
$k++;

}

$image_sizes_3 = getimagesize($_FILES['photo3']['tmp_name']);
if ($image_sizes_3[0] > $maxwidth_3 || $image_sizes_3[1] > $maxheight_3)
{
$k++;

}

$extension_upload_3 = strtolower(substr( strrchr($_FILES['photo3']['name'], '.') ,1));
if (!in_array($extension_upload_3,$extensions_valides_3) )
{
$k++;

}

if ($k == 0)
{
//On déplace l'avatar
$avatar_3 = time();
$nomavatar_3 = str_replace(' ','',$avatar_3).".".$extension_upload_3;
$avatar_3 = "../upload-admin/".str_replace(' ','',$avatar_3).".".$extension_upload_3;
move_uploaded_file($_FILES['photo3']['tmp_name'],$avatar_3);
$sql3 = 'UPDATE news SET image3="' . $nomavatar_3 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql3);
}

?>
<?php
$l = 0;

$poid_max_avatar_4 = 10000000;
$largeur_max_avatar_4 = 100000000000000000;
$longeur_max_avatar_4 = 100000000000000000;

//On définit les variables :
$maxsize_4 = $poid_max_avatar_4; //Poid de l'image
$maxwidth_4 = $largeur_max_avatar_4; //Largeur de l'image
$maxheight_4 = $longeur_max_avatar_4; //Longueur de l'image
$extensions_valides_4 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo4']['error'] > 0)
{
$l++;

}

if ($_FILES['photo4']['size'] > $maxsize_4)
{
$l++;

}

$image_sizes_4 = getimagesize($_FILES['photo4']['tmp_name']);
if ($image_sizes_4[0] > $maxwidth_4 || $image_sizes_4[1] > $maxheight_4)
{
$l++;

}

$extension_upload_4 = strtolower(substr( strrchr($_FILES['photo4']['name'], '.') ,1));
if (!in_array($extension_upload_4,$extensions_valides_4) )
{
$l++;

}

if ($l == 0)
{
//On déplace l'avatar
$avatar_4 = time();
$nomavatar_4 = str_replace(' ','',$avatar_4).".".$extension_upload_4;
$avatar_4 = "../upload-admin/".str_replace(' ','',$avatar_4).".".$extension_upload_4;
move_uploaded_file($_FILES['photo4']['tmp_name'],$avatar_4);
$sql4 = 'UPDATE news SET image4="' . $nomavatar_4 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql4);
}

?>
<?php
$m = 0;

$poid_max_avatar_5 = 10000000;
$largeur_max_avatar_5 = 100000000000000000;
$longeur_max_avatar_5 = 100000000000000000;

//On définit les variables :
$maxsize_5 = $poid_max_avatar_5; //Poid de l'image
$maxwidth_5 = $largeur_max_avatar_5; //Largeur de l'image
$maxheight_5 = $longeur_max_avatar_5; //Longueur de l'image
$extensions_valides_5 = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides

if ($_FILES['photo5']['error'] > 0)
{
$m++;

}

if ($_FILES['photo5']['size'] > $maxsize_5)
{
$m++;

}

$image_sizes_5 = getimagesize($_FILES['photo5']['tmp_name']);
if ($image_sizes_5[0] > $maxwidth_5 || $image_sizes_5[1] > $maxheight_5)
{
$m++;

}

$extension_upload_5 = strtolower(substr( strrchr($_FILES['photo5']['name'], '.') ,1));
if (!in_array($extension_upload_5,$extensions_valides_5) )
{
$m++;

}

if ($m == 0)
{
//On déplace l'avatar
$avatar_5 = time();
$nomavatar_5 = str_replace(' ','',$avatar_5).".".$extension_upload_5;
$avatar_5 = "../upload-admin/".str_replace(' ','',$avatar_5).".".$extension_upload_5;
move_uploaded_file($_FILES['photo5']['tmp_name'],$avatar_5);
$sql5 = 'UPDATE news SET image5="' . $nomavatar_5 .'" WHERE ID=' . $donnees['id'] . ')';
mysql_query($sql5);
}

mysql_close();
?>
</body>
</html>



Cordialement,
el_linwin
0
jerryp Messages postés 143 Statut Membre 24
 
bonsoir,

ah, maintenant, j'ai une erreur qui s'affiche :
Parse error: syntax error, unexpected T_VARIABLE in /customers/balcicars.be/balcicars.be/httpd.www/admin/administration.php on line 134


cordialement,
jerryp
0
el_linwin Messages postés 521 Statut Membre 90
 
Bonsoir jerryp,

Je constate qu'en effet, à la fin de la ligne 133, il y a un signe moins qui n'a rien à faire là. Essayez de le supprimer puis de retenter. Nous devrions quand même pouvoir débloquer ce script, à force...

Cordialement,
el_linwin
0
jerryp Messages postés 143 Statut Membre 24
 
bonsoir,

et bien, ça y est...
ma page administration s'affiche, mais ma base de données ne se remplit toujours pas...
Et par conséquent, les liens de ma page d'annonce ne sont toujours pas valides...

ça avance, ça avance, et ce uniquement grâce à vous ! Je vous en suis très reconnaissant !

cordialement,
jerryp
0
el_linwin Messages postés 521 Statut Membre 90
 
Bonsoir jerryp,

Du progès, du progrès !!!

Ce qu'il faudrait vérifier à présent, c'est si la requête POST (qui permet d'alimenter la base, si j'ai bien compris) transmet bien ces trois paramètres:
- titre
- contenu
- id_news

Le sont-ils effectivement ? Comme je n'ai pas le code de la page qui est censée envoyer ces informations au travers de la requête POST, je me pose la question. Car, bien entendu, si ce n'est pas le cas, le script ne considèrera pas que l'on souhaite alimenter la base de données, et ne fera rien, sans qu'il y ait une erreur en plus !

Cordialement,
el_linwin
0
jerryp Messages postés 143 Statut Membre 24
 
bonsoir,

oui, oui, les autres champs se remplissent tout à fait correctement... j'ai le titre, l'id et le contenu sans aucun problème... d'ailleurs, voici le code de ma page "rediger_news.php" que j'avais oublié de transmettre :
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>Rédiger une annonce</title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
        <style type="text/css">
        h3, form
        {
            text-align:center;
        }
		body
		{
			background-image: url("../images/fond-francais-allemand.jpg");
		}
		.titre
		{
		color: rgb(43, 72, 123);
		font-weight: bold;
		}
		.contenu
		{
		color: rgb(43, 72, 123);
		font-weight: bold;
		}
        </style>
    </head>
    
    <body>
<h3><a href="../annonces.php">Retour à la liste des annonces</a></h3>
<?php
mysql_connect("localhost", "*****", "*****");
mysql_select_db("balcicars_be");
if (isset($_GET['modifier_news'])) // Si on demande de modifier une news
{
    // On protège la variable "modifier_news" pour éviter une faille SQL
    $_GET['modifier_news'] = mysql_real_escape_string(htmlspecialchars($_GET['modifier_news']));
    // On récupère les infos de la news correspondante
    $retour = mysql_query('SELECT * FROM news WHERE id=\'' . $_GET['modifier_news'] . '\'') or die(mysql_error());
    $donnees = mysql_fetch_array($retour);
    
    // On place le titre et le contenu dans des variables simples
    $titre = stripslashes($donnees['titre']);
    $contenu = stripslashes($donnees['contenu']);
	$photo = stripslashes($donnees['photo']);
    $id_news = $donnees['id']; // Cette variable va servir pour se souvenir que c'est une modification
}
else // C'est qu'on rédige une nouvelle news
{
    // Les variables $titre et $contenu sont vides, puisque c'est une nouvelle news
    $titre = '';
    $contenu = '';
    $id_news = 0; // La variable vaut 0, donc on se souviendra que ce n'est pas une modification
}
?>
<form action="administration.php" method="post" enctype="multipart/form-data">
<p class="titre">Titre : <input type="text" size="30" name="titre" value="<?php echo $titre; ?>" /></p>
<p class="contenu">
    Contenu :<br />
    <textarea name="contenu" cols="50" rows="10">
    <?php echo $contenu; 
	echo "Marque : ";
	echo "Type : ";
	echo "Année : ";
	echo "Cylindrée : ";
	echo "Puissance : ";
	echo "Kilomètrage : ";
	echo "Prix : ";
	echo "Options : ";
	?>
    </textarea><br/><br/>
	
	Photo (Max 10Mo) : <input type="file" name="photo1"/><br/>
	Photo (Max 10Mo) : <input type="file" name="photo2"/><br/>
	Photo (Max 10Mo) : <input type="file" name="photo3"/><br/>
	Photo (Max 10Mo) : <input type="file" name="photo4"/><br/>
	Photo (Max 10Mo) : <input type="file" name="photo5"/><br/><br/><br/>

    <input type="hidden" name="id_news" value="<?php echo $id_news; ?>" />
    <input type="submit" value="Envoyer" />
</p>
</form>
</body>
</html>


voilà,

cordialement,

jerryp
0
jerryp Messages postés 143 Statut Membre 24
 
rebonsoir,

la page rediger_news.php est bien correcte ?

Merci,

cordialement,
jerryp
0