galerie en base de donnée

Eléphant du PHP | 241 Messages

05 mai 2011, 11:47

Salut,

ta page ajoutphotos.php est dans ce dossier ? C:\xampp\htdocs\tuan-gallery\admin\

Et les autres pages où sont-elles : C:\xampp\htdocs\tuan-gallery\content\ ?

Eléphant du PHP | 77 Messages

05 mai 2011, 21:00

ajoutphotos.php est bien dans C:\xampp\htdocs\tuan-gallery\admin\
ainsi que traitement.php .htaccess et .htpasswd

dans content j'ai 404.php, galeriebbd.php et index.php

a la racine :
galerie.php
template.php
style_galerie.css

Eléphant du PHP | 241 Messages

05 mai 2011, 21:34

Ok, donc justement ca pose problème, le dossier admin/ doit être dans content/

Eléphant du PHP | 77 Messages

05 mai 2011, 21:51

t'es trop Balèze misterflo !!!

Par contre j'y accede correctement etc.. mais il ne me demande pas de pass et de login..

J'ai essayer de rajouter une photo pour voir, quand je valide Erreur 404.php :cry: du coup marche pas

Eléphant du PHP | 241 Messages

05 mai 2011, 22:50

Ah oui oui exacte...c'est à cause de l'url avec ?p=admin/ajoutphotos, quand on passe par la c'est php qui va chercher les informations de la page, il n'a pas besoin de se log.

Donc finalement ce serait mieux de faire comme tu avais fait toi juste avant, c'est à dire le dossier admin/ en dehors du dossier content/
  • www/
    • admin/
    • content/
Problème : le système de template ne s'appliquera pour ce cas de figure, il faut donc refaire en entier la page d'ajout de photos, ce n'est pas grave, juste du copie-coller de HTML !

ajoutphotos.php
<?php
try
{
	$db_host = ""; //Lieu où est héberger la BDD

	$db_name = ""; //Nom de la BDD

	$db_login = ""; //Login de connexion à la BDD

	$db_mdp = ""; //Mot de passe de connexion à la BDD

	$bdd = new PDO("mysql:host=$db_host;dbname=$db_name",$db_login,$db_mdp);
}
catch(Exception $e)
{
	exit('Erreur : ' . $e->getMessage());
}
?>
 <!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>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
 <meta name="description" content="Photos du carnaval de Venise, portraits sensationnels. portofolio de Tuan-Gallery, passionné de photographie et de voyages, il capture des moments de la vie dans ces voyages, des émotions, mais aussi des paysages a couper le souffle, tout ce qui se trouve sur son chemin. " lang="fr">
 <meta name="description" content="Pictures of Venise Carnaval.portofolio of Tuan-Gallery, passionate in photograph and in trips, it captures instants of life in these trips, émotions, but also landscapes has cut breath, all that is on its way" lang="en">
 <meta name="keywords" content="voyage, australie, etats-unis, usa, inde, cuba, paris, venise, carnaval, panoramique, insectes, portrait, animaux, architecture, urbaine, gens, moments, photographe,canon, numerique, portfolio, galeries, paysages, france, photographie, aborigenes, sydney, route 66, las vegas, californie, boutique, tirage photos, carnaval,venise,place saint marc,saint marco." lang="fr">
 <meta name="keywords" content="travel, Australia, united states, employed, india, cuba, paris, Venice, carnival, pan, insects, portrait, animals, architecture, urban, people, instants, photographer, cannon, numerique, portfolio, gallery, landscapes, France, photographs, aborigenes, Sydney, sorts for mailing 66, weary vegas, California, shop, printing photographs" lang="en">

<script type="text/javascript">
function cocher(liste,bouton) {
	var i = 0;
	var coche = false;
	if (bouton.value == 'Tout cocher') {
		coche = true;
		bouton.value = 'Tout décocher';
	} else {
		coche = false;
		bouton.value = 'Tout cocher';
	}
	while (liste[i]) {
		liste[i].checked = coche;
		i++;
	}
}
</script>

<style type="text/css" media="screen">
<!--
a:link {
        text-decoration: none;
}
a:visited {
        text-decoration: none;
}
a:hover {
        text-decoration: none;
}
a:active {
        text-decoration: none;
}
body {
        background-color: #000;
}
img {
	width: 100px;
	height: 100px;
	margin: 0px;
	padding: 0px;
	border: 0px;
}
table, td {
	border-collapse: collapse;
}
td {
	width: 200px;
	height: 100px;
	text-align: center;
}
tr {
	border: 1px solid black;
}
h3 {
	color: red;
}
#btn_valider {
	padding: 10px;
	color: maroon;
}
-->
</style>

		<title>Ajout de photos</title>

 <link href="style_galerie.css" rel="stylesheet" type="text/css" />
 <script src="SpryAssets/SpryMenuBar.js" type="text/javascript"></script>
 <link href="SpryAssets/SpryMenuBarHorizontal.css" rel="stylesheet" type="text/css" />
 <script type="text/javascript">
 <!--
 function MM_openBrWindow(theURL,winName,features) { //v2.0
   window.open(theURL,winName,features);
 }
 //-->
 </script>
 <link rel="stylesheet" type="text/css" href="/shadowbox/shadowbox.css">
 <script type="text/javascript" src="/js/jquery-latest.pack.js"></script>
 <script type="text/javascript" src="/js/jquery.js"></script>
 <script type="text/javascript" src="/js/tooltip.js"></script>
 <script type="text/javascript" src="/shadowbox/shadowbox.js"> </script>
 <script type="text/javascript">
 Shadowbox.init ();
 </script>


 <link rel="shortcut icon" href="/images/appareil.ico" />

<?php
if (isset($head)) { echo $head;}
?>

 </head>


 <!--code google analytics -->
 <script type="text/javascript">
 var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
 document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
 </script>
 <script type="text/javascript">
 try {
 var pageTracker = _gat._getTracker("UA-13270017-1");
 pageTracker._trackPageview();
 } catch(err) {}</script>
 <!--fin du code Google analytics -->


 <body>
 <div id="page">

 <!--debut bando -->

   <div id="bando">
     <p><a href="../../menu_francais.html"><img src="images/banniere_tuan_gallery_photographie.jpg" width="750" height="39" alt="Tuan-Gallery Photographie" /></a></p>
     <p>&nbsp;</p>
     <p>- PHOTOS DU CARNAVAL DE VENISE -</p>
    
   </div>
   
   <!--fin bando -->
   <!--debut barre haut -->
   
   <div id="barrehaut">
   <p>&nbsp;</p>
   <img src="images/barre horizontale.jpg" width="800" height="1" alt="barre" /></div>
   
   <!--fin barre haut -->
   
   <!--debut image -->
<?php
//Liste des pays autorisés dans la bdd
$pays = array('france','usa','inde','australie','java','japon');

//Si $_GET['pays'] est appelé alors on affiche la liste des photos qui peuvent être ajoutées pour ce pays
if (isset($_GET['pays']) && in_array($_GET['pays'],$pays)) {
	//On récupère le numéro du dernier trajet pour ce pays
	$req = $bdd->prepare("SELECT max(gal_trajet) FROM galerie_photos WHERE gal_pays=:pays");
	$req->bindValue('pays',$_GET['pays'],PDO::PARAM_STR);
	$req->execute();
	$last_trajet = $req->fetch();
	$req->closeCursor();
	
	/*
		La requête si dessous va compter les enregistrements pour un nom de photo,
		afin de vérifier que cette photo n'est pas déjà présente dans la bdd
	*/
	$req = $bdd->prepare("SELECT count(gal_id) FROM galerie_photos WHERE gal_photo=:photo");
	if ($ouvre = @opendir('../uploads/petites/')) { //On ouvre le dossier uploads des petites photos pour lister les photos du dossier et les comparer avec celle déjà dans la bdd
?>

<form method="post" action="traitement.php?pays=<?php echo $_GET['pays']; ?>">
	<table>

<?php
		while (false !== ($fic = readdir($ouvre))) {
			$req->bindParam('photo',$fic,PDO::PARAM_STR);
			$req->execute();
			if (($fic != ".") && ($fic != "..") && ($fic != 'petites')) { //On enlève le listage de dossier courant et précedent
				$existe = $req->fetchColumn(); //Retourne le nombre d'enregistrement trouvé
				if ($existe === '0') { //Si ne renvoi pas d'enregistrement alors on affiche les info pour ajouter la photo

?>

	<tr>
		<td>
			<a href="<?php echo "../uploads/petites/$fic"; ?>" rel="lightbox-atomium"><img src="<?php echo "../uploads/petites/$fic"; ?>" alt="" /></a><br />
			<?php echo $fic; ?>
		</td>
		<td>
			Ajouter pour <strong><?php echo htmlspecialchars($_GET['pays']); ?></strong><input type="checkbox" name="fic[]" value="<?php echo $fic; ?>" />
		</td>
		<td>
			<h4>Sens :</h4>
			<p>
				Horizontal <input type="radio" name="<?php echo "sens" . $fic; ?>" value="horizontal" /><br />
				Vertical <input type="radio" name="<?php echo "sens" . $fic; ?>" value="vertical" />
			</p>
		</td>
		<td>
			<p>
				Dernier numéro de trajet pour ce pays : <?php echo $last_trajet[0]; ?><br />
				Ordre du trajet : <input type="text" name="trajet[]" maxlength="10" size="5" />
			</p>
		</td>
		<td>
			<p>
				<label for="descr">Description</label><input type="text" name="descr[]" value="" id="descr" maxlength="500" size="50" /><br />
			</p>
		</td>
	</tr>

<?php

				} else { //Sinon une photo avec ce nom existe déjà

?>

	<tr>
		<td><a href="<?php echo "../uploads/petites/$fic"; ?>" rel="lightbox-atomium"><img src="<?php echo "../uploads/petites/$fic"; ?>" alt="" /></a></td>
		<td colspan="3">
			<h3>Une photo avec ce nom est déjà présente</h3>
		</td>
	</tr>

<?php
				}
			}
		}
?>
		<tr>
			<td><a href="ajoutphotos.php">Retour au menu d'ajout</a></td>
			<td><input type="button" value="Tout cocher" name="bouton" onclick="cocher(this.form.elements['fic[]'],this);"/></td>
			<td>
				Tout Horizontal<input type="radio" name="sens" value="horizontal" /><br />
				Tout Vertical<input type="radio" name="sens" value="vertical" /><br />
				Plusieurs choix <input type="radio" name="sens" value="plusieurs" checked="checked" />
			</td>
			<td><input type="submit" name="Valider" value="Valider" id="btn_valider" /></td>
		</tr>
	</table>
</form>

<?php
	$req->closeCursor();
	} else {
		echo "<h1>Impossible d'ouvrir le dossier 'uploads/'</h1>";
	}
} else {
?>

	<h1>Choisissez le pays où ajouter des photos</h1>
	<ul>
<?php
	foreach ($pays as $lien_pays) {
?>
		<li><a href="ajoutphotos.php?pays=<?php echo $lien_pays; ?>"><?php echo ucfirst($lien_pays); ?></a></li>
<?php
	}
?>
	</ul>
	<a href="/?p=index">Retour à l'accueil</a>
<?php
}
?>
   
   <!--fin image -->
   <!--debut droite -->
   <!--fin droite -->
   <!--debut barre bas -->
   
   <div id="barrebas"><img src="images/barre horizontale.jpg" width="800" height="1" alt="barre" /><p></p></div>
   
   <!--fin barre bas -->
   <!--debut tableau -->
   


   
   
   <!--fin tableau -->  
   
   <!--debut bas -->
   
 <div id="bas"><img src="images/barre horizontale.jpg" width="500" height="1" alt="barre" /></div>
   
   <!--fin bas -->
   
   <!--debut explications -->
   
 <div id="explications">
   <p>&nbsp;</p>
   <img src="images/barre horizontale.jpg" width="800" height="1" alt="barre" />
 </div>  
   
   
   <!--fin explications -->
   
   
   
   <!--debut pied de page -->
   
 <div id="menu">
 <ul id="MenuBar1" class="MenuBarHorizontal">
   <li><a href="../../menu_francais.html">Menu</a></li>
   <li><a href="../accueil_galerie.html">Galerie Photos</a></li>
 <li><a href="../boutique.html">Boutique</a></li>
 <li><a href="../art&essais/art&essais_1.html">Art & Essais</a></li>
   <li><a href="../presentation.html">A propos</a></li>
   <li><a href="#" onclick="MM_openBrWindow('../contact.html','Contact','scrollbars=yes,width=500,height=350')">Contact</a></li>
   <li><a href="../liens.html">Liens</a></li>
 </ul>
   </div>
   
   <div id="barrefin"><img src="images/barre horizontale.jpg" width="800" height="1" alt="barre" /></div>
   
   
     <script type="text/javascript">
 <!--
 var MenuBar1 = new Spry.Widget.MenuBar("MenuBar1", {imgDown:"../../SpryAssets/SpryMenuBarDownHover.gif", imgRight:"../../SpryAssets/SpryMenuBarRightHover.gif"});
 //-->
     </script> 

  <!--fin pied de page -->
  
  <div id="pub">
  <br/>
  <script type="text/javascript"><!--
 google_ad_client = "pub-7590267161782096";
 /* 728x15, date de création 05/02/10 */
 google_ad_slot = "3043799783";
 google_ad_width = 728;
 google_ad_height = 15;
 //-->
 </script>
 <script type="text/javascript"
 src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
 </script>

 </div>
 <br/>
 <div id="barrefin"><img src="../../images/barre horizontale.jpg" width="800" height="1" alt="barre" /></div>
   
 </div>
 </body>
 </html>
traitement.php
<?php
try
{
	$db_host = ""; //Lieu où est héberger la BDD

	$db_name = ""; //Nom de la BDD

	$db_login = ""; //Login de connexion à la BDD

	$db_mdp = ""; //Mot de passe de connexion à la BDD

	$bdd = new PDO("mysql:host=$db_host;dbname=$db_name",$db_login,$db_mdp);
}
catch(Exception $e)
{
	exit('Erreur : ' . $e->getMessage());
}
?>
<!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>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<meta http-equiv="Content-Language" content="fr" />

		<title>Traitement</title>

<style type="text/css" media="screen">
.error_sens {
	color: red;
}
.error_fic {
	color: blue;
}
</style>

</head>
<body>
<?php 
//Liste des pays dans la bdd
$liste_pays = array('france','usa','inde','australie','java','japon');
$pays = $_GET['pays'];

if (isset($_POST['Valider'])) {

$i = 0; //Ne pas toucher
$y = 0; //Ne pas toucher
$ajout = 0; //Ne pas toucher

	//On vérifie que les champs importants sont remplis
	if (isset($_GET['pays'])
		&& in_array($_GET['pays'],$liste_pays)
		&& isset($_POST['fic'])
		) {

		//Pour chaque photo cochée on va l'ajouter dans la bdd
		foreach ($_POST['fic'] as $photo) {
			$sens = ''; //Ne pas toucher
			//Recupère la description de la photo
			foreach ($_POST['descr'] as $descr) {
				if (!empty($descr)) {
					$_POST['descr'][$y] = $descr;
					$y++;
				}
			}
			if (isset($_POST['descr'][$i])) {
				$descr = $_POST['descr'][$i];
			} else {
				$descr = '';
			}

			$y = 0; //Ne pas toucher !

			//Recupère le trajet s'il est défini, sinon on le met à zéro
			foreach ($_POST['trajet'] as $trajet) {
				if (!empty($trajet)) {
					$_POST['trajet'][$y] = $trajet;
					$y++;
				}
			}
			if (isset($_POST['trajet'][$i]) && is_numeric($_POST['trajet'][$i])) {
				$trajet = $_POST['trajet'][$i];
			} else {
				$trajet = 0;
			}
			//On remplace les . par des _ car dans les $_POST les . sont automatiquement modifiés en _
			if (isset($_POST['sens']) && ($_POST['sens'] != 'plusieurs')) {
				$sens = $_POST['sens'];
			} else {
				if (isset($_POST['sens' . strtr($photo,".","_")])) {
					$sens = $_POST['sens' . strtr($photo,".","_")]; //Sens choisi pour la photo
				} else {
?>
	<span class="error_sens">La photo <?php echo $photo; ?> a été cochée mais aucun sens ne lui ai défini.</span><br />
<?php
				}
			}
			if ($sens != '' ) {
				$ajout++;
				$petites = '../uploads/petites/' . $photo; //Chemin et nom des photos en petites
				$grandes = '../uploads/grandes/' . $photo; //Chemin et nom des photos en grandes
				if (file_exists($petites) && file_exists($grandes)) {
					//On déplace la miniature
					rename('../uploads/petites/' . $photo, '../' . $pays . '/petites/' . $photo);

					//On déplace la photo en grande taille
					rename('../uploads/grandes/' . $photo, '../' . $pays . '/grandes/' . $photo);

					//On ajoute la photo dans la bdd
					$req = $bdd->prepare("INSERT INTO galerie_photos VALUES('',:pays,:photo,:sens,:trajet,:descr)");
					$req->bindValue('pays',$pays,PDO::PARAM_STR);
					$req->bindValue('photo',$photo,PDO::PARAM_STR);
					$req->bindValue('sens',$sens,PDO::PARAM_STR);
					$req->bindValue('trajet',$trajet,PDO::PARAM_INT);
					$req->bindValue('descr',$descr,PDO::PARAM_STR);
					$req->execute();

				} elseif (file_exists($petites) && !file_exists($grandes)) {
					echo "<span class=\"error_fic\">La photo $photo n'est pas présente en grande taille</span><br />\n";
				} elseif (!file_exists($petites) && file_exists($grandes)) {
					echo "<span class=\"error_fic\">La photo $photo n'est pas présente en petite taille</span><br />\n";
				}
			} else {
			}
			$i++;
		}
		if ($ajout > 0) {
?>
	<h1>Photos ajoutées avec succès</h1>
	<a href="../?p=index">Retour à l'accueil</a>
<?php
		}
	} else {
		header('Location: ../?p=ajoutphotos&pays=' . $pays);
	}
} else {
	header('Location: ../?p=ajoutphotos&pays=' . $pays);
}
?>
</body>
</html>

Par contre il faut repenser à encore modifier les liens des autres pages qui pointes vers la page d'ajout de photos.
Par exemple dans content/ dans la page index.php il faut modifier un lien en bas
<li><a href="admin/ajoutphotos.php">Ajouter des photos</a></li>

Des petites erreurs ce sont probablements glisser dans le code :mrgreen: logiquement rien de bien grave, mais pense toujours à sauvegarder ta bdd et tes photos avant de modifier le code !
Je ne voudrais pas par ma faute que tes photos ou autres informations soient détruites à cause d'une erreur d'étourderie de ma part 8-|

Eléphant du PHP | 77 Messages

05 mai 2011, 23:06

Ca ne marche toujours pas

404.php a la place #-o

Pas de soucis pour le modifs, je test en local !! je n'ai encore rien changé sur le vrai site (tant que ce n'est pas nikel j'y touche pas)

Eléphant du PHP | 241 Messages

06 mai 2011, 12:05

Salut,

cette fois-ci il ne faut pas appeler la page avec ?p=admin/ajoutphotos mais directement comme ceci http://xxxx/admin/ajoutphotos.php

Eléphant du PHP | 77 Messages

06 mai 2011, 14:00

Hey,

Mais comme t'es au top !!!!

Ça marche nikel, et l'ajout de photos se passe bien également.
J'ai plus qu'a modifier pour que ça apparaisse joli

Maintenant il ne reste plus qu'a :
- bien centrer cette galerie, vu qu'avoir entouré echo $content d'une div ne donne pas de resultat..
- et a la place des noms du menu, y mettre une image en rollover comme sur la version html

Eléphant du PHP | 241 Messages

06 mai 2011, 14:52

Pour l'histoire du centrage je vais essayer de mon côté voir ce qui cloche. :priere:

Pour le rollover tu sais comment faire ?
<a onmouseover="titre_rollover.src='images/autre_image.jpg';" onmouseout="titre_rollover.src='images/image.jpg';">
	<img src="images/image.jpg" alt="nom_image" id="titre_rollover" />
</a

EDIT :
Pour le centrage en fait il faut définir une taille en largeur et ensuite appliqué le centrage.

Code : Tout sélectionner

#le_nom_de_ta_div_qui_encadre_le_$content_(hyper_long_comme_nom_:D) { width: 500px; margin: 0px auto 0px auto; }

Eléphant du PHP | 77 Messages

06 mai 2011, 15:46

Parfait c'est recentrer, il n'y avait plus qu'à jouer avec la largeur pour que ce soit parfait !!

merci

Pour le rollover, je connaissais le code, mais où le placer ??
puisque la liste des pays n'apparait qu'au fur et a mesure sur galerie.php
Comme ça j'en profiterais aussi pour suprimer "ajouter des photos" qui apparait sur http://xxxx/galerie.php

Et une autre question, EOD dans le code vers le css, ca sert a quoi ??

EDIT : je pensais que tout était solutionné, mais non... :cry:
J'ai mis des verticales, et bien la disposition est totalement differentes, ca fait 2 lignes de 4 et une photo sur la 3eme ligne !

Eléphant du PHP | 241 Messages

06 mai 2011, 18:15

Pour le rollover avant on faisait un switch en php pour choisir le titre de la page, je pense qu'il n'y en a plus besoin maintenant, on prendra directement la valeur de $pays pour choisir le titre à afficher.

AVANT pour la page galeriebdd.php : vers le début
...
//On va afficher un titre dans la page selon le pays choisi
switch ($pays) {
	case 'japon':
		$titre_page = "Photos du Japon";
		break;
	case 'france':
		$titre_page = "Photos de France";
		break;
	case 'usa':
		$titre_page = "Photos des USA";
		break;
	case 'australie':
		$titre_page = "Photos d'Australie";
		break;
	case 'java':
		$titre_page = "Photos de Java";
		break;
	case 'inde':
		$titre_page = "Photos d'Inde";
		break;	
}
...
Cette partie peut donc être supprimé


Plus en dessous dans la même page, on avait ce code ci :
	//On affiche le titre choisi plus tôt ici
	echo "<h1>$titre_page</h1>";
A remplacer par celui-ci :
	//On affiche le titre de la page avec le rollover
?>

	<a onmouseover="titre_rollover.src='images/titre_<?php echo $pays; ?>_over.jpg';" onmouseout="titre_rollover.src='images/titre_<?php echo $pays; ?>.jpg';">
         <img src="images/titre_<?php echo $pays; ?>.jpg" alt="<?php echo $pays; ?>" id="titre_rollover" />
	</a>

<?php

Donc si tu regarde bien, je suis partie du principe que les images des titres de tes pays s'appellent titre_nompays.jpg et pour celui quand on est en survole titre_nompays_over.jpg. Tu peux bien évidemment changer ces noms de fichiers, il faut juste penser à le modifier dans le code php/html que j'ai mis juste au dessus.


- Le EOD permet de mettre une chaîne de caractères sur plusieurs lignes pour une variable sans avoir à ce casser la tête avec des guillemets simple et double qui seraient éventuellement présentes dans la longue chaîne de caractères.
Par exemple :
$head = <<<EOD
	<link rel="stylesheet" href="css/slimbox2.css" type="text/css" media="screen" />
	<script type="text/javascript" src="js/jquery.js"></script>
	<script type="text/javascript" src="js/slimbox2.js"></script>

		<title>$pays</title>
EOD;
- Avec le EOD je me casse pas la tête avec les guillemets double et simple puisqu'elles n'interfèrent pas avec le EOD
Par contre si je décide de mettre des guillemets double à la place de EOD
$head = "
	<link rel=\"stylesheet\" href=\"css/slimbox2.css\" type=\"text/css\" media=\"screen\" />
	<script type=\"text/javascript\" src=\"js/jquery.js\"></script>
	<script type=\"text/javascript\" src=\"js/slimbox2.js\"></script>

		<title>$pays</title>
";
Il faut bien que je pense à échapper TOUTES les guillemets dans la chaîne (fastidieux si la chaine est encore plus longue que celle-ci.

- Et maintenant avec des guillemets simple
$head = '
	<link rel="stylesheet" href="css/slimbox2.css" type="text/css" media="screen" />
	<script type="text/javascript" src="js/jquery.js"></script>
	<script type="text/javascript" src="js/slimbox2.js"></script>

		<title> ' . $pays . '</title>
';
Il faut que je pense à concaténer les variables présentent dans la chaîne, toujours long et ennuyant si il y a beaucoup de variable dans la chaîne.


- Pour l'histoire des verticales cela doit être dû au CSS, vérifie la taille des photos et de la <div> qui encadre tes photos.

Eléphant du PHP | 77 Messages

06 mai 2011, 19:16

Ok, pour le EOD ! merci

Alors

1) si je modifie le css, mes images horizontales seront forcément modifiées !! Pour une fois qu'elles sont nikel ! Car le css modifiera tout l'emplacement...

2) pour le roll over, pardon j'ai du mal expliquer en fait.
Ma page galerie est bien, ce qu'il faut c'est avant, dans le choix de la galerie comme ici
http://www.tuan-gallery.com/fr/accueil_galerie.html

Car la en fait ca modifiait la page du pays proprement dit, alors que ce n'est plus la peine, elle est quasi parfaite grâce à toi :mrgreen:

Eléphant du PHP | 77 Messages

09 mai 2011, 11:03

Revenu de week end ? LOL :mrgreen:

Eléphant du PHP | 241 Messages

09 mai 2011, 18:36

Salut,

héhé ouai, et c'était pas de tout repos :mrgreen:

1) sans modifier les images, si tu modifie la taille de la <div> qui encadre toutes tes photos, la <div> qui est centré.

2)Ah ok ^^, bah le mieux serait de faire une nouvelle page.
Ensuite avec une requête SQL tu vas voir tous les pays qui ont des photos dans ta bdd et tu créer donc seulement les rollover pour ces pays la.
$req = $bdd->query("SELECT DISTINCT gal_pays FROM galerie_photos");
while ($donnees = $req->fetch()) {
	$pays = $donnees['gal_pays'];	
	//On affiche le titre de la page avec le rollover
?>

	<a onmouseover="titre_rollover_<?php echo $pays; ?>.src='images/titre_<?php echo $pays; ?>_over.jpg';" onmouseout="titre_rollover_<?php echo $pays; ?>.src='images/titre_<?php echo $pays; ?>.jpg';">
		<img src="images/titre_<?php echo $pays; ?>.jpg" alt="<?php echo $pays; ?>" id="titre_rollover_<?php echo $pays; ?>" />
	</a>

<?php
}

Eléphant du PHP | 77 Messages

09 mai 2011, 22:04

Bonsoir,

1) si je modifie la taille de la div qui entoure ma galerie, celle ci n'est plus centré. J'ai joué avec la largeur pour arriver a la centrer !! Donc si je la touche ca ne marchera pas !

2) Donc en fait je cree une nouvelle page et je colle ton code dedans ? et ceci va m'afficher le nom des pays sous forme d'image en rollover ?
Mais je dois rajouter encore d'autres lignes pour arriver a avoir tous les pays ??? je comprend pas la comme j'arriverais a ce que j'ai sur ma version html