Aller au contenu

sanddy

Actif
  • Compteur de contenus

    40
  • Inscrit(e) le

  • Dernière visite

Tout ce qui a été posté par sanddy

  1. Je crois avoir réussi en faisant : foreach($XML_files as $file) { $racine = simplexml_load_file($file); $etude = $racine->Crpcen; foreach($racine->Crpcen as $crpcen) { foreach ($crpcen->Clef as $bi) { echo $crpcen['id']; echo " ".$bi['id']; echo "<br /><br />"; } } } Merci pour votre aide encore et bonne journée
  2. Bonjour, Merci pour votre réponse, ça marche bien sauf que j'avais oublié de préciser que dans chaque balise crpcen, il y avait d'autres balises. Ex : <Crpcen id="12345" codeNs="xdfsdghrer"> <Clef id="l800044336" > </Clef> <Clef id="3432434" > </Clef> <Clef id="l45435345" > </Clef> </Crpcen> <Crpcen id="43243" codeNs="xdfsdghrer"> <Clef id="3434334" > </Clef> </Crpcen> <Crpcen id="11111" codeNs="xdfsdghrer"> <Clef id="45435544444" > </Clef> <Clef id="323" > </Clef> </Crpcen> Comment faire pour récupérer dans chaque fichier xml, le crpcen et tous ses clef id. Ici, je voudrai retrouver... 12345 - l800044336 3432434 l45435345 43243 - 3434334 11111 - 45435544444 323 J'ai fait de nombreux tests sans reussir car je ne m'y connais pas bien en tableaux. Pouvez-vous m'aider svp ? J'ai fait ceci dernièrement : foreach($XML_files as $file) { $racine = simplexml_load_file($file); $etude = $racine->Crpcen; foreach($etude as $crp) { $crpcen = $crp['id']; $liste_biens = $etude->Clef; foreach($liste_biens as $bien) { $bie = $bien['id']; echo $crpcen." "; echo $bie."<br /><br />"; } } } et cela m'affiche tous le temps les meme clef id, celui du premier crpcen !! Soit ceci : 12345 - l800044336 3432434 l45435345 43243 - l800044336 3432434 l45435345 11111 - l800044336 3432434 l45435345 11111 - l800044336 3432434 l45435345 11111 - l800044336 3432434 l45435345 11111 - l800044336 3432434 l45435345 11111 - l800044336 3432434 l45435345 11111 - l800044336 3432434 l45435345 11111 - l800044336 3432434 l45435345 11111 - l800044336 3432434 l45435345 11111 - l800044336 3432434 l45435345 ... merci d'avance pour votre aide
  3. Bonjour, J'ai un gros problème et je n'arrive pas à le résoudre. Je n'arrive pas à afficher plusieurs numéros qui sont entre des balises dans un fichier xml. Cela m'affiche seulement le premier numéro. Un exemple : mon fichier xml a ceci : <Crpcen id="12345" codeNs="xdfsdghrer"> </Crpcen> <Crpcen id="43243" codeNs="xdfsdghrer"> </Crpcen> <Crpcen id="11111" codeNs="xdfsdghrer"> </Crpcen> Et j'aimerai pouvoir afficher : 12345, 43243, et 11111 seulement, ça m'affiche que le premier id de la premiere balise 12345... Mon code : foreach($XML_files as $file) { $racine = simplexml_load_file($file); $etude = $racine->Crpcen; $groupement[]=$etude["id"]; //echo $etude["id"]; foreach($groupement as $grpt) { echo $grpt; } } $grpt ne m'affiche que 12345... Comment faire, on m'a parlé de tableaux multidimensionnel, mais je ne vois pas comment faire, avez-vous une idée svp ??
  4. Super !!! Merci, ça fonctionne ainsi $tab = array(); while ($a=mysql_fetch_assoc($query2)) { $possep=strpos($a['photo'],"_"); $pospt=strpos($a['photo'],"."); $lngnum=$pospt-$possep-1; $nbpht=substr($a['photo'],$possep+1,$lngnum); $faire = $nbpht.", "; $tab[$nbpht] = $faire; //$tab.= ", ".$nbpht; //rsort($tab); } if (is_array($tab)) { ksort($tab); foreach ($tab as $value) { echo $value; //$qqq .= "photo=\"".$id."_".$value.".jpg\" OR "; } } Bonne journée !
  5. Bonjour, J'ai un gros problème... J'ai passé toute la journée dessus, je pense arriver vers la fin mais j'ai besoin de vous. Je vous explique le problème : Nous avons dans une table "photos" un champ "photo" en varchar qu'on ne peut pas changer... car le site a toujours fonctionné avec et plusieurs applications utilisent ce champ. J'essaie de classer ces photos mais ce que je fais me classe toujours mal les chiffres. Il est de la forme : photoid_numero.jpg Un exemple : Je fais un ORDER BY monchamp ASC, cela m'affiche : 8_1.jpg 8_10.jpg 8_11.jpg 8_12.jpg 8_2.jpg 8_3.jpg 8_4.jpg 8_5.jpg 8_6.jpg 8_7.jpg 8_8.jpg 8_9.jpg Il me met toujours le 10, 11, 12... entre le 1 et le 2 !! Au lieu de : 8_1.jpg 8_2.jpg 8_3.jpg 8_4.jpg 8_5.jpg 8_6.jpg 8_7.jpg 8_8.jpg 8_9.jpg 8_10.jpg 8_11.jpg 8_12.jpg Savez-vous comment faire SVP ??? J'avais pensé à un tableau mais en faisant la fonction sort, cela me sort toujours dans le même ordre... Je vous donne mon code : $query = "SELECT * FROM photos WHERE idphoto='$id' ORDER BY idd DESC"; $query2 = mysql_query($query) or die(mysql_error()); $tab = array(); while ($a=mysql_fetch_assoc($query2)) { $possep=strpos($a['photo'],"_"); $pospt=strpos($a['photo'],"."); $lngnum=$pospt-$possep-1; $nbpht=substr($a['photo'],$possep+1,$lngnum); $faire = $nbpht.", "; $tab[] = $faire; //$tab.= ", ".$nbpht; //rsort($tab); } if (is_array($tab)) { sort($tab); foreach ($tab as $value) { echo $value; } } Pouvez-vous m'aider SVP ??? Pas facile de se faire comprendre, j'espère que vous aurez compris Merci d'avance.
  6. J'ai reussi Merci à vous. J'ai fait : <i id='test' style="display:none">Prix actes en main : <span id="prixactes">707879</span> €</i> et un : onkeyup="if(parseFloat(this.value) > 0){GetId('test').style.display='block';GetId('prixactes').innerHTML=parseFloat(this.value) + parseFloat(GetId('prixvente').value);}else{GetId('test').style.display='none';}" sur ma méthode
  7. Du coup, j'ai fait : <script language="Javascript" type="text/javascript"> function calcul(montant) { var total = parseFloat(GetId('prixactes').value) + parseFloat(GetId('prixvente').value); if (total > 0) return total } </script> echo "<b>Frais d'actes :</b><br /><input".$readonly." type=\"text\" size=\"12\" name=\"fraisactes\" id=\"fraisactes\" value=\"".$bien["fraisactes"]."\" onkeyup=\"calcul(montant)\" /> €\n"; echo ": <span id=\"prixactes\">".($bien["prixnet"] + $bien["emoluments"] + $bien["fraisactes"])."</span> €</i>"; Le total marche mais lorsqu'on saisit un montant dans fraisactes, ça ne fonctionne pas. Je dois avoir quelques fautes dans mon code vers le onkeyup Merci d'avance.
  8. Si, GetId est une fonction javascript, la voici : function GetId(id) { return document.getElementById(id); }
  9. LOL, merci Je suis dans le même cas... en javascript, hum, pas du tout mon domaine... donc s'il y a une aimable personne sur ce forum qui pourrait m'aider en javascript, ça me serait vraiment utile... Merci d'avance...
  10. Merci Dan Mais malheureusement, ça ne marche pas car je veux que cela affiche "Prix actes en main" si le champ de saisie est modifié (différent de zéro) sans automatiquement valider le formulaire. Il faut que cela l'affiche au keyUp. Et donc, si je mets if($bien["fraisactes"] > 0) { echo... } vu que $bien["fraisactes"] n'a pas changé dans la base de données (car on n'a pas cliqué sur "valider le formulaire"), cela n'affiche pas du tout "Prix actes en main". Cela ne l'affichera que si je valide le formulaire, or, je veux que ce soit au keyUp. Pas facile de se faire comprendre...
  11. Bonjour, J'ai un champ de saisie qui me permet d'afficher des frais d'actes puis une phrase me calculant le prix actes en main. J'aimerais afficher "Prix actes en main" que si ce dernier champ de saisie est différent de 0, comment faire svp ??? Actuellement, j'ai : echo "<b>Frais d'actes :</b><br /><input".$readonly." type=\"text\" size=\"12\" name=\"fraisactes\" id=\"fraisactes\" value=\"".$bien["fraisactes"]."\" onkeyup=\"GetId('prixactes').innerHTML=parseFloat(this.value) + parseFloat(GetId('prixvente').value);\" /> €\n"; echo "<i>Prix actes en main : <span id=\"prixactes\">".($bien["prixnet"] + $bien["emoluments"] + $bien["fraisactes"])."</span> €</i>"; et dès qu'on change les frais d'actes, cela calcule le prix net + emolument + frais d'actes et change le total de la phrase. Donc comment faire pour ne pas afficher cette phrase si le champ de saisie "Frais d'actes" reste à 0.00 ? Merci d'avance.
  12. Bonjour, j'ai rectifié ma question car le code n'affichait pas ce que je voulais... Sinon, pour le distinct, je ne l'ai pas utilisé car dans la base de données, les villes affichées ne sont pas les mêmes "Challans" et "Challans Cédex" ne sera pas considéré comme semblable... Hum, désolé, je l'explique dans le premir sujet... je crois que ça doit pas etre evident a comprendre
  13. Bonjour, J'ai des villes dans ma base de données qui contiennent leur nom et des fois, il y a " Cédex" ensuite dans le même champ. J'aimerais pouvoir enlever ce Cédex (pas dans la base de données mais dans mon application). J'ai donc réussi à le faire enlever avec la fonction str_replace mais maintenant, j'ai deux fois la ville qui s'affiche avec mon application et pourtant, j'ai mis "GROUP BY mailingcity"... Je ne vois pas quoi faire, pouvez-vous m'aider svp ??? Au départ, j'avais : while ($donnees7 = mysql_fetch_assoc($resultat)) { echo "<a href=\"".$deppage."page_annu2.php?dep=".$dep."&ville=".$donnees7['mailingcity']."\">"; echo $donnees7['mailingcity']; echo "</a><br />"; } Cela m'affiche toutes les villes avec les cédex... Pour virer les cédex, j'ai fait : $mailing_city=str_replace(" CEDEX", "", $donnees7['mailingcity']); ainsi, les cédex sont partis... mais plusieurs villes reviennent... vu que dans ma base de données, dans le champs mailingcity, j'ai par exemple la ville "challans" et la ville "challans cédex"... en faisant le str_replace, j'ai challans dans une ligne et encore challans dans l'autre... Puis en faisant : while ($donnees7 = mysql_fetch_assoc($resultat)) { $mailing_city=str_replace(" CEDEX", "", $donnees7['mailingcity']); if ($mailing_city== $donnees7['mailingcity']) { echo "<a href=\"".$deppage."page_annu2.php?dep=".$dep."&ville=".$donnees7['mailingcity']."\">"; echo $donnees7['mailingcity']; echo "</a><br />"; } } Challans ne s'affiche qu'une fois mais la ville Chatonnay disparait... car dans ma base de données, je n'ai que le champ "Chantonnay Cédex"... argh...
  14. Sur le site que j'ai trouvé, ils n'auraient pas le droit alors... OK !! Merci pour ta réponse... C'est bien ce que je pensais... Mais encore ici, ils n'obligent pas les visiteurs à cliquer dessus, on peut passer la pub... mais bon...
  15. Bonjour, Ai-je le droit de mettre pour chaque page de mes sites une page adsense où les visiteurs pourront cliquer sur la pub ou sinon, continuer (passer la pub) et voir la bonne rubrique... ? Si je ne les oblige pas, c'est bon non ?? Ils pourront soit cliquer sur la pub, soit aller a la bonne rubrique... en cliquant sur "Passer la pub"... Voici un exemple : http://www.sos-dedie.com/index.php/2005/02...s-votre-serveur Ont-ils le droit ?
  16. J'ai fait autrement ensuite lol mais c'est vrai que je manque de logique
  17. Bon, je pense avoir résolu mon problème... Merci pour vos réponses.
  18. J'ai fait : <?PHP echo "<center><h1>Test</h1></center>"; $liendb = mysql_connect("localhost", "root", ""); mysql_select_db("mabase"); $sql = "SELECT * FROM membres ORDER BY numero"; $resultat = mysql_query($sql) or die(mysql_error()); $n = mysql_num_rows($resultat); ?> <br><table width="93%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td height="210"> <p align="justify"><font color="#000000"><b><font face="Verdana, Arial" size="2">Bienvenue sur le site<br><br> </font></b> </p></td></tr></table><br> <? $i=0; /* initialisation de la variable de boucle */ while ($donnees = mysql_fetch_array($resultat) ) { $numero = mysql_result($resultat, $i, "numero"); $numero2 = mysql_result($resultat, $i+1, "numero"); $nom =mysql_result($resultat, $i, "nom"); $nom2 =mysql_result($resultat, $i+1, "nom"); echo "<table><tr>"; echo "<font size=\"1\">"; echo "<td align=\"center\">"; echo $donnees['numero']; echo "</td>"; echo "<td>"; if ($numero!=$donnees['numero'] && $numero!= "") { echo ucfirst($nom).","; } else { echo ucfirst($nom)." & ".ucfirst($nom2); } echo "</td>"; echo "</font>"; echo "</tr></table>"; $i++; } echo "</body></html>"; ?> Et ça m'affiche : 1Martin & Dupont 2Dupont, 2Maurice & Marcellin 2Marcellin & Maret 3Maret, 4Dupont, Hors, je voudrais qu'une fois que Dupont est affiché une fois, qu'il ne se réaffiche pas et que lorsqu'il y en a plusieurs qui ont le même numéro, le nom du membre soit "nom1, nom2, nom3 & nom4" ou simplement "nom" s'il y en a qu'un ou "nom1 & nom2" s'il y en a 2... Il me manque quelque chose que je n'arrive pas a régler... car je voudrais afficher : "1", "martin & dupont", "2", "maurice, marcellin & maret", "3", "M. dupont", "4", "M. popeye" Merci déjà pour vos réponses.
  19. Punaise, je n'arrive toujours pas... Je sais que ce n'est vraiment pas terrible comme proposition mais si vous me faites réussir à régler ce problème, webmasters, je peux mettre votre lien sur mon site http://www.tesannonces.com PR 5 sur la page d'accueil pendant un mois de façon visible... Je n'arrive pas à savoir comment faire afficher le numéro en cours et le comparer avec le numéro suivant... comme je l'explique ci-dessus...
  20. Je sais que c'est tout simple mais je n'arrive pas à stocker le 1er numéro. Comment on le stocke ?? C'est ça ? $numero = mysql_result($TableRep, $i, "numero"); et ensuite, pour le comparer, je dois faire un "if" dans la boucle while ? if ($numero==$numero+1) { echo "...les noms"; } else { echo "...le nom"; }
  21. Alors, j'ai fais ça mais ça n'affiche pas exactement ce que je veux... <?PHP echo "<center><h1>Test</h1></center>"; $serveur="localhost"; $utilisateur="root"; $motdepasse=""; $database="mabase"; _AT_mysql_connect($serveur,$utilisateur,$motdepasse) or die("<CENTER><A style='color:white;background-color:red'> Désolé, problème de serveur </BODY></HTML>"); $TableRep=mysql($database,"SELECT * FROM membres ORDER BY numero") or die("<br><CENTER><A style='color:white;background-color:red'> Désolé, la table est inaccessible </BODY></HTML>"); $NombreEntrees=mysql_num_rows($TableRep); ?> <br><table width="93%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td height="210"> <p align="justify"><font color="#000000"><b><font face="Verdana, Arial" size="2">Bienvenue sur le site<br><br> </font></b> </p></td></tr></table><br> <? $i=0; /* initialisation de la variable de boucle */ while ($i < $NombreEntrees-1) /* faire tant que la fin de la table n'est pas atteinte */ { $numero = mysql_result($TableRep, $i, "numero"); $numero2 = mysql_result($TableRep, $i+1, "numero"); $nom =mysql_result($TableRep, $i, "nom"); $nom2 =mysql_result($TableRep, $i+1, "nom"); if ($numero==$numero2) { echo "<table><tr>"; echo "<font size=\"1\">"; echo "<td align=\"center\">"; echo "\"$numero\","; echo "</td>"; echo "<td>"; echo "\"$nom & $nom2\","; echo "</td>"; echo "</font>"; echo "</tr></table>"; } else { echo "<table><tr>"; echo "<font size=\"1\">"; echo "<td align=\"center\">"; echo "\"$numero\","; echo "</td>"; echo "<td>"; echo "\"$nom\","; echo "</td>"; echo "</font>"; echo "</tr></table>"; } $i++; } echo "</body></html>"; ?> ça m'affiche : "1","martin & dupont","1","dupont","2","maurice & marcellin","2","marcellin & maret","2","maret","3","dupont", au lieu de : "1", "martin & dupont", "2", "maurice, marcellin & maret", "3", "M. dupont", "4", "M. popeye", Y a quelque chose qui ne va pas...
  22. Je réexplique mieux : Je vous explique mon problème, j'ai une table membres (je la simplifie pour que vous compreniez mieux) avec un numero et un nom. Voici ma table : CREATE TABLE membres ( numero int(11) NOT NULL, nom varchar(50) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=latin1; # # Contenu de la table `membres` # INSERT INTO membres VALUES (1, 'martin'); INSERT INTO membres VALUES (2, 'maurice'); INSERT INTO membres VALUES (3, 'dupond'); INSERT INTO membres VALUES (1, 'dupont'); INSERT INTO membres VALUES (2, 'marcellin'); INSERT INTO membres VALUES (2, 'maret'); INSERT INTO membres VALUES (4, 'popeye'); Je souhaiterais pouvoir faire un affichage de ces enregistrements mais que lorsque le même numéro revient, les noms puissent se concaténer. Exemple ici : 1 donnerait martin & dupont 2 donnerait maurice, marcellin & maret 3 donnerait M. dupond 4 donnerait M. popeye Comment faire ? J'arrive à faire afficher les numéros et noms, voici le fichier : <?PHP echo "<center><h1>Test</h1></center>"; $serveur="localhost"; $utilisateur="root"; $motdepasse=""; $database="mabase"; _AT_mysql_connect($serveur,$utilisateur,$motdepasse) or die("<CENTER><A style='color:white;background-color:red'> Désolé, problème de serveur </BODY></HTML>"); $TableRep=mysql($database,"SELECT * FROM membres ORDER BY numero") or die("<br><CENTER><A style='color:white;background-color:red'> Désolé, la table est inaccessible </BODY></HTML>"); $NombreEntrees=mysql_num_rows($TableRep); ?> <br><table width="93%" border="0" cellspacing="0" cellpadding="0" align="center"><tr><td height="210"> <p align="justify"><font color="#000000"><b><font face="Verdana, Arial" size="2">Bienvenue sur le site<br><br> </font></b> </p></td></tr></table><br> <? $i=0; /* initialisation de la variable de boucle */ while ($i < $NombreEntrees) /* faire tant que la fin de la table n'est pas atteinte */ { $numero = mysql_result($TableRep, $i, "numero"); $nom =mysql_result($TableRep, $i, "nom"); echo "<table><tr>"; echo "<font size=\"1\">"; echo "<td align=\"center\">"; echo "\"$numero\","; echo "</td>"; echo "<td>"; echo "\"$nom\","; echo "</td>"; echo "</font>"; echo "</tr></table>"; $i++; } echo "</body></html>"; ?> Maintenant, comment faire pour vouloir faire afficher ce que je veux ??? Actuellement, il y a : "1", "martin", "1", "dupont", "2", "maurice", "2", "marcellin", "2", "maret", "3", "dupont", "4", "popeye", Et je voudrais : "1", "martin & dupont", "2", "maurice, marcellin & maret", "3", "M. dupont", "4", "M. popeye", Je ne vois pas où et comment faire pour afficher le "&" avec le dernier membre du même numéro. Et s'ils sont plusieurs, mettre des virgules comme au numéro 3. Et si le membre est le seul à avoir ce numéro, j'aimerais afficher "M. " devant. SVP, j'ai vraiment besoin d'une aide. Merci d'avance. Cordialement, Sandy
  23. Merci mais comment faire pour lorsque je trouve le même numéro insérer dans une autre table ??? Quelle est la condition, if ?? Je n'arrive pas à traduire "si plusieurs numéros sont égales alors les insérer dans l'autre table"...
×
×
  • Créer...