cs_deblok83
Messages postés23Date d'inscriptionsamedi 18 octobre 2003StatutMembreDernière intervention30 juin 2005
-
14 juin 2005 à 15:05
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 2010
-
15 juin 2005 à 10:04
Bonjour,
c'est mon premier post ici alors je me permet de me presenter je suis le webmaster de deblok83.com .
j'ai un petit probleme je veux faire une rubrique "importer contact" qui prend comme un fichier un fichier XML
du genre
<?xml version="1.0" encoding="UTF-8"?>
<exportcontact>
<contact>
<nom>Toto</nom>
Titi
<numero type="tel portable"
>0633333330</numero>
</contact>
<contact>
<nom>dupont</nom>
Pierre
<numero type="tel fixe"
>04946986980</numero>
</contact>
</exportcontact>
a partir de ce fichier j'arrive a le parser en utilisant ce code php :
function ouverture ($parser, $name, $attrs){echo "$name
"; }
function fermeture ($parser, $name){echo "$name
";}
function texte ($parser, $data_text){ echo "$data_text
";}
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 14 juin 2005 à 15:32
Hello,
puisque tu arrives a le parser, tu arrives donc a afficher les donnees
? Donc quel est le probleme pour les inserer dans ta base ? Visiblement
la structure est fixe : dans contact, tu as 3 elements. Bah tu inseres
tous les 3 elements ? (apres contact lol)
malalam
Messages postés10839Date d'inscriptionlundi 24 février 2003StatutMembreDernière intervention 2 mars 201025 14 juin 2005 à 18:14
Ouais, ben c'est normal lol. Ce sera un peu plus complique... ;-)
Le foreach () etait un exemple, il faudra sans doute parcourir le tableau differemment.
Parce que la, tu lis chaque entree de ton tableau...ok. En fait, pour un enregistrement XML; tu as plein d'enregiustrements dans ton tableau.
Chaque boucle de ton foreach va chercher un tableau contenant SOIT civilite, SOIT nom, SOIT prenom etc...
Donc il faut voir ou tu construits ta requete. Si tu la construits dans le foreach, tu auras une requete avec a chaque fois, uniquement 1 champ rempli, tous les autres vides. Normal, puisque a chaque tour de boucle, c'est bien ce que tu as.
Je te conseille de decouper ce tableau en plusieurs tableaux : un contenant toutes les civilites, l'autres tous les noms etc...en remplissant evidemment avec une chaine vide s'il n'y a rien histoire d'avoir le meme nombre d'entrees dans tous les tableaux.
Puis tu construits tes requetes en prenant chaque entree avec le meme index, jusqu'au dernier index.
Un truc dans le genre en tous cas.
Mais utiliser directement ce tableau va etre le bordel...