Trier chaine contenant des virgules en PHP

Fermé
lolo5971 Messages postés 32 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 6 juillet 2008 - 5 juil. 2008 à 12:15
lolo5971 Messages postés 32 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 6 juillet 2008 - 5 juil. 2008 à 12:45
Bonjour,

Apres plusieurs tentatives de codage , je n'arrive toujours pas à afficher un triage de chaine contenant des noms d'acteurs provenant d'une base de donnees.
j'explique , en effet , les noms des acteurs se trouvent dans $row_jeu_ADULTES['ACTORS'] sachant que la chaine est du type "Jean-claude Vandamme,Sophie Marceau,Dany Boon" (c'est un exemple) et j'aimerai :

1)pouvoir les afficher , à un autre endroit de la page , avec leur image respective et leur nom respectifs.

De plus ,il y a une erreur :
Fatal error: Call to undefined function char() in E:\EasyPHP 2.0b1\www\CadresPages\OnlyFile_ACTORSphp on line 148


voici les code :

<?php

$longueur_ACTORS = strlen($row_jeu_ADULTES['ACTORS']);
$list_ACTORS = array();
$ACTORSpresents= array();
$debut_chaine = 0;
$fin_chaine = array();
if($longueur_ACTORS > 0)
{
$list_ACTORS = $row_jeu_ADULTES['ACTORS'];

for($i=0;$i<$longueur_ACTORS;$i++)
{
if (in_array(char(44),$row_jeu_ADULTES['ACTORS']))
{
$fin_chaine = ($i-1);
$ACTORSpresents[$i] = substr($row_jeu_ADULTES['ACTORS'],$debut_chaine,$fin_chaine);
}

$debut_chaine = ($i+1);
}
print($ACTORSpresents);
}



?>
A voir également:

1 réponse

Salut,
fait un explode() de ta chaine de caractere en mettant la virgule comme separateur. Du coup ca te donnera un tableau du style
$tab[0] = jean-claude vandamme
$tab[1] ) sophie marceau....
0
lolo5971 Messages postés 32 Date d'inscription lundi 25 avril 2005 Statut Membre Dernière intervention 6 juillet 2008 2
5 juil. 2008 à 12:45
voici le code remplacé :

$longueur_ACTORS = strlen($row_jeu_['ACTORS']);
$list_ACTORS = array();
$ACTORSpresents= array();
$debut_chaine = 0;
$fin_chaine = array();
if($longueur_ACTORS > 0)
{
$list_ACTORS = $row_jeu_['ACTORS'];

for($i=0;$i<$longueur_ACTORS;$i++)
{
if (explode(",",$row_jeu_['ACTORS']))
{
$ACTORSpresents=(explode(",",$row_jeu_['ACTORS']));
print($ACTORSpresents[$i]);
}
}
}


Bien que les noms d'acteurs s'affichent , j'ai encore une erreur :

Notice: Undefined offset: 30 in E:\EasyPHP 2.0b1\www\CadresPages\OnlyFile_ACTORS.php on line 150

La ligne 150 est celle-ci :

print($ACTORSpresents[$i]);


merci de m'aider
Merci à toi.
0