Php - charger contenu avec include

Petit nouveau ! | 2 Messages

11 oct. 2013, 13:11

Bonjour,

Dans ma page index.php, j'ai un header, un footer, et du contenu qui se charge lorsque que clic sur une image.
toutes mes pages php se trouve dans un dossier 'pages' qui est à la racine du site avec index.

Mon problème se trouve dans au niveau du href.Lorsque je teste mon lien sur l'image. j'ai l'erreur suivante :
The requested URL /MonSite/ma_page was not found on this server.



J'ai tester toutes les pages en changeant celle qui s'affiche par défaut qui est 'accueil' par les autres et elles fonctionnent.

voici mon élément image
 <div class="col-lg-6">
		<h4>titre H4</h4>
		<a href="ma_page">
			<img src="images/menu1_ma_page.jpg" data-src="holder.js/100%x180" alt="aller sur ma page" class="thumbnail">
		</a>
....
Voici la tableau dans ma page index.php
<?php
		// Tableau des fichiers à importer
		$arrayPages = array
		(
					'accueil' => 'accueil.php',
					'beaute_mains_pieds' => 'beaute_mains_pieds.php',
					'beaute_regard' => 'beaute_regard.php',		
					'epilations' => 'epilations.php',
					'modelages' => 'modelages.php',
					'soins_du_corps' => 'soins_du_corps.php',
					'tarifs' => 'tarifs.php',
					'contact' => 'contact.php',					  
					'avantages' => 'avantages.php',
		);
		// La variable $page existe-elle dans l'url ?
		if(!empty($_GET['page']))
			{
			// Vérification de la valeur passée dans l'url : est-elle une clé du tableau ?
				if(array_key_exists(strtolower($_GET['page']), $arrayPages))
				{
					// Oui, alors on l'importe
					include('pages/'. $arrayPages[ strtolower($_GET['page']) ] );
				}
				else
				{
					// Non, alors on importe un fichier par défaut
		            include('pages/erreur-404.php');
				}
			}
		else
		{
			// Non, on affiche la page d'accueil par défaut
			include('pages/'. $arrayPages['accueil']);
		}
		?>

ViPHP
xTG
ViPHP | 7331 Messages

11 oct. 2013, 13:57

<a href="pages/ma_page">
ou
<a href="index.php?page=ma_page">
fonctionnerait mieux. ;)

Petit nouveau ! | 2 Messages

11 oct. 2013, 16:48

Merci,

j'ai utilisé la deuxième solution. Et tout fonctionne :)

j'aurai une seconde question. J'utilise un bouton tout en haut de mon site qui doit me ramener à l'accueil. j'utilise la propriété onclick mais il ne se passe rien.
Quelle est mon erreur ?

Par avance merci
<button type="button" class="btn btn-default" ONCLICK="index.php?page=accueil">
					<span class="glyphicon glyphicon-home">
					</span> Home
				</button>

Mammouth du PHP | 504 Messages

11 oct. 2013, 17:24

Purquoi un bouton avec onclick? pourquoi ne pas faire un lien tout simplement.
<a href="TON-ADRESSE-ICI"> <button type="button" ....></button></a>

ViPHP
xTG
ViPHP | 7331 Messages

11 oct. 2013, 18:01

Je serais même davantage partant pour un lien possédant une class qui le fasse ressembler à un bouton (mais pas si facile quand on utilise pas un framework css je l'admet).

Sinon pour la solution javascript c'est parce que tu ne dis en rien ce qu'il doit faire.
Tu lui files les données (l'url) mais tu ne lui donnes pas la fonction qu'il doit appliquer.
Le onclick n'est qu'un évènement rien d'autre.
Dans ton cas il faut utiliser la fonction de redirection qui peut se traduire par :

Code : Tout sélectionner

<button type="button" class="btn btn-default" ONCLICK="window.location.href=index.php?page=accueil">