Récupérer tableau depuis fichier

Résolu
tabatha64
Messages postés
21
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
23 mai 2006
- 17 oct. 2005 à 10:46
tabatha64
Messages postés
21
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
23 mai 2006
- 17 oct. 2005 à 15:42
Salut,

j'ai un petit souci en voulant récupérer mon tableau, que j'ai enregistré dans un fichier texte.

Si je ne le sérialize pas, en le récupérant il m'affiche "array".

Par contre, en le sérializant :
$tabData1=urlencode((serialize($tabData1)));
le tableau est bien écrit ds le fichier mais je n'arrive pas à le décoder :
"a%3A36%3A%7Bi%3A3%3Ba%3A3%3A%7Bi%3A0%3Bs%3A1%3A%229%22%3Bi%3A1%3Bs%3A1%3A%224%22%3Bi%3A2%3Bi%3A0%3B%7....."
J'essaye avec :
$Fichier = "$DOCUMENT_ROOT/../source/tab.txt";

if (is_file($Fichier)) {

if ($TabFich = file($Fichier))
{
//$TabFich=urldecode(unserialize($TabFich));
for($i = 0; $i < count($TabFich); $i++)
{
echo $TabFich[$i];
echo "
";
.....
mais il ne m'affiche rien

Pouvez vous m'aider ?
Merci d'avance.

5 réponses

tabatha64
Messages postés
21
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
23 mai 2006

17 oct. 2005 à 15:42
j'ai repris ton code :
$texte = file_get_contents($nom_fichier);

Et impeccable ca marche nickel

Merci encore et bonne continuation
3
J_G
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
9
17 oct. 2005 à 10:51
Salut,

certainement un problème de trajet !



ALLER =>

$tabData1=urlencode(serialize($tabData1));



RETOUR =>

$TabFich=unserialize(urldecode($TabFich);





Et oui, il faut effectuer toute les opération dans l'ordre inverse



A+
0
tabatha64
Messages postés
21
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
23 mai 2006

17 oct. 2005 à 10:57
tu as certainement raison mais il ne m'affiche toujours rien alors qu'il est bien encodé dans mon fichier texte. Je comprends pas
0
J_G
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
9
17 oct. 2005 à 12:04
Je sais pourquoi :

file() renvoi les données du fichier sous forme de tableau (une ligne du fichier pour une ligne du tableau)



Soit tu utillises

$texte = file($fichier);

while( list($num_ligne,$ligne)=each($texte) ) {/*...*/}



Soit tu utilises:

$texte = file_get_contents($nom_fichier);

qui renvoi tout le contenu du fichier dans une chaîne de carcatère



Essaye voir... et A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tabatha64
Messages postés
21
Date d'inscription
lundi 7 mars 2005
Statut
Membre
Dernière intervention
23 mai 2006

17 oct. 2005 à 12:54
ok je comprends mieux maintenant.

Je vé essayer tout ca et je vous tiens au courant.

A+
0