begin process at 2012 05 27 21:08:50
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ASP & ASP.NET

 > 

Archives ASP & ASP.NET

 > 

Débutants

 > 

Débutante paumée, help!!!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Débutante paumée, help!!!

samedi 11 décembre 2004 à 13:30:11 | Débutante paumée, help!!!

thanae19

Membre Club
Bonjours a tous,

Voila ma question est peut etre simple mais je m'y pert. Je débute en Xml (ai plus l'habitude des db SQL ouvert par ADO) et j'arrive pas a savoir comment faire, je m'explique:

Je veux mettre à jour un fichier Xml que se trouve sur un serveur distant et ce fichier doit etre mis à jour de bas en haut, cad le nouveau record doit etre toujour mis en premier et non à la fin.

Donc j'ai ma page avec le form GET="update.asp" qui cree un nouveau fichier écrasé à chaque fois sur serveur local dont j'ajoute le nouveau record et ensuite je voudrais ajouter le reste venant de l'ancien fichier du serveur distant. Ensuite je retransfer le nouveau se trouvant sur le serveur local sur le serveur distant.

Je sais, peut etre je me complique, j'ai chercher sur tous les post mais n'ai pas trouver mieux, et du coup je m'y pert.
voici donc mon code:

<% @ Import Namespaces="Sytem.Data"%>
<% @ Import Namespaces="System.Data.OleDb"%>
<script language="vb" runat="server">
Sub Page_Load(Sender as Object, E as EventArgs)
Dim ObjDataSet as new DataSet()
Dim ObjDataSet2 as new DataSet()

ObjDataSet2.ReadXml(server.MapPath("txtintro.xml"))

ObjDataSet.setProperty "ServerHTTPRequest", true
ObjDataSet.async = false
ObjDataSet.ReadXml("http://users.skynet.be/fa539444/txtintro.xml"))

Dim ObjTable as DataTable
Dim ObjNewRow as DataRow

ObjTable = ObjDataSet2.Table("txtintro.xml")
ObjNewRow = ObjTable.NewRow()
ObjNewRow.Item("titre") = <%Request.Form("titre")%>
ObjNewRow.Item("date") = <%Request.Form("date")%>
ObjNewRow.Item("texte") = <%Request.Form("texte")%>
ObjTable.Rows.Add(ObjNewRow)

ObjTable = ObjDataSet2.Table("txtintro.xml")
ObjNewRow = ObjTable.NewRow()
ObjNewRow.Item("titre") = <%Request.Form("titre")%>
ObjNewRow.Item("date") = <%Request.Form("date")%>
ObjNewRow.Item("texte") = <%Request.Form("texte")%>
ObjTable.Rows.Add(ObjNewRow)

<!-- Ici je bloque voit pas comment transferer tout du fichier 1 au 2eme -->

ObjDataSet2.WriteXml(Server.MapPath("txtintro.xml"))

End Sub
</script>


Après j'ai trouver un script que j'ai adapter pour transferer sur le serveur le nouveau fichier:

Sub Transfert_ftp()
Client.Hostname = "users.skynet.be"
Client.Username = "xxxxx"
Client.Password = "xxxxxx"

Client.Connect()

If Not Client.IsConnected Then
MsgBox("Error")
Else
If Client.UploadFile("d:\web\txtintro.xml", "txtintro.xml") Then
MsgBox("OK")
Else
MsgBox("Error")
End If
End If
End sub
</script>

Voila, si qqun pouvait m'aider je le remercie d'avance.



Thanae19
samedi 11 décembre 2004 à 22:16:59 | Re : Débutante paumée, help!!!

Netlink

Membre Club
Bonjour,

Vous pouvez essayer avec ce bout de code ;-) :


Dim xmlDocument As XmlDocument = New XmlDocument()
xmlDocument.Load(Server.MapPath("txtintro.xml"))

' Crée un nouvel élement <noeud1> et l'ajoute à la racine
Dim noeudParent As XmlElement = xmlDocument.CreateElement("intro")

' Définit le nom et la valeur de l'attribut
noeudParent.SetAttribute("ID", txtID.Text)

xmlDocument.DocumentElement.PrependChild(noeudParent)

' Crée les noeuds requis
Dim noeudTitre As XmlElement = xmlDocument.CreateElement("titre")
Dim noeudAuteur As XmlElement = xmlDocument.CreateElement("Auteur")

Dim titreContenuText As XmlText = xmlDocument.CreateTextNode(txtTitre.Text)
Dim auteurContenuText As XmlText = xmlDocument.CreateTextNode(txtAuteur.Text)

' Affecte les noeuds au noeudParent sans la valeur
noeudParent.AppendChild(noeudTitre)
noeudParent.AppendChild(noeudAuteur)

' La valeur des noeuds
noeudTitre.AppendChild(titreContenuText)
noeudAuteur.AppendChild(auteurContenuText)

' On sauvegarde dans le fichier XML
Dim listeNoeuds As XmlNodeList = xmlDocument.SelectNodes("/introductions/intro[@ID=" & txtID.Text & "]")

xmlDocument.Save(Server.MapPath("txtintro.xml"))
lblEtat.Text = "Données enregistrées"


Donc dans la WebForm, nous avons :
- 1 TextBox appelé txtID
- 1 TextBox appelé txtTitre
- 1 TextBox appelé txtAuteur
- 1 Label appelé lblEtat
- 1 Button appelé btnValide qui permet d'exécuter ce code.

Supposons que nous avons déjà un enregistrement dans la base, et nous le remplissons avec ces valeurs respectives :
- 2
- Test n°2
- Mathieu

On obtient alors le fichier xml suivant :


<?xml version="1.0" encoding="utf-8"?>
<introductions>
<intro ID="2">
<titre>Test n°2</titre>
<Auteur>Mathieu</Auteur>
</intro>
<noeud1 ID="1">
<titre>Test</titre>
<noeudAuteur>Mathieu</noeudAuteur>
</noeud1>
</introductions>


Voilà, donc il vous reste à utiliser ce code et à le personnaliser ;-)

Bonne continuation !
@ bientôt, Mathieu aka Netlink
samedi 11 décembre 2004 à 22:19:27 | Re : Débutante paumée, help!!!

Netlink

Membre Club
Oups petite correction...

Dans le code XML, l'enregistrement n°1 est comme ceci :


<intro ID="1">
<titre>Test</titre>
<Auteur>Mathieu</Auteur>
</intro>


Je l'ai modifié pendant la rédaction de ma réponse, et je n'ai pas pensé à rectifier...

@ bientôt, Mathieu aka Netlink
dimanche 12 décembre 2004 à 12:17:49 | Re : Débutante paumée, help!!!

thanae19

Membre Club
Merci pour le code, c'est mieux que ce que j'avais fait, mais j'ai un souci, il me fait une erreur de :

Expected end of statement
updatexml.asp, line 10, column 16
Dim xmlDocument As XmlDocument = New XmlDocument()

Et je ne vois pas le prob, j'ai esayer avec

Dim xmlDocument As New XmlDocument()

toujours parreil

alors je vois pas...



Thanae19
dimanche 12 décembre 2004 à 13:07:45 | Re : Débutante paumée, help!!!

Netlink

Membre Club
Avez-vous importé System.XML ?

Si non, il faut rajouter

Imports System.Xml


En haut de votre classe VB si vous êtes en code behind (code VB séparé de la page ASPX.

Si votre code VB est intégré dans votre page ASPX il faut rajouter

<%@ Import Namespace="System.Xml" %>


@ bientôt, Mathieu aka Netlink
dimanche 12 décembre 2004 à 19:54:47 | Re : Débutante paumée, help!!!

thanae19

Membre Club
Non, mais avec il m'indique:

Error Type:
Active Server Pages, ASP 0221 (0x80004005)
The specified 'Import Namespace="System.xml" ' option is unknown or invalid.

j'ai essayer avec d'autre comme "System.Data" mais pareil, je commence a vraiment décroché là :-(!


Thanae19
dimanche 12 décembre 2004 à 23:48:41 | Re : Débutante paumée, help!!!

Netlink

Membre Club
Pourquoi appelez-vous vos pages 'page.asp' par exemple ? Car le code que je vous ai donné, et le code que vous avez indiqué dans votre premier post sont en VB.NET. Or ce n'est utilisable que si le .NET Framework est installé sur le serveur, et donc l'extension de la page doit être .aspx (extension des pages ASP.NET)

Si votre extension est .asp, les pages ne seront pas interprétées par le .NET Framework. Donc il est nécessaire de mettre l'extension .aspx ---> Votre page doit s'appeler : updatexml.aspx ;-)

En principe là ça devrait fonctionner !

@ bientôt, Mathieu
dimanche 12 décembre 2004 à 23:51:05 | Re : Débutante paumée, help!!!

Netlink

Membre Club
Ou sinon peut-être faut-il tout simplement rajouter un "s" à la fin de "Namespace" ?

@ bientôt, Mathieu
mercredi 15 décembre 2004 à 12:06:16 | Re : Débutante paumée, help!!!

thanae19

Membre Club
Ca y est ca fonctionne, j'avais installer .Net Frameworks mais je ne savais pas que le "x" etait important.

Merci beaucoup pour ton aide.



Thanae19


Cette discussion est classée dans : serveur, xml, objtable, objnewrow, txtintro


Répondre à ce message

Sujets en rapport avec ce message

Enregistrer en XML... [ par guizmo123 ] Bonjour tout le monde !Cela fait 4 jours que je fais des recherches sur comment enregistrer un fichier XML sur un serveur distant. Détails -> j'ai fai Probleme de Fash+XML sur PHP sur serveur lol [ par pjfury ] Kikou a tous :)J'ai réalisé un prog sous flash qui utilise un fichier XML distant sur un autre serveur.Quand je fais le test sur mon pc (ctrl+alt+entr [asp][1.1] XML et datagrid [ par SupaLou ] Bonjour tout le monde,Je dispose d'un fichier xml comme ceci:xmlversion</f [XSL]Importer et lire un .xml se trouvant sur un serveur... [ par akaii ] Bonjour, Je dois rendre dynamique cette partie de code Actuellement le fichier pbxglobal.xml est en dur dans mon projet, mais c'est un fichier qui est Parser un fichier XML sur un serveur distant [ par Skyride ] Bonsoir à tousQuelqu'un pourrait t'il me renseigner sur un point particulier...Voila je vous expose mon problème, un fichier de données XML est stocké problemes de modification d'un fichier XML mais sur un serveur distant [ par anis13014 ] Voila j'expose mon probleme je dois pouvoir agir sur deux fichiers xml situé sur un serveur a distant mais sans les telecharger car ces deux fichiers Noob en création de web service [ par adressprov ] Voila j'ai essayé de créer un web service qui fait juste l'adition de deux nombres. Mais lorsque je lance le web service une page m'indique ceci et je Chercher dans une view [ par objectifweb ] Bonjourje vis un problème de fou !On vient de migrer une application ASP + SQl sur un serveur 2000 qui marchait bien vers un serveur avec Windows 2003 bases locales et serveur distant [ par glopglop ] Bonjour, J'ai un soucie concernant un extranet. J'ai un serveur distant qui contient une base de données test. Sur deux sites délocalisés j'accede v XSL :AIDEZ MOI SVP [ par lamiruth ] Bonjour à tous,svp je souhaite transformer un document du XML vers TXT.voici le format de données XML:DER1345340&


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales