Page 1 sur 1

Probleme de HTML + Php

Posté : 19 août 2010, 15:42
par webnanoo22
Bonjour

J'ai un petit soucis je souhaietrais céer une div avec un scroll interieur en HTML je sais faire mais dans du PHP je n'y arrive pas

Voici le code de ma page

Code : Tout sélectionner

<?php defined('_JEXEC') or die('Restricted access'); if( class_exists( "JATJPConfig" ) ) { $conf = new JATJPConfig(); } $session =& JFactory::getSession(); //$css = JURI::base().'components/com_formation/assets/style.css'; $document =& JFactory::getDocument(); //$document->addStyleSheet($css); $js =" function ajoutauselection(id){ $('sel'+id).setHTML(''); url = 'index2.php?option=com_formation&view=categorie&c=categorie&task=ajoutauselection&id='+id; var myRequest = new Ajax(url,{ method: 'get', onSuccess: function(responseText) { alert(responseText); }}).request(); }"; $document->addScriptDeclaration($js); jimport('joomla.html.html'); JRequest :: setVar('layout', 'default'); $js = "window.addEvent('domready', function(){"; $quand = $session->get('quand',false); $ou = $session->get('ou',false); $horaires = $session->get('horaire',false); $qui = $session->get('qui',false); $selection = $session->get('selection',false); //effacer les encient demande de session $pagenation = $this->pagination; $model = $this->model; $params = $this->params; $option = $this->option; $items = $this->items; $list = $this->list; $quandlist = $this->quandlist; $horairelist = $this->horairelist; $id_soustype = 0; ?> <form action="<?php echo JRoute::_('index.php?option=com_formation&view=categorie&layout=list'); ?>" method="post" name="adminForm"> <table width="100%"><tr><td valign="top"> <?php if(count($items)){ foreach ($items as $item) { if($item->id_soustype != $id_soustype) { $id_soustype = $item->id_soustype; $detailssoustype = $model->getdetailssoustype($id_soustype); $image = $detailssoustype['soustype']->image; $nomsoustype = $detailssoustype['soustype']->nom; $nomtype = $detailssoustype['type']; echo '<div class="listlist">'; echo '<table width="100%" height="100%"><tr><td><img height ="139" src ="images/formation/soustype/'.$image.'" /></td><td width="100%" height="100%">'; echo '<div class="labeltxt"><label class="group">'.$detailssoustype['type'].'</label><br><label class="type"> '.$detailssoustype['soustype']->nom.'</label></div>'; echo '</td><td><img height ="139" src ="images/formation/soustype/'.$image.'" style="padding-left:10px" /></td></tr></table></div><div class="around-border"></div>'; } $detailssoustype = $model->getdetailssoustype($item->id_soustype); if($item->image_list) $image = 'images/formation/image_list/'.$item->image_list; else $image = 'images/formation/soustype/'.$detailssoustype['soustype']->image; echo '<div class="listlist2">'; echo '<table width="100%" heigh="100%"><tr><td width="139">'; echo '<label class="soustype'.$model->getlieunom2($item->lieu).'">'.$model->getlieunom($item->lieu).'</label>'; echo '</td><td width="385" height="100%"><table width="100%" height="100%" ><tr><td colspan="2">'; echo '</td></tr><tr><td valign="bottom">'; echo '<b>'.JText::_('Age ').'</b>'.$item->age_afficher.'&nbsp;>&nbsp;<b>'.JText::_('Niveau ').'</b> '.$item->niveau.'<br>'; echo '<b>'.JText::_('Animé par ').'</b>'.$model->getnomanimateur($item->id_animateur).'<br>'; echo ''.$item->date_afficher.'&nbsp;'.$item->horaire_debut.'-'.$item->horaire_fin.''; echo ''; echo '</td><td width="33%" valign="bottom" align="right">'; echo '<b>'.$item->statut.'</b><br>'; if(@!in_array($item->id, $selection)) echo '<div id="sel'.$item->id.'"><input type="button" class="selectionner" onclick="ajoutauselection('.$item->id.')" /></div>'; echo '<a href="index.php?option=com_formation&view=details&id='.$item->id.'" class="link"> >> Lire la suite</a>'; echo '</td></tr></table></td></tr></table>'; echo '</div>'; } echo $pagenation->getListFooter(); } else { echo 'Pas des articles'; } ?> </td><td valign="top" width="255"> <div class="filterdynamique"> <h3>AFFINEZ VOTRE RECHERCHE</h3> <div> <table> <tr><td><label class="type">Qui</label></td></tr> <tr><td> <?php $ListOption[] = JHTML::_('select.option', 0, jtext::_('Age')); for($i=1;$i<101;$i++) { $ListOption[] = JHTML::_('select.option', $i, $i); } echo JHTML::_('select.genericlist', $ListOption, 'qui',false, 'value', 'text', $qui); ?> </td></tr> <tr><td><label class="type">Jours</label></td></tr> <tr><td><?php foreach ($quandlist as $k) { if($quand && in_array($k->date_afficher, $quand)) echo '<input type="checkbox" name="quand[]" checked="checked" value="'.$k->date_afficher.'" />'.$k->date_afficher.'<br>' ; else echo '<input type="checkbox" name="quand[]" value="'.$k->date_afficher.'" />'.$k->date_afficher.'<br>' ; } ?></td></tr> <tr><td><label class="type">Quand</label></td></tr> <tr><td> <?php $horaire = array('matin'=>'Matin','apresmidi'=>'Aprés midi','soir'=>'Soir'); foreach ($horairelist as $k) { if($horaires && in_array($k->horaire_afficher, $horaires)) echo '<input type="checkbox" name="horaire[]" checked="checked" value="'.$k->horaire_afficher.'" />'.$k->horaire_afficher.'<br>' ; else echo '<input type="checkbox" name="horaire[]" value="'.$k->horaire_afficher.'" />'.$k->horaire_afficher.'<br>' ; } ?> </td></tr> <tr><td><label class="type">Ou</label></td></tr> <tr><td><?php foreach ($list['lieu'] as $lieu) { if($ou && in_array($lieu->id, $ou)) echo '<input type="checkbox" name="ou[]" checked="checked" value="'.$lieu->id.'" />'.$lieu->nom.'<br>' ; else echo '<input type="checkbox" name="ou[]" value="'.$lieu->id.'" />'.$lieu->nom.'<br>'; } ?></td></tr> <tr><td></td></tr> </table> </div> </div><div style="padding-top:10px; position:relative; top:10px; padding-left:5px; height:40px"><div style="float:left"><a href="index.php?option=com_formation&view=selection&Itemid=4"><img src="http://www.hybride-test9.com/crl10/templates/ja_purity_ii/images/select.png" width="121" height="37" /></a></div> <div style="float:right"><input type="hidden" name="remplire" value="oui" /><input type="submit" value="" class="searchnew"/></div> </div> </td></tr></table> </form>
Ce code me donne cela
Image

Alors que moi je voudrais cela
Image

Et j'ai essayé avec d'inserer ma div dans mon code php

Code : Tout sélectionner

<?php defined('_JEXEC') or die('Restricted access'); if( class_exists( "JATJPConfig" ) ) { $conf = new JATJPConfig(); } $session =& JFactory::getSession(); //$css = JURI::base().'components/com_formation/assets/style.css'; $document =& JFactory::getDocument(); //$document->addStyleSheet($css); $js =" function ajoutauselection(id){ $('sel'+id).setHTML(''); url = 'index2.php?option=com_formation&view=categorie&c=categorie&task=ajoutauselection&id='+id; var myRequest = new Ajax(url,{ method: 'get', onSuccess: function(responseText) { alert(responseText); }}).request(); }"; $document->addScriptDeclaration($js); jimport('joomla.html.html'); JRequest :: setVar('layout', 'default'); $js = "window.addEvent('domready', function(){"; $quand = $session->get('quand',false); $ou = $session->get('ou',false); $horaires = $session->get('horaire',false); $qui = $session->get('qui',false); $selection = $session->get('selection',false); //effacer les encient demande de session $pagenation = $this->pagination; $model = $this->model; $params = $this->params; $option = $this->option; $items = $this->items; $list = $this->list; $quandlist = $this->quandlist; $horairelist = $this->horairelist; $id_soustype = 0; ?> <form action="<?php echo JRoute::_('index.php?option=com_formation&view=categorie&layout=list'); ?>" method="post" name="adminForm"> <table width="100%"><tr><td valign="top"> <?php if(count($items)){ foreach ($items as $item) { if($item->id_soustype != $id_soustype) { $id_soustype = $item->id_soustype; $detailssoustype = $model->getdetailssoustype($id_soustype); $image = $detailssoustype['soustype']->image; $nomsoustype = $detailssoustype['soustype']->nom; $nomtype = $detailssoustype['type']; echo '<div class="listlist">'; echo '<table width="100%" height="100%"><tr><td><img height ="139" src ="images/formation/soustype/'.$image.'" /></td><td width="100%" height="100%">'; echo '<div class="labeltxt"><label class="group">'.$detailssoustype['type'].'</label><br><label class="type"> '.$detailssoustype['soustype']->nom.'</label></div>'; echo '</td><td><img height ="139" src ="images/formation/soustype/'.$image.'" style="padding-left:10px" /></td></tr></table></div><div class="around-border"></div>'; } echo '<div style="overflow:auto; height:160px; width:570px">'; $detailssoustype = $model->getdetailssoustype($item->id_soustype); if($item->image_list) $image = 'images/formation/image_list/'.$item->image_list; else $image = 'images/formation/soustype/'.$detailssoustype['soustype']->image; echo '<div class="listlist2">'; echo '<table width="100%" heigh="100%"><tr><td width="139">'; echo '<label class="soustype'.$model->getlieunom2($item->lieu).'">'.$model->getlieunom($item->lieu).'</label>'; echo '</td><td width="385" height="100%"><table width="100%" height="100%" ><tr><td colspan="2">'; echo '</td></tr><tr><td valign="bottom">'; echo '<b>'.JText::_('Age ').'</b>'.$item->age_afficher.'&nbsp;>&nbsp;<b>'.JText::_('Niveau ').'</b> '.$item->niveau.'<br>'; echo '<b>'.JText::_('Animé par ').'</b>'.$model->getnomanimateur($item->id_animateur).'<br>'; echo ''.$item->date_afficher.'&nbsp;'.$item->horaire_debut.'-'.$item->horaire_fin.''; echo ''; echo '</td><td width="33%" valign="bottom" align="right">'; echo '<b>'.$item->statut.'</b><br>'; if(@!in_array($item->id, $selection)) echo '<div id="sel'.$item->id.'"><input type="button" class="selectionner" onclick="ajoutauselection('.$item->id.')" /></div>'; echo '<a href="index.php?option=com_formation&view=details&id='.$item->id.'" class="link"> >> Lire la suite</a>'; echo '</td></tr></table></td></tr></table>'; echo '</div>'; } echo '</div>'; echo $pagenation->getListFooter(); } else { echo 'Pas des articles'; } ?> </td><td valign="top" width="255"> <div class="filterdynamique"> <h3>AFFINEZ VOTRE RECHERCHE</h3> <div> <table> <tr><td><label class="type">Qui</label></td></tr> <tr><td> <?php $ListOption[] = JHTML::_('select.option', 0, jtext::_('Age')); for($i=1;$i<101;$i++) { $ListOption[] = JHTML::_('select.option', $i, $i); } echo JHTML::_('select.genericlist', $ListOption, 'qui',false, 'value', 'text', $qui); ?> </td></tr> <tr><td><label class="type">Jours</label></td></tr> <tr><td><?php foreach ($quandlist as $k) { if($quand && in_array($k->date_afficher, $quand)) echo '<input type="checkbox" name="quand[]" checked="checked" value="'.$k->date_afficher.'" />'.$k->date_afficher.'<br>' ; else echo '<input type="checkbox" name="quand[]" value="'.$k->date_afficher.'" />'.$k->date_afficher.'<br>' ; } ?></td></tr> <tr><td><label class="type">Quand</label></td></tr> <tr><td> <?php $horaire = array('matin'=>'Matin','apresmidi'=>'Aprés midi','soir'=>'Soir'); foreach ($horairelist as $k) { if($horaires && in_array($k->horaire_afficher, $horaires)) echo '<input type="checkbox" name="horaire[]" checked="checked" value="'.$k->horaire_afficher.'" />'.$k->horaire_afficher.'<br>' ; else echo '<input type="checkbox" name="horaire[]" value="'.$k->horaire_afficher.'" />'.$k->horaire_afficher.'<br>' ; } ?> </td></tr> <tr><td><label class="type">Ou</label></td></tr> <tr><td><?php foreach ($list['lieu'] as $lieu) { if($ou && in_array($lieu->id, $ou)) echo '<input type="checkbox" name="ou[]" checked="checked" value="'.$lieu->id.'" />'.$lieu->nom.'<br>' ; else echo '<input type="checkbox" name="ou[]" value="'.$lieu->id.'" />'.$lieu->nom.'<br>'; } ?></td></tr> <tr><td></td></tr> </table> </div> </div><div style="padding-top:10px; position:relative; top:10px; padding-left:5px; height:40px"><div style="float:left"><a href="index.php?option=com_formation&view=selection&Itemid=4"><img src="http://www.hybride-test9.com/crl10/templates/ja_purity_ii/images/select.png" width="121" height="37" /></a></div> <div style="float:right"><input type="hidden" name="remplire" value="oui" /><input type="submit" value="" class="searchnew"/></div> </div> </td></tr></table> </form>
Mais ça m'a donner cela
Image

Si quelqu'un peut m'aider ca serait sympa

Re: Probleme de HTML + Php

Posté : 19 août 2010, 15:53
par xTG
Pour le dernier code.

Tu n'as pas fermé le div suivant :

Code : Tout sélectionner

echo '<div style="overflow:auto; height:160px; width:570px">';
Donc il t'insère tout dedans.

Re: Probleme de HTML + Php

Posté : 19 août 2010, 16:00
par webnanoo22
Je l'ai fermé à la ligne 85

Code : Tout sélectionner

84 } 85 echo '</div>';
Apres le code qui indique d'afficher le resultat de chaque type d'activités

Dois je la fermer à un autre endroit ?

Re: Probleme de HTML + Php

Posté : 19 août 2010, 16:01
par xTG
Pour ce que j'en lis moi c'est la fin de ta boucle foreach cette accolade.
Donc il faudrait le placer avant et non après.

Re: Probleme de HTML + Php

Posté : 19 août 2010, 16:12
par webnanoo22
Le problème c'est que si je la place avant il met ma div avec le scroll pour chaque resultat alors que moi je la veux pour chaque groupe de resultat d'activités
Avec la fin du div avant l'accolade

Code : Tout sélectionner

84 echo '</div>'; 85 }
Ca donne cela
Image

Alors que moi je souhaietrais ça
Image

En tout cas merci de ton aide

Re: Probleme de HTML + Php

Posté : 19 août 2010, 16:25
par xTG
Hum oui je comprends mieux ton code.
Dans ce cas il te faut ouvrir le div dans ce if : if($item->id_soustype != $id_soustype) {

Initialiser la variable $id_soustype avant le foreach :
$id_soustype = '';

Et rajouter ceci au début du if (en première ligne) dont je parle au début de ce message :
if( !empty($id_soustype) )
  echo "</div>";
Et rajouter la fermeture du div en dehors du foreach (et surtout à l'intérieur du if(count($items)){ ).

Cela aura pour effet d'ouvrir le div à chaque changement de catégorie.
De le fermer à chaque changement de catégorie (au début d'affichage de la nouvelle) sauf si aucune autre catégorie n'avait été affichée (d'où le empty).
Et de le fermer une bonne fois pour toute lorsque tu sors du foreach(puisque là tu ne boucles plus pour afficher une autre catégorie et donc fermer le div).

Re: Probleme de HTML + Php

Posté : 19 août 2010, 16:38
par webnanoo22
Merci pour ta solution mais je n'arrive pas à comprendre ou insérer les codes
Peut tu me les placer dans mon code

Code : Tout sélectionner

<?php defined('_JEXEC') or die('Restricted access'); if( class_exists( "JATJPConfig" ) ) { $conf = new JATJPConfig(); } $session =& JFactory::getSession(); //$css = JURI::base().'components/com_formation/assets/style.css'; $document =& JFactory::getDocument(); //$document->addStyleSheet($css); $js =" function ajoutauselection(id){ $('sel'+id).setHTML(''); url = 'index2.php?option=com_formation&view=categorie&c=categorie&task=ajoutauselection&id='+id; var myRequest = new Ajax(url,{ method: 'get', onSuccess: function(responseText) { alert(responseText); }}).request(); }"; $document->addScriptDeclaration($js); jimport('joomla.html.html'); JRequest :: setVar('layout', 'default'); $js = "window.addEvent('domready', function(){"; $quand = $session->get('quand',false); $ou = $session->get('ou',false); $horaires = $session->get('horaire',false); $qui = $session->get('qui',false); $selection = $session->get('selection',false); //effacer les encient demande de session $pagenation = $this->pagination; $model = $this->model; $params = $this->params; $option = $this->option; $items = $this->items; $list = $this->list; $quandlist = $this->quandlist; $horairelist = $this->horairelist; $id_soustype = 0; ?> <form action="<?php echo JRoute::_('index.php?option=com_formation&view=categorie&layout=list'); ?>" method="post" name="adminForm"> <table width="100%"><tr><td valign="top"> <?php if(count($items)){ foreach ($items as $item) { if($item->id_soustype != $id_soustype) { $id_soustype = $item->id_soustype; $detailssoustype = $model->getdetailssoustype($id_soustype); $image = $detailssoustype['soustype']->image; $nomsoustype = $detailssoustype['soustype']->nom; $nomtype = $detailssoustype['type']; echo '<div class="listlist">'; echo '<table width="100%" height="100%"><tr><td><img height ="139" src ="images/formation/soustype/'.$image.'" /></td><td width="100%" height="100%">'; echo '<div class="labeltxt"><label class="group">'.$detailssoustype['type'].'</label><br><label class="type"> '.$detailssoustype['soustype']->nom.'</label></div>'; echo '</td><td><img height ="139" src ="images/formation/soustype/'.$image.'" style="padding-left:10px" /></td></tr></table></div><div class="around-border"></div>'; } $detailssoustype = $model->getdetailssoustype($item->id_soustype); if($item->image_list) $image = 'images/formation/image_list/'.$item->image_list; else $image = 'images/formation/soustype/'.$detailssoustype['soustype']->image; echo '<div class="listlist2">'; echo '<table width="100%" heigh="100%"><tr><td width="139">'; echo '<label class="soustype'.$model->getlieunom2($item->lieu).'">'.$model->getlieunom($item->lieu).'</label>'; echo '</td><td width="385" height="100%"><table width="100%" height="100%" ><tr><td colspan="2">'; echo '</td></tr><tr><td valign="bottom">'; echo '<b>'.JText::_('Age ').'</b>'.$item->age_afficher.'&nbsp;>&nbsp;<b>'.JText::_('Niveau ').'</b> '.$item->niveau.'<br>'; echo '<b>'.JText::_('Animé par ').'</b>'.$model->getnomanimateur($item->id_animateur).'<br>'; echo ''.$item->date_afficher.'&nbsp;'.$item->horaire_debut.'-'.$item->horaire_fin.''; echo ''; echo '</td><td width="33%" valign="bottom" align="right">'; echo '<b>'.$item->statut.'</b><br>'; if(@!in_array($item->id, $selection)) echo '<div id="sel'.$item->id.'"><input type="button" class="selectionner" onclick="ajoutauselection('.$item->id.')" /></div>'; echo '<a href="index.php?option=com_formation&view=details&id='.$item->id.'" class="link"> >> Lire la suite</a>'; echo '</td></tr></table></td></tr></table>'; echo '</div>'; } echo $pagenation->getListFooter(); } else { echo 'Pas des articles'; } ?> </td><td valign="top" width="255"> <div class="filterdynamique"> <h3>AFFINEZ VOTRE RECHERCHE</h3> <div> <table> <tr><td><label class="type">Qui</label></td></tr> <tr><td> <?php $ListOption[] = JHTML::_('select.option', 0, jtext::_('Age')); for($i=1;$i<101;$i++) { $ListOption[] = JHTML::_('select.option', $i, $i); } echo JHTML::_('select.genericlist', $ListOption, 'qui',false, 'value', 'text', $qui); ?> </td></tr> <tr><td><label class="type">Jours</label></td></tr> <tr><td><?php foreach ($quandlist as $k) { if($quand && in_array($k->date_afficher, $quand)) echo '<input type="checkbox" name="quand[]" checked="checked" value="'.$k->date_afficher.'" />'.$k->date_afficher.'<br>' ; else echo '<input type="checkbox" name="quand[]" value="'.$k->date_afficher.'" />'.$k->date_afficher.'<br>' ; } ?></td></tr> <tr><td><label class="type">Quand</label></td></tr> <tr><td> <?php $horaire = array('matin'=>'Matin','apresmidi'=>'Aprés midi','soir'=>'Soir'); foreach ($horairelist as $k) { if($horaires && in_array($k->horaire_afficher, $horaires)) echo '<input type="checkbox" name="horaire[]" checked="checked" value="'.$k->horaire_afficher.'" />'.$k->horaire_afficher.'<br>' ; else echo '<input type="checkbox" name="horaire[]" value="'.$k->horaire_afficher.'" />'.$k->horaire_afficher.'<br>' ; } ?> </td></tr> <tr><td><label class="type">Ou</label></td></tr> <tr><td><?php foreach ($list['lieu'] as $lieu) { if($ou && in_array($lieu->id, $ou)) echo '<input type="checkbox" name="ou[]" checked="checked" value="'.$lieu->id.'" />'.$lieu->nom.'<br>' ; else echo '<input type="checkbox" name="ou[]" value="'.$lieu->id.'" />'.$lieu->nom.'<br>'; } ?></td></tr> <tr><td></td></tr> </table> </div> </div><div style="padding-top:10px; position:relative; top:10px; padding-left:5px; height:40px"><div style="float:left"><a href="index.php?option=com_formation&view=selection&Itemid=4"><img src="http://www.hybride-test9.com/crl10/templates/ja_purity_ii/images/select.png" width="121" height="37" /></a></div> <div style="float:right"><input type="hidden" name="remplire" value="oui" /><input type="submit" value="" class="searchnew"/></div> </div> </td></tr></table> </form>

Re: Probleme de HTML + Php

Posté : 19 août 2010, 17:09
par webnanoo22
Ok tout fonctionne parfaitement

Merci beaucoup xTG
=D>