Comment recupérré des valeurs d'un array avec une balise input

boni91 Messages postés 23 Date d'inscription dimanche 12 novembre 2017 Statut Membre Dernière intervention 22 juillet 2018 - 12 nov. 2017 à 14:28
 boni91 - 15 nov. 2017 à 18:29
bonjour à tous et à toutes,

j'ai créer 4 array avec différentes valeurs, ce que j'aimerai faire sait d'envoyer ses valeurs via un formulaire et une balises input "image" sur une nouvelle page afin de les recuperrés et d'afficher une image et un lecteur audio, en sachant que sur la page principale il y a 26 choix donc 26 bouton image, quand je clic sur un des bouton la deuxieme page s'ouvre mais aucune informations.

			 
<form method="post" action="../page_principal/lecteur-audio.php">
<?php
echo'<table class="post audio_table">';
foreach($catalogue as $cle => $catalogues){

echo' <tr style="background-color:'. $catalogues['color'] .';">';
echo'<td>';
echo'<p style="margin-top:-10px;display:inline-block;">'. $catalogues['text'] .'</p>';

echo'<div class="btn_audio">';
echo'<input style="width="26"; height="24.8" type="image" src="'. $catalogues['img_2'] .'" name="'. $cle .'" value = "'. $catalogues .'"/>';
echo'</div>';
echo'</td>';
echo'</tr>';

}
echo'</table>';
?>
<?php
echo'<table class="post audio_table">';
foreach($catalogue_1 as $cle => $catalogues_1){
echo' <tr style="background-color:'. $catalogues_1['color'] .';">';
echo'<td>'; echo'<p style="margin-top:-10px;display:inline-block;">'. $catalogues_1['text'] .'</p>';

echo'<div class="btn_audio">';
echo'<input style="width="26"; height="24.8" type="image" src="'. $catalogues_1['img_2'] .'" name ="'. $cle .'" value ="'. $catalogues_1.'" />';
echo'</div>';
echo'</td>';
echo'</tr>';

}
echo'</table>';
?>
</section>
<section>
<article class="title_audio">
<hr style="border:1px solid #979797;margin:30px 0;"/>
<p class="title_livres"><b>AU BOULOT</b> !
<span style="font-weight:400;">Livre 2</span>
</p>
<hr style="border:1px solid #979797;margin:30px 0;"/>
</article>
<?php
echo'<table class="post audio_table">';

foreach($secondcatalogue as $cle => $secondcatalogues){

echo' <tr style="background-color:'. $secondcatalogues['color'] .';">';
echo'<td>';
echo'<p style="margin-top:-10px;display:inline-block;">'. $secondcatalogues['text'] .'</p>';
echo'<div class="btn_audio">';
echo'<input style="width="26"; height="24.8" type="image" src="'. $secondcatalogues['img_2'] .'" name ="'. $cle .'" value="'. $secondcatalogues.'"/>';
echo'</div>';
echo'</td>';
echo'</tr>';

}

echo'</table>';

?>
<?php
echo'<table class="post audio_table">';

foreach($secondcatalogue_1 as $cle => $secondcatalogues_1){

echo' <tr style="background-color:'. $secondcatalogues_1['color'] .';">';
echo'<td>';
echo'<p style="margin-top:-10px;display:inline-block;">'. $secondcatalogues_1['text'] .'</p>';
echo'<div class="btn_audio">';
echo'<input style="width="26"; height="24.8" type="image" src="'. $secondcatalogues_1['img_2'] .'" name ="'. $cle .'" value="'. $secondcatalogues_1 .'"/>';
echo'</div>';
echo'</td>';
echo'</tr>';

}

echo'</table>';

?>
</section>
</form>

excusez moi pour l'ordre des ligne, mais ca fait tres longtemps que je n'ais pas coder.
merci d avance

10 réponses

jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
12 nov. 2017 à 14:57
Bonjour,

Déjà... au lieu de répéter 4 fois le même code... autant le mettre dans une fonction.
Ca rend le code plus simple à lire....et à maintenir.

Ensuite... les balises input image n'ont pas d'attribut value (cf la documentation).
Donc le plus simple est de mettre chaque image dans un form à part et d'y placer un input hidden avec les valeurs voulues

Pour ce qui est de la value .. un json_encode te permettra d'envoyer ton array sous forme de chaine de caractères.
De l'autre côté, tu pourras le récupérer avec un json_decode

Voila à quoi pourrait ressembler ton code
<?php

//activation de l'affichage des messages d'erreur php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);


//Fonction
function addForm($catalogue){
	$result = '<form method="post" action="../page_principal/lecteur-audio.php"> ';
		$result .= '<table class="post audio_table">';
		foreach($catalogue as $cle => $row){
			$result .= ' <tr  style="background-color:'. $row['color'] .';">';
				$result .= '<td>'; $result .= '<p style="margin-top:-10px;display:inline-block;">'. $row['text'] .'</p>';
					$result .= '<div class="btn_audio">';               
						$result .= '<input type="hidden" name="'.$cle.'" value="'. json_encode($row).'" />',
						$result .= '<input style="width="26"; height="24.8" type="image" src="'. $row['img_2'] .'" name ="img_'. $cle .'" />';
					$result .= '</div>';
				$result .= '</td>';
			$result .= '</tr>';

		}  
		$result .= '</table>'; 
	$result .= '</form>';
	
  return $result;
}
?>

<section>
	<article class="title_audio">
		<hr style="border:1px solid #979797;margin:30px 0;"/>
		<p class="title_livres"><b>AU BOULOT</b> !
		<span style="font-weight:400;">Livre 1</span>
		</p>
		<hr style="border:1px solid #979797;margin:30px 0;"/>
	</article> 
	<?php
	echo addForm($catalogue);
	echo addForm($catalogue_1);
	?>
</section>

<section>
	<article class="title_audio">
		<hr style="border:1px solid #979797;margin:30px 0;"/>
		<p class="title_livres"><b>AU BOULOT</b> !
		<span style="font-weight:400;">Livre 2</span>
		</p>
		<hr style="border:1px solid #979797;margin:30px 0;"/>
	</article> 
	<?php
	echo addForm($secondcatalogue);
	echo addForm($secondcatalogue_1);
	?>
</section>


NB : Avant de poursuivre, je t'invite à lire ceci :
http://www.commentcamarche.net/faq/48399-php-gestion-des-erreurs-debogage-et-ecriture-du-code

.


0
boni91 Messages postés 23 Date d'inscription dimanche 12 novembre 2017 Statut Membre Dernière intervention 22 juillet 2018
12 nov. 2017 à 18:00
merci Jordan pour ta réponse, je t avoue que la sait un peu compliqué pour moi, par contre quand j'affiche avec ton code, il ecrit deux foix les choix.
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
12 nov. 2017 à 18:08
Il affiche quoi et où exactement ??
0
boni91 > jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024
13 nov. 2017 à 09:21
bonjour Jordane, sur la liste des menus(choix)page principale, il y a d'une part le descriptif du choix sans l image du haut parleur(image) pour cliquez dessus et en dessous il y a une phrase qui s'affiche avec le code html et css avec l'image du haut parleur,merci encore pour ta réaction, sur la page principale je voudrai avoir le descriptif et l image cliquable, puis quand on clic sur l'image ça ouvre une deuxième page ou j'afficherai une image avec un lecteur audio avec le son correspondant au choix cliquez, par contre si sait une function comment je fais pour la récuperré sur l'autre page.
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344 > boni91
13 nov. 2017 à 09:52
Attends .. tu veux juste des liens ???

Dans ce cas... il te suffit d'utiliser la balise <a> !!

par exemple :
echo '
<a href="lapageaouvrir.php?id=" rel="nofollow noopener noreferrer" target="_blank"'.$cle.'">
  <img src="'.$lienverslimage.'"></img>
  <span> ici la description ...</span>
</a>


Et dans ton autre page lapageaouvrir.php ..il te suffit d'utiliser la variable GET
 $cle = !empty($_GET['id']) ? $_GET['id'] : NULL;
0
merci Jordane, si je comprend bien je ne passe plus par le formulaire mais directement par les balises a, donc je remplace les balises input par les balises a, par contre
 target="_blank"'. $cle .'"
est ce que ça veut dire " tu m'ouvre une page et tu m envoie la cle correspondante au choix" pour la recuperré sur l'autre page,
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344 > boni91
Modifié le 13 nov. 2017 à 10:53
C'est le site code-source qui a mal retranscrit ce que j'avais écrit ...
il fallait lire :
 href="lapageaouvrir.php?id=" '.$cle.'"
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
13 nov. 2017 à 21:27
Bon...
Déjà .. au lieu d'ouvrir une nouvelle discussion.. merci de continuer ici.

Ensuite je vois que tu galères....

Commences par nous poster la structure de ta BDD histoire que je puisse connaitre le nom des champs et te proposer un code qui convient.

Sachant que dans ta première page, tu affiches les liens (balises <a ) avec, dans l'url l' ID correspondant. (en ajoutant à la fin de l'url :
 ?id='$lavaleurcorrespondaliddanstabdd'


Et dans la seconde page, grâce à cet ID, tu fais une requête en BDD pour récupérer les différentes infos dont tu as besoin.



0
boni91 Messages postés 23 Date d'inscription dimanche 12 novembre 2017 Statut Membre Dernière intervention 22 juillet 2018
14 nov. 2017 à 07:13
bonjour Jordane et merci encore de me repondre, voici un des tableaux en question
<?php $catalogue = array(

'son' => array(
'audio' =>'../mp3/page21.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 21</b> - TP Métiers',
'color'=>'#d5b88a'


),
'son_2' => array(
'audio' => '../mp3/page29.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 29</b>Messages',
'color'=>'#d5b88a'
),
'son_3' => array(
'audio' => '../mp3/page35.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 35</b> - Discrimination [o] [u] [ou]',
'color'=>'#99e3df'
),
'son_4' => array(
'audio' => '../mp3/page36.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 36</b>Messages ou',
'color'=>'#99e3df'
),
'son_5'=>array(
'audio' => '../mp3/page39.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 39</b>TP ou',
'color'=>'#fc8aaf'

),
'son_6' => array(
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'audio' => '../mp3/page42.mp3',
'text' => '<b>1 - page 42</b>Message o / au / eau',
'color'=>'#fc8aaf'

),
'son_7' => array(
'audio' => '../mp3/page47.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 47</b>TP o / au / eau',
'color'=>'#cd9dbe'
),
'son_8' => array(
'audio' => '../mp3/page53.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 53</b>Message oi',
'color'=>'#cd9dbe'
),
'son_9' =>array(
'audio' => '../mp3/page54.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 54</b> Discrimination [ou][a][wa]',
'color'=>'#cd9dbe'

),
'son_10' => array(
'audio' => '../mp3/page57.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 57</b>TP oi',
'color'=>'#f3979f'
),
'son_11' => array(
'audio' => '../mp3/page59.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 59</b> Discrimination [ou][a][wa]',
'color'=>'#bae3a1'
),
'son_12' => array(
'audio' => '../mp3/page64.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 64</b> Lecture c / k / qu',
'color'=>'#bae3a1'

),
'son_13' => array(
'audio' => '../mp3/page69.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 69</b> -TP c / k / qu',
'color'=>'#e2e282'
),
'son_14' => array(
'audio' => '../mp3/page79.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 79</b> -TP ch',
'color'=>'#96d0e3'
),
'son_15' => array(
'audio' => '../mp3/page83.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 83</b> Message [s][ch][z]',
'color'=>'#cb9dbe'
),
'son_16' =>array(
'audio' => '../mp3/page86.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 86</b> Message c / ç / t',
'color'=>'#cb9dbe'

),
'son_17' => array(
'audio' => '../mp3/page92.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 92</b> -TP c / ç / t ',
'color'=>'#cb9dbe'
),
'son_18' => array(
'audio' => '../mp3/page93.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 93</b> -TP c / ç / t',
'color'=>'#cb9dbe'
),
'son_19' => array(
'audio' => '../mp3/page95.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 95</b> -Message s / ss / c / ç / t',
'color'=>'#eea286'
),
'son_20' =>array(
'audio' => '../mp3/page101.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 101</b> - Phrases j / g',
'color'=>'#f3979f'
),
'son_21' => array(
'audio' => '../mp3/page105.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 105</b> - Discrimination [s][ch][z][j]',
'color'=>'#f3979f'
),
'son_22' => array(
'audio' => '../mp3/page106.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 106</b> - Message ch / s - ss - c - t - ç / j - g',
'color'=>'#eea286'
),
'son_23' => array(
'audio' => '../mp3/page112.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 112</b> - Message g / gu',
'color'=>'#f6c0a8'

),
'son_24' => array(
'audio' => '../mp3/page115.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 115</b> - TP g / gu',
'color'=>'#bae3a1'
),
'son_25' => array(
'audio' => '../mp3/page120.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 120</b> - Message bl - br - pl - pr - fl - fr',
'color'=>'#bae3a1'
),
'son_26' => array(
'audio' => '../mp3/page125.mp3',
'img' => '../img/livre_1.jpg',
'img_2' => '../btn/haut-parleur1.png',
'text' => '<b>1 - page 125</b> - TP bl - br - pl - pr - fl - fr',
'color'=>'#eea286'
)

);?>
ce que je voudrai recuperré c'est 'audio' et 'img' afin d'afficher l'image avec un lecteur audio avec un telechargement possible pour les utilisateurs qui passe sur tout les navigateurs, par contre pourras tu m'expliquer ton code, car j'aimerai comprendre. merci d'avance
0

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

Posez votre question
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
Modifié le 14 nov. 2017 à 09:33
Bon,

Déjà, on va découper en 3 fichiers.
<?php
//Fichier contenant ton catalogue
// catalogue.php
$catalogue = array(
 
   'son' => array(
   'audio' =>'../mp3/page21.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 21</b> - TP Métiers',
   'color'=>'#d5b88a'
   
  
  ),
   'son_2' => array(
   'audio' => '../mp3/page29.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 29</b>Messages',
   'color'=>'#d5b88a'
  ),
  'son_3' => array(
   'audio' => '../mp3/page35.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 35</b> - Discrimination [o] [u] [ou]',
   'color'=>'#99e3df'
  ),
  'son_4' => array(
   'audio' => '../mp3/page36.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 36</b>Messages ou',
   'color'=>'#99e3df'
  ),
  'son_5'=>array(
   'audio' => '../mp3/page39.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 39</b>TP ou',
   'color'=>'#fc8aaf'
  
  ),
  'son_6' => array(
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'audio' => '../mp3/page42.mp3',
   'text' => '<b>1 - page 42</b>Message o / au / eau',
   'color'=>'#fc8aaf'
   
  ),
  'son_7' => array(
   'audio' => '../mp3/page47.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 47</b>TP o / au / eau',
   'color'=>'#cd9dbe'
  ),
  'son_8' => array(
   'audio' => '../mp3/page53.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 53</b>Message oi',
   'color'=>'#cd9dbe'
  ),
  'son_9' =>array(
   'audio' => '../mp3/page54.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 54</b> Discrimination [ou][a][wa]',
   'color'=>'#cd9dbe'
  
  ),
   'son_10' => array(
   'audio' => '../mp3/page57.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 57</b>TP oi',
   'color'=>'#f3979f'
  ),
  'son_11' => array(
   'audio' => '../mp3/page59.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 59</b> Discrimination [ou][a][wa]',
   'color'=>'#bae3a1'
  ),
  'son_12' => array(
   'audio' => '../mp3/page64.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 64</b> Lecture  c / k / qu',
   'color'=>'#bae3a1'
 
  ),
   'son_13' => array(
   'audio' => '../mp3/page69.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 69</b> -TP  c / k / qu',
   'color'=>'#e2e282'
  ),
  'son_14' => array(
   'audio' => '../mp3/page79.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 79</b> -TP ch',
   'color'=>'#96d0e3'
  ),
  'son_15' => array(
   'audio' => '../mp3/page83.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 83</b> Message [s][ch][z]',
   'color'=>'#cb9dbe'
  ),
  'son_16' =>array( 
   'audio' => '../mp3/page86.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 86</b> Message c / ç / t',
   'color'=>'#cb9dbe'
  
  ),
  'son_17' => array(
   'audio' => '../mp3/page92.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 92</b> -TP c / ç / t ',
   'color'=>'#cb9dbe'
  ),
  'son_18' => array(
   'audio' => '../mp3/page93.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 93</b> -TP c / ç / t',
   'color'=>'#cb9dbe'
  ),
  'son_19' => array(
   'audio' => '../mp3/page95.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 95</b> -Message s / ss / c / ç / t',
   'color'=>'#eea286'
  ),
  'son_20' =>array(
   'audio' => '../mp3/page101.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 101</b> - Phrases j / g',
   'color'=>'#f3979f'
  ),
   'son_21' => array(
   'audio' => '../mp3/page105.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 105</b> - Discrimination [s][ch][z][j]',
   'color'=>'#f3979f'
  ),
  'son_22' => array(
   'audio' => '../mp3/page106.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 106</b> - Message ch / s - ss - c - t - ç / j - g',
   'color'=>'#eea286'
  ),
  'son_23' => array(
   'audio' => '../mp3/page112.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 112</b>  - Message g / gu',
   'color'=>'#f6c0a8'
 
  ),
   'son_24' => array(
    'audio' => '../mp3/page115.mp3',
    'img' => '../img/livre_1.jpg',
    'img_2' => '../btn/haut-parleur1.png',
    'text' => '<b>1 - page 115</b> - TP g / gu',
    'color'=>'#bae3a1'
  ),
  'son_25' => array(
   'audio' => '../mp3/page120.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 120</b> - Message bl - br - pl - pr - fl - fr',
   'color'=>'#bae3a1'
  ),
  'son_26' => array(
   'audio' => '../mp3/page125.mp3',
   'img' => '../img/livre_1.jpg',
   'img_2' => '../btn/haut-parleur1.png',
   'text' => '<b>1 - page 125</b> - TP bl - br - pl - pr - fl - fr',
   'color'=>'#eea286'
  )

?>


Ensuite, on va générer tes liens:
<?php
//Affichage des erreurs PHP
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

// On inclus le catalogue
require_once "chemin_vers_fichier/catalogue.php";


// on boucle sur l'array catalogue pour générer les liens:
foreach($catalogue as $cle =>$values){
 $audio = !empty($catalogue[$cle]['audio']) ? $catalogue[$cle]['audio'] : NULL;
 $img = !empty($catalogue[$cle]['img']) ? $catalogue[$cle]['img'] : NULL;
 $img2 = !empty($catalogue[$cle]['img2']) ? $catalogue[$cle]['img2'] : NULL;
 $text = !empty($catalogue[$cle]['text']) ? $catalogue[$cle]['text'] : NULL;
 $color = !empty($catalogue[$cle]['color']) ? $catalogue[$cle]['color'] : NULL;
 
 $lienLecteurAudio = "../page_principal/lecteur-audio.php?$id=$cle";
 
 echo "<a href='$lienLecteurAudio' rel="nofollow noopener noreferrer" target="_blank">
   <img src='$img2'></img>
   </a>";

}

?>


Et enfin, le code de ta page lecteur-audio.php
<?php
//Fichier lecteur-audio.php

//Affichage des erreurs PHP
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

// On inclus le catalogue
require_once "chemin_vers_fichier/catalogue.php";

//On récupère le catalogue à traiter (via la variable id passée dans l'url)
$id = !empty($_GET['id']) ? $_GET['id'] : NULL;

if($id){

   //A partir du catalogue, on en récupères les différentes variables
 $audio = !empty($catalogue[$id]['audio']) ? $catalogue[$id]['audio'] : NULL;
 $img = !empty($catalogue[$id]['img']) ? $catalogue[$id]['img'] : NULL;
 $img2 = !empty($catalogue[$id]['img2']) ? $catalogue[$id]['img2'] : NULL;
 $text = !empty($catalogue[$id]['text']) ? $catalogue[$id]['text'] : NULL;
 $color = !empty($catalogue[$id]['color']) ? $catalogue[$id]['color'] : NULL;

    // Ici le reste de ton code pour ton lecteur
 // ...
 
 
 

}else{
  echo "Catalogue inconnu !"
}



?>



NB: Il te faudra renseigner la variable chemin_vers_fichier/catalogue.php au niveau des require.

Pour le reste.. j'ai écris le code de tête sans tester..il peut y avoir des petites erreurs....


Cordialement, 
Jordane                                                                 
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
14 nov. 2017 à 09:34
NB: Il faut retirer le rel="nofollow noopener noreferrer" target="_blank" qui s'ajoute automatiquement.
0
OK merci Jordane, je vais essayer ce soir après le boulot, merci a toi de te donner la peine a me répondre, bon pour
require_once "chemin_vers_fichier/catalogue.php";
je pense que j'en aurai pas besoin, car les tableaux se trouve sur la page directement ou pour toi il faut mieux que je les mette sur une autre page comme tu le dit catalogues.php.
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
14 nov. 2017 à 10:11
A ton avis .... si je te le dis.... ce n'est pas pour rien.

Le fait de le mettre dans un fichier à part... ça te permet, si jamais tu dois le modifier (ajouter/retirer des trucs du catalogue) de n'avoir à le faire qu'à un seul endroit au lieu de devoir aller le changer dans plusieurs fichiers ...et en plus cela évite des erreurs .......
0
ok je te remercie, ce soir je fais une page a part pour les tableaux, dans un dossier inc.
merci
0
boni91 Messages postés 23 Date d'inscription dimanche 12 novembre 2017 Statut Membre Dernière intervention 22 juillet 2018
14 nov. 2017 à 17:51
bonsoir jordane, j'ai un message d'erreur:

Notice: Undefined variable: id in D:\wamp2\www\project_val_bis\page_principal\audio.php on line 105

la ligne 105 :
 $lienLecteurAudio = "../page_principal/lecteur-audio.php?$id=$cle";


si je comprend bien il n'existe pas de variable pour id
0
jordane45 Messages postés 38144 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 21 avril 2024 344
14 nov. 2017 à 18:15
il faut retirer le $ devant id
0
boni91 Messages postés 23 Date d'inscription dimanche 12 novembre 2017 Statut Membre Dernière intervention 22 juillet 2018
14 nov. 2017 à 18:18
merci mais j ai essayer toujours pareil
0
boni91 Messages postés 23 Date d'inscription dimanche 12 novembre 2017 Statut Membre Dernière intervention 22 juillet 2018
14 nov. 2017 à 18:21
ah excuse moi sait bon, je te remercie énormément pour tout ton aide, je continu a tester.
0
bonsoir, j ai un problème sur l'affichage d' images, pourquoi sur les 52 choix, il n'y a que la moitier qui s'affiche, hors que l'image en question est la meme dans tous les tableaux.
 <?php

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

require_once "../inc/inc_catalogue.php";



foreach($catalogue as $cle =>$values){

$audio = !empty($catalogue[$cle]['audio']) ? $catalogue[$cle]['audio'] : NULL;
$img = !empty($catalogue[$cle]['img']) ? $catalogue[$cle]['img'] : NULL;
$img2 = !empty($catalogue[$cle]['img_2']) ? $catalogue[$cle]['img_2'] : NULL;
$text = !empty($catalogue[$cle]['text']) ? $catalogue[$cle]['text'] : NULL;
$color = !empty($catalogue[$cle]['color']) ? $catalogue[$cle]['color'] : NULL;

$lienLecteurAudio = "../page_principal/lecteur-audio.php?id=$cle";


echo' <tr style="background-color:'. $color.';">';
echo'<td>';
echo'<p style="margin-top:-10px;display:inline-block;">'. $text .'</p>';
echo'<div class="btn_audio">';
echo '<a href="'. $lienLecteurAudio .'" rel="nofollow noopener noreferrer" target="_blank">';
echo '<img style="width="26"; height="24.8" src="'. $img2 .'"></img>';
echo '</a>';
echo'</a>';
echo'</div>';
echo'</td>';
echo'</tr>';
}

foreach($catalogue_1 as $cle =>$values){

$audio = !empty($catalogue_1[$cle]['audio']) ? $catalogue_1[$cle]['audio'] : NULL;
$img = !empty($catalogue_1[$cle]['img']) ? $catalogue_1[$cle]['img'] : NULL;
$img2 = !empty($catalogue_1[$cle]['img_2']) ? $catalogue_1[$cle]['img_2'] : NULL;
$text = !empty($catalogue_1[$cle]['text']) ? $catalogue_1[$cle]['text'] : NULL;
$color = !empty($catalogue_1[$cle]['color']) ? $catalogue_1[$cle]['color'] : NULL;

$lienLecteurAudio = "../page_principal/lecteur-audio.php?id=$cle";


echo' <tr style="background-color:'. $color.';">';
echo'<td>';
echo'<p style="margin-top:-10px;display:inline-block;">'. $text .'</p>';
echo'<div style="float:right;" class="btn_audio">';
echo '<a href="'. $lienLecteurAudio .'" rel="nofollow noopener noreferrer" target="_blank">';
echo '<img style="width="26"; height="24.8" src="'. $img2 .'"></img>';
echo '</a>';
echo'</a>';
echo'</div>';
echo'</td>';
echo'</tr>';
}

?>
</section>
</table>
<section>
<article class="title_audio">
<hr style="border:1px solid #979797;margin:30px 0;"/>
<p class="title_livres"><b>AU BOULOT</b> !
<span style="font-weight:400;">Livre 2</span>
</p>
<hr style="border:1px solid #979797;margin:30px 0;"/>
</article>
<table class="post audio_table">
<?php

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

require_once "../inc/inc_catalogue.php";



foreach($secondcatalogue as $cle =>$values){

$audio = !empty($secondcatalogue[$cle]['audio']) ? $secondcatalogue[$cle]['audio'] : NULL;
$img = !empty($secondcatalogue[$cle]['img']) ? $secondcatalogue[$cle]['img'] : NULL;
$img2 = !empty($secondcatalogue[$cle]['img_2']) ? $secondcatalogue[$cle]['img_2'] : NULL;
$text = !empty($secondcatalogue[$cle]['text']) ? $secondcatalogue[$cle]['text'] : NULL;
$color = !empty($secondcatalogue[$cle]['color']) ? $secondcatalogue[$cle]['color'] : NULL;

$lienLecteurAudio = "../page_principal/lecteur-audio.php?id=$cle";



echo' <tr style="background-color:'. $color.';">';
echo'<td>';
echo'<p style="margin-top:-10px;display:inline-block;">'. $text .'</p>';
echo'<div class="btn_audio">';
echo '<a href="'. $lienLecteurAudio .'" rel="nofollow noopener noreferrer" target="_blank">';
echo '<img style="width="26"; height="24.8" src="'. $img2 .'"></img>';
echo '</a>';
echo'</a>';
echo'</div>';
echo'</td>';
echo'</tr>';
}


foreach($secondcatalogue_1 as $cle =>$values){

$audio = !empty($secondcatalogue_1[$cle]['audio']) ? $secondcatalogue_1[$cle]['audio'] : NULL;
$img = !empty($secondcatalogue_1[$cle]['img']) ? $secondcatalogue_1[$cle]['img'] : NULL;
$img2 = !empty($secondcatalogue_1[$cle]['img_2']) ? $secondcatalogue_1[$cle]['img_2'] : NULL;
$text = !empty($secondcatalogue_1[$cle]['text']) ? $secondcatalogue_1[$cle]['text'] : NULL;
$color = !empty($secondcatalogue_1[$cle]['color']) ? $secondcatalogue_1[$cle]['color'] : NULL;

$lienLecteurAudio = "../page_principal/lecteur-audio.php?id=$cle";



echo' <tr style="background-color:'. $color.';">';
echo'<td>';
echo'<p style="margin-top:-10px;display:inline-block;">'. $text .'</p>';
echo'<div style="float:right;" class="btn_audio">';
echo '<a href="'. $lienLecteurAudio .'" rel="nofollow noopener noreferrer" target="_blank">';
echo '<img style="width="26"; height="24.8" src="'. $img2 .'"></img>';
echo '</a>';
echo'</a>';
echo'</div>';
echo'</td>';
echo'</tr>';
}
?>






	<?php

error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);

require_once "../inc/inc_catalogue.php";

$id = !empty($_GET['id']) ? $_GET['id'] : NULL;

if($id){

$audio = !empty($catalogue[$id]['audio']) ? $catalogue[$id]['audio'] : NULL;
$img = !empty($catalogue[$id]['img']) ? $catalogue[$id]['img'] : NULL;
$img2 = !empty($catalogue[$id]['img_2']) ? $catalogue[$id]['img_2'] : NULL;
$text = !empty($catalogue[$id]['text']) ? $catalogue[$id]['text'] : NULL;
$color = !empty($catalogue[$id]['color']) ? $catalogue[$id]['color'] : NULL;


echo '<img style="width="950"; height="450" src="' . $img .'" alt="l\'image du son">';
echo'</br>';
echo'<audio style="width:275px; height=80px" controls="controls">';
echo'<source src="'. $audio .'" type="audio/mp3" />';
echo'Votre navigateur n\'est pas compatible';
echo'</audio>';
echo'<a href="'. $audio .'" download>';
echo'<img style="width="76"; height="76" src="../img/bouton-telecharger.png">';
echo'</a>';


}else{
echo "Catalogue inconnu !";
}



?>

poutant ça devrai le faire pour tout les choix
0
Rejoignez-nous