Probléme d'affichage bloc php

Résolu/Fermé
uno_orami Messages postés 49 Date d'inscription lundi 24 juin 2013 Statut Membre Dernière intervention 19 août 2014 - Modifié par uno_orami le 8/07/2014 à 12:29
uno_orami Messages postés 49 Date d'inscription lundi 24 juin 2013 Statut Membre Dernière intervention 19 août 2014 - 8 juil. 2014 à 15:27
Bonjour,

j'ai un probleme le 2eme bloc <div id="contenu_image"> ne s'affiche pas quand j'execute la page :/ qui peux m'aider svp !

voila mon code

require_once __DIR__ . '/db_connect.php';
$db = new DB_CONNECT();
mysql_query("SET NAMES 'UTF8';")or die('Erreur: '.mysql_error());
$req=mysql_query("SELECT * FROM parametre where lib_parametre='image' ORDER BY id DESC");
?>



<div id="slider">
<table id="sContent">
<tr>
<?[/contents/1351-introduction-a-php php]
while($[/download/telecharger-34098305-line line]=mysql_fetch_array($req))
{
?><td><img  id="<?php echo $line['image'];?>"  src="../parametre_image/<?php echo $line['image']; ?>" Onclick = "change('<?php echo $line['image']; ?>')"/>
<input  id="image" type="checkbox" name="image[]" value="<?php echo $line['image']; ?>" /></td> 
<?php } ?> </tr>
</table>
</div>


<div id="contenu_image">
<table align="center" >
<tr><?php
while($result=mysql_fetch_array($req))
{?>
<td><img  id="<?php echo $result['id'];?>"  src="../parametre_image/<?php echo $result['image']; ?>" /></td>
<td><[/contents/493-les-formulaires-html textarea] name="contenu" cols="30" rows="60px" id="<?php echo $result['id'];?>"> contenu</[/contents/493-les-formulaires-html textarea]></td><?php }?></tr>
</table>
</div>
A voir également:

2 réponses

Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
8 juil. 2014 à 13:54
Salut,

cyril1982 a bien expliquer le problème. Pour le résoudre, tu peux passer par un tableau intermédiaire :
<div id="slider">
<table id="sContent">
<tr>
<?php
$listeImages = array();

while($image = mysql_fetch_array($req)) {
	$listeImages[] = $image;
}

foreach ($listeImages as $line) { ?>
	<td><img  id="<?php echo $line['image'];?>"  src="../parametre_image/<?php echo $line['image']; ?>" Onclick = "change('<?php echo $line['image']; ?>')"/>
	<input  id="image" type="checkbox" name="image[]" value="<?php echo $line['image']; ?>" /></td> 
<?php } ?>
</tr>
</table>
</div>


<div id="contenu_image">
<table align="center" >
<tr>
<?php foreach ($listeImages as $result) { ?>
	<td><img  id="<?php echo $result['id'];?>"  src="../parametre_image/<?php echo $result['image']; ?>" /></td>
	<td><textarea name="contenu" cols="30" rows="60px" id="<?php echo $result['id'];?>">contenu</textarea></td>
<?php }?>
</tr>
</table>
</div>


Bonne journée
1
Utilisateur anonyme
8 juil. 2014 à 14:27
Bonjour

Pas besoin de tableau intermédiaire, il suffit de revenir au début des résultats entre les deux boucles avec mysql_data_seek :
mysql_data_seek($req,0);
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 524
8 juil. 2014 à 14:49
Effectivement c'est aussi simple :)
(Il faudrait alors aussi vérifier à chaque utilisation de mysql_data_seek que le résultat n'est pas vide pour éviter d'avoir un avertissement php, ou faire cette vérification juste après l'exécution de la requête)
0
uno_orami Messages postés 49 Date d'inscription lundi 24 juin 2013 Statut Membre Dernière intervention 19 août 2014
8 juil. 2014 à 15:26
mer6 bcp ^^ ca fonctionne très bien :)
0
cyril1982 Messages postés 110 Date d'inscription vendredi 7 mars 2014 Statut Membre Dernière intervention 19 septembre 2018 12
8 juil. 2014 à 13:30
Bonjour,

La première boucle while parcourt tous les résultats de $req.
Du coup dans ta 2e boucle while, il n'y a plus de résultats à parcourir.

Cyril
0
uno_orami Messages postés 49 Date d'inscription lundi 24 juin 2013 Statut Membre Dernière intervention 19 août 2014
8 juil. 2014 à 15:27
t'as raison mer6 bcp pour la reponse :)
0