par
juliette » 27 déc. 2011, 19:06
comme c'est la, j'ai le comportement que je cherche:
<?php
// declaration de l'array
// id correspond a l'id de la question
$question=array(
array(
'id' => 1,
'libeller' => "ce chien est il bon",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "8",
),
array(
'id' => 2,
'libeller' => "ce chien est il beau",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
array(
'id' => 3,
'libeller' => "ce chien est il en bonne santé",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "2",
'moyenne' => "8",
),
array(
'id' => 4,
'libeller' => "ce chien est il gardien",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
array(
'id' => 5,
'libeller' => "ce chien est il gentil",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "8",
),
array(
'id' => 6,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
array(
'id' => 7,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "2",
'moyenne' => "8",
),
array(
'id' => 8,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
array(
'id' => 9,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "8",
),
array(
'id' => 10,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
);
echo '<table border="1">';
foreach($question as $k=>$question)
{
$parite=(int)($k/2) == $k/2;
if($parite)
{
$ligne_ouverte=true;
echo "<tr>";
}
?>
<!--Dans les deux cas on affiche la cellule-->
<td>
<?php echo $question[id];?>
</td>
<td>
<div id="<?php echo $question[id]; ?>" class="vote"></div>
<script type='text/javascript'>
$('#<?php echo $question[id];?>').rater("webroot/vote/ratingsdemo.php?id_question=<?php echo $question[id];?>&id_chien=<?php echo $question[id_chien];?>", {curvalue:<?php echo $question[moyenne];?>});
</script>
</td>
<?php
// Si le $k est impair, on ferme la ligne après avoir affiché la cellule.
if(!$parite)
{
echo "</tr>";
$ligne_ouverte=false;
}
} // fin de boucle.
if($ligne_ouverte)
{
echo "<td> </td><td> </td></tr>";
}
echo '</table>';
?>
et ça donne ça a l’écran:
http://i45.servimg.com/u/f45/13/05/90/60/captur17.png
et ce que je veux en fin de compte, c'est dynamiser l'array mais comment, j'ai essayer avec foreach mais pas réussi...
je ne sais pas si je répond correctement a ta question car c'est encore très abstraie pour moi...
les infos sont dans ces 2 tables:
CREATE TABLE IF NOT EXISTS `questionnaire` (
`id_question` int(11) NOT NULL auto_increment,
`libelle` varchar(255) collate utf8_bin NOT NULL,
PRIMARY KEY (`id_question`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=11 ;
--
-- Contenu de la table `questionnaire`
--
INSERT INTO `questionnaire` (`id_question`, `libelle`) VALUES
(1, 'Standard, aspect général ?'),
(2, 'Caractère et comportement ?'),
(3, 'Instinct de chasse et jeu'),
(4, 'Capacité au dressage'),
(5, 'Capacité aux sauts'),
(6, 'Santé général'),
(7, 'Instincts de garde et de defense'),
(8, '...'),
(9, '...'),
(10, '...');
CREATE TABLE IF NOT EXISTS `vote` (
`id_vote` int(11) NOT NULL auto_increment,
`id_question` int(11) NOT NULL,
`id` int(11) NOT NULL,
`ip` varchar(64) collate utf8_bin NOT NULL,
`id_chien` int(11) NOT NULL,
`note` int(11) NOT NULL,
`signup_date` date NOT NULL,
PRIMARY KEY (`id_vote`),
KEY `fk_questionnaire1` (`id_question`),
KEY `fk_user2` (`id`),
KEY `fk_chien3` (`id_chien`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;
et que j'ai déjà id_chien
comme c'est la, j'ai le comportement que je cherche:
[php]
<?php
// declaration de l'array
// id correspond a l'id de la question
$question=array(
array(
'id' => 1,
'libeller' => "ce chien est il bon",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "8",
),
array(
'id' => 2,
'libeller' => "ce chien est il beau",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
array(
'id' => 3,
'libeller' => "ce chien est il en bonne santé",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "2",
'moyenne' => "8",
),
array(
'id' => 4,
'libeller' => "ce chien est il gardien",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
array(
'id' => 5,
'libeller' => "ce chien est il gentil",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "8",
),
array(
'id' => 6,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
array(
'id' => 7,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "2",
'moyenne' => "8",
),
array(
'id' => 8,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
array(
'id' => 9,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "8",
),
array(
'id' => 10,
'libeller' => "...",
'id_chien' => $donnees['id_chien'],
'nb_votes' => "5",
'moyenne' => "3",
),
);
echo '<table border="1">';
foreach($question as $k=>$question)
{
$parite=(int)($k/2) == $k/2;
if($parite)
{
$ligne_ouverte=true;
echo "<tr>";
}
?>
<!--Dans les deux cas on affiche la cellule-->
<td>
<?php echo $question[id];?>
</td>
<td>
<div id="<?php echo $question[id]; ?>" class="vote"></div>
<script type='text/javascript'>
$('#<?php echo $question[id];?>').rater("webroot/vote/ratingsdemo.php?id_question=<?php echo $question[id];?>&id_chien=<?php echo $question[id_chien];?>", {curvalue:<?php echo $question[moyenne];?>});
</script>
</td>
<?php
// Si le $k est impair, on ferme la ligne après avoir affiché la cellule.
if(!$parite)
{
echo "</tr>";
$ligne_ouverte=false;
}
} // fin de boucle.
if($ligne_ouverte)
{
echo "<td> </td><td> </td></tr>";
}
echo '</table>';
?>
[/php]
et ça donne ça a l’écran: http://i45.servimg.com/u/f45/13/05/90/60/captur17.png
et ce que je veux en fin de compte, c'est dynamiser l'array mais comment, j'ai essayer avec foreach mais pas réussi...
je ne sais pas si je répond correctement a ta question car c'est encore très abstraie pour moi...
les infos sont dans ces 2 tables:
[sql]
CREATE TABLE IF NOT EXISTS `questionnaire` (
`id_question` int(11) NOT NULL auto_increment,
`libelle` varchar(255) collate utf8_bin NOT NULL,
PRIMARY KEY (`id_question`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=11 ;
--
-- Contenu de la table `questionnaire`
--
INSERT INTO `questionnaire` (`id_question`, `libelle`) VALUES
(1, 'Standard, aspect général ?'),
(2, 'Caractère et comportement ?'),
(3, 'Instinct de chasse et jeu'),
(4, 'Capacité au dressage'),
(5, 'Capacité aux sauts'),
(6, 'Santé général'),
(7, 'Instincts de garde et de defense'),
(8, '...'),
(9, '...'),
(10, '...');
CREATE TABLE IF NOT EXISTS `vote` (
`id_vote` int(11) NOT NULL auto_increment,
`id_question` int(11) NOT NULL,
`id` int(11) NOT NULL,
`ip` varchar(64) collate utf8_bin NOT NULL,
`id_chien` int(11) NOT NULL,
`note` int(11) NOT NULL,
`signup_date` date NOT NULL,
PRIMARY KEY (`id_vote`),
KEY `fk_questionnaire1` (`id_question`),
KEY `fk_user2` (`id`),
KEY `fk_chien3` (`id_chien`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;
[/sql]
et que j'ai déjà id_chien