Utilisation des données de ma base sql

webalive
Invité n'ayant pas de compte PHPfrance

03 juin 2011, 16:20

bonjour,

voila, je dois récupérer les données d'une table en utilisant les lignes 4 par 4.
je m'explique:
ligne 1: le service pour lequel l'utilisateur a voté
ligne 2: la note donnée
ligne 3: le commentaire laissé
ligne 4: le nom de la personne

et ainsi de suite pour n ligne 4 par 4.

j'utilise actuellement le code suivant:


<?php

$db = mysql_connect("localhost", "betcalculatorpro", "gE7H69E4kisebnjW");

$resultat = mysql_select_db("betcalculatorpro", $db);

$request = mysql_query('SELECT field_id , field_value FROM jos_aicontactsafe_fieldvalues WHERE field_id > 22 ORDER BY id', $db);



while ($valeur = mysql_fetch_array($request, MYSQL_BOTH)) {

echo ' ' .$valeur[field_value].'<br />';

}
mysql_free_result ($req);

mysql_close ();
?>

je récupere bien les données mais d'un bloc...
comment puis je faire pour les utiliser

merci de votre aide

ViPHP
AB
ViPHP | 5818 Messages

03 juin 2011, 18:42

Tu peux compter tes lignes et utiliser l'opérateur modulo pour les grouper par quatre.

Cela dit je ne comprend pas vraiment comment fonctionne ton système (ou plutôt j'ai peur de comprendre). Tu n'as pas un champ dans ta table pour chaque "service", "note", "commentaire" et "nom" mais tu enregistre ces valeurs à la suite par groupe de quatre lignes ?

webalive
Invité n'ayant pas de compte PHPfrance

03 juin 2011, 19:00

merci de ta réponse, tu peux avoir peur de comprendre.
surtout que pour ne pas citer ce sont les organisations de table d'un composant de joomla.
et en effet les sont enregistrées ainsi..
je voudrais juste pouvoir les utiliser au lieu de re-créer une page de sondage avec les enregistrements et affichage des votes et commentaires...

ViPHP
AB
ViPHP | 5818 Messages

04 juin 2011, 22:09

Basiquement un truc comme ça peut-être :
<?php 
$tab[]='a';
$tab[]='z';
$tab[]='e';
$tab[]='r';
$tab[]='t';
$tab[]='y';
$tab[]='u';
$tab[]='i';
$tab[]='o';
$tab[]='p';
$tab[]='q';
$tab[]='s';
$tab[]='d';
$tab[]='f';
$tab[]='g';
$tab[]='h';

$result = array();

$i = 0;
$index = -1;

foreach ($tab as $value)
	{
		if ($i%4 == 0) $index++;
		$result[$index][] = $value;
		$i++;
	}
echo '<pre>';
print_r($result);
echo '</pre>';
?>
Donc pour toi cela donnerait :
$result = array();

$i = 0;
$index = -1;

while ($valeur = mysql_fetch_array($request, MYSQL_BOTH)) 
{

if ($i%4 == 0) $index++;
$result[$index][] = $valeur['field_value'];
$i++;
} 
Sinon tu peux créer ton tableau de valeurs et utiliser la fonction array_chunk
$result = array();
while ($valeur = mysql_fetch_array($request, MYSQL_BOTH)) 
{
$result[] = $valeur['field_value'];
}
if(count($result) > 0) $result = array_chunk($result,4);