Php - valeur dans un array recup d'une table
rduvrac
-
rduvrac -
rduvrac -
Bonjour
Je cherche à générer une liste pour l'insérer dans un tableau.
j'ai ce code :
$listegeneree = array (1, 2, 5, 6, 7);
$result = array_rand ($listegeneree, 1);
Ca, ça marche bien mais je rentre dans ce cas les valeur moi même dans le code.
J'aimerai rentrer les valeur de ma table.
j'ai ce code qui me génère 1, 2, 5, 6, 7,:
do {
$liste=$liste.$row_RSmatable['id'].', ';
} while ($row_RSmatable = mysql_fetch_assoc($RSmatable));
//a ce niveau echo $liste donne bien 1, 2, 5, 6 , 7,
//j'intègre donc $liste dans la suite
$listegeneree = array ($liste);
$result = array_rand ($listegeneree, 1);
et j'ai comme résultat :
1, 2, 5, 6 , 7,
c'est à dire qu'il interprete "1, 2, 5, 6 , 7," comme une seule entité semble t il...
Peux t on mettre une variable dans le array() en écrivant autrement :
$liste=$liste.$row_RSmatable['id'].', ';
Ou comment écrire les valeurs dans le array() directement, bref, faut il procéder autrement ?
toutes les idées sont les biens venues, car je sais plus quoi faire :-(
merci
Je cherche à générer une liste pour l'insérer dans un tableau.
j'ai ce code :
$listegeneree = array (1, 2, 5, 6, 7);
$result = array_rand ($listegeneree, 1);
Ca, ça marche bien mais je rentre dans ce cas les valeur moi même dans le code.
J'aimerai rentrer les valeur de ma table.
j'ai ce code qui me génère 1, 2, 5, 6, 7,:
do {
$liste=$liste.$row_RSmatable['id'].', ';
} while ($row_RSmatable = mysql_fetch_assoc($RSmatable));
//a ce niveau echo $liste donne bien 1, 2, 5, 6 , 7,
//j'intègre donc $liste dans la suite
$listegeneree = array ($liste);
$result = array_rand ($listegeneree, 1);
et j'ai comme résultat :
1, 2, 5, 6 , 7,
c'est à dire qu'il interprete "1, 2, 5, 6 , 7," comme une seule entité semble t il...
Peux t on mettre une variable dans le array() en écrivant autrement :
$liste=$liste.$row_RSmatable['id'].', ';
Ou comment écrire les valeurs dans le array() directement, bref, faut il procéder autrement ?
toutes les idées sont les biens venues, car je sais plus quoi faire :-(
merci
A voir également:
- Php - valeur dans un array recup d'une table
- Table ascii - Guide
- Table des matières word - Guide
- Easy php - Télécharger - Divers Web & Internet
- Attribuer une valeur à une cellule texte excel ✓ - Forum Excel
- Table des caractères - Guide
4 réponses
Salut,
Le plus simple est surement de générer directement un tableau sans passer par une chaine.
Par exemple
Remplace
par
et enlève
Le plus simple est surement de générer directement un tableau sans passer par une chaine.
Par exemple
Remplace
$liste=$liste.$row_RSmatable['id'].', ';
par
$listegeneree[]=(int)$row_RSmatable['id'];
et enlève
$listegeneree = array ($liste);
Bonjour
Quand tu écris $listegeneree = array ($liste); c'est comme si tu avais fait $listegeneree = array ("1,2,5,6,7");
ce qui n'est pas du tout la même chose que $listegeneree = array (1,2,5,6,7);
Quand tu écris $listegeneree = array ($liste); c'est comme si tu avais fait $listegeneree = array ("1,2,5,6,7");
ce qui n'est pas du tout la même chose que $listegeneree = array (1,2,5,6,7);
Bonjour,
Et pourquoi pas tout simplement:
par comme dit le pere en php 1,2,5,7 ce n'est pas du tout pareil que "1","2","5","7"
@lain
Et pourquoi pas tout simplement:
$listegeneree = array ();
} while ($row_RSmatable = mysql_fetch_assoc($RSmatable)){
$listegeneree[]=$row_RSmatable['id']; // tu empile dans ton array les valeurs lues dans ta table
}
$result = array_rand ($listegeneree, 1);
par comme dit le pere en php 1,2,5,7 ce n'est pas du tout pareil que "1","2","5","7"
@lain
En effet "le père", c'est bien comme ça que je le pensai, merci pour ta formulation qui est bien plus claire que mes bla-bla ;-)
j'ai lu que "1", "2", "5", "7", peux s'écrire 1, 2, 5, 7, (je suppose que c'est parce que ce sont des nombre...) et que la dernière virgule n'est pas utile mais est acceptée (ça m'arrange plutôt :-)
Dr Zoidberg et alain42, vos solutions fonctionnent toutes les 2
merci beaucoup :-D
(en espèrant que je n'ai pas un autre truc qui vienne perturber le bouzin ;-)
j'ai lu que "1", "2", "5", "7", peux s'écrire 1, 2, 5, 7, (je suppose que c'est parce que ce sont des nombre...) et que la dernière virgule n'est pas utile mais est acceptée (ça m'arrange plutôt :-)
Dr Zoidberg et alain42, vos solutions fonctionnent toutes les 2
merci beaucoup :-D
(en espèrant que je n'ai pas un autre truc qui vienne perturber le bouzin ;-)