Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi URL veraendern? (https://www.delphipraxis.net/96627-url-veraendern.html)

o0o 27. Jul 2007 19:39


URL veraendern?
 
hi leutz, ich bin wieder an einem punkt angekommen wo ich nich weiter weiss und auch die sufu hier nix sinnvolles ausspuckt da ich nichtmal weiss unter was ich eigendlich suchen muss._.

also ich habe in der form 2 memo`s und einen button.
in dem ersten memo steht zb sowas:

Zitat:

hallo22
hallo33
hallo44
...
und mit dem button lese will ich eine xml ausm web auslesen und ein teil davon soll dann als ergebniss im 2ten memo stehen.

der button:

procedure TForm1.Button1Click(Sender: TObject);
begin
XMLDocument1.FileName:=('http://url.com/datei.php?text=*hier soll text hin*');
XMLDocument1.Active:=true;
Memo1.Lines.Add(XMLDocument1.DocumentElement.Child Nodes['result'].Text);
XMLDocument1.Active:=false;
end;

also obn wo ich:
*hier soll text hin*
stehen habe soll eine zeile aus dem ersten memo eingefuegt werden dass das am schluss so ist:

http://url.com/datei.php?text=hallo22

da ich eine ganze liste habe im ersten memo soll das ganze memo zeilenweise ausgelesn werden und dann hinter die url geklemmt werden

http://url.com/datei.php?text=hallo22
http://url.com/datei.php?text=hallo33
http://url.com/datei.php?text=hallo44
...

also es sollhald dann das ergebniss danach noch ausgegebn werden im 2ten memo^^

hmm,...ich koennte mir gut vorstellen dass mein text schwer kompliziert ist aber ich weiss grad nich wie ichs erklaeren soll:)

hoffe ihr koennt mir ein wenig helfen :mrgreen:

da o0o

Phoenix 27. Jul 2007 20:33

Re: URL veraendern?
 
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  XMLDocument1.FileName:=('http://url.com/datei.php?text=' + memo1.Text);
  XMLDocument1.Active:=true;
  Memo1.Lines.Add(XMLDocument1.DocumentElement.ChildNodes['result'].Text);
  XMLDocument1.Active:=false;
end;
Was ist daran jetzt so schwer? :gruebel:

Cyberbob 27. Jul 2007 20:55

Re: URL veraendern?
 
Ich hab es so verstanden!

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
   i : Integer;
begin
  for i := 0 to Memo1.Lines.Count-1 do
  begin
    XMLDocument1.FileName:=('http://url.com/datei.php?text=' + memo1.Lines.Strings[i]);
    XMLDocument1.Active:=true;
    Memo1.Lines.Add(XMLDocument1.DocumentElement.ChildNodes['result'].Text);
    XMLDocument1.Active:=false;
  end;
end;

o0o 28. Jul 2007 04:22

Re: URL veraendern?
 
oehm thx Cyberbob is vollkommen richtig :cyclops:

eine kleines problem haette ich da noch:

im xml-dokument gibt es ausser dem objekt "result" davor noch "status"
fuer "status" gibt es nur den inhalt success oder not found

ich versuch schon wie wild ne if-schleife hinzubekommen dass wenn der status nicht "success" ist dass dann im memo "nicht gefunden" oder so angegebn wird nur ich bekomms einfach nicht gebacken :wall: :wall: :wall:


btw wenn alle texte aufgerufen wurden, kann man dann die aktion beenden oder so? weil wenn alle durchgelaufen sind kommt am schluss ne fehlermeldung^^

thx fuer eure hilfe leutz :mrgreen:

Matze 28. Jul 2007 07:02

Re: URL veraendern?
 
Moin

Zitat:

Zitat von o0o
ich versuch schon wie wild ne if-schleife hinzubekommen [...]

Nur als Anmerkung: Eine If-Schleife gibt es nicht, es wird in keinem Fall etwas wiederholt, daher ist das keine Schleife. If-Verzweigung oder If-Anweisung wäre beispielsweise richtig.

Aber "if" zu nutzen ist schonmal nicht schlecht. Du könntest es so lösen:

Delphi-Quellcode:
if XMLDocument1.DocumentElement.ChildNodes['status'].Text <> 'success' then
  Memo1.Lines.Add('nicht gefunden');
Zitat:

Zitat von o0o
btw wenn alle texte aufgerufen wurden, kann man dann die aktion beenden oder so? weil wenn alle durchgelaufen sind kommt am schluss ne fehlermeldung^^

Ich hätte auf ein "ListenIndex überschreitet das Maximum" getippt, doch die Schleife schaut gut aus. Welche Meldung kommt denn?

Grüße

o0o 28. Jul 2007 08:23

Re: URL veraendern?
 
also beim compilieren kommt kein fehler,...nur wenn ich die xml-objekte anzeigen lasse im memo(dauert etwas...ca 1sec fuer ein wert^^ da mein inet lahm is) und wenn alle aufgelisted wurden bricht das programm ab und kommt folgende debugger exception notification:

project sh.exe raised exception class EDOMParseError with message 'Invalid at the toplevel of the document'

line: 1
Hash not valid.'. Process stopped. Use step or run to continue

habe leider nich all zu viel ahnung von dem ganzen da ich erst vor 3wochen mit delphi angefangen habe :oops: :oops: :oops:

Matze 28. Jul 2007 10:50

Re: URL veraendern?
 
Hm. Ich kenne mich mit XML nicht sonderlich gut aus, aber gibt es so viele Notes wie Zeilen im Memo?
Evtl. wäre es besser die Schleife von 0 bis Node.Count - 1 (oder was es da gibt) laufen zu lassen.

o0o 28. Jul 2007 11:16

Re: URL veraendern?
 
im memo hab ich beim testen nur 4zeilen drinne gehabt^^
es sollte aber auch nix ausmachen wenns bis auf 200kommen kann....bzw so um die 200 sollte es verkraften koennen damit es im endeffekt funzt :roll:

Zitat:

Evtl. wäre es besser die Schleife von 0 bis Node.Count - 1 (oder was es da gibt) laufen zu lassen
naja werde mal schauen ob ich das hinbekomme^^...wiegesagt ich fange grad mit delphi an...


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:17 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz