PHP Forum - Coding Board
November 20, 2017, 01:13:09 *
Willkommen Gast. Bitte einloggen oder registrieren.

Einloggen mit Benutzername, Passwort und Sitzungslänge
News:
 
   Übersicht   Hilfe Suche Einloggen Registrieren  
Seiten: [1]
  Drucken  
Autor Thema: Bild uppen (webbrowser/idhttp etc.)  (Gelesen 141 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
3
Newbie
*
Beiträge: 13


Profil anzeigen E-Mail
« am: März 24, 2009, 03:29:39 »

hey leute, hat wer en codesnippet oder kann mir das wer mal ausführlich erklären wie das mit dem post/get funzt oder einfach mal die webbrowser steuerung?

(anhand des beispiels imagebanana.com)

ich will dort halt automatisiert ein bild uppen und mir den link ausgeben lassen
Gespeichert
3
Newbie
*
Beiträge: 13


Profil anzeigen E-Mail
« Antworten #1 am: März 24, 2009, 10:56:12 »

oO, hier gibts so viele delphianer und keiner kann mir helfen?...

hier mal mein gedanke:

Code:
procedure TForm1.Button1Click(Sender: TObject);
var
 Stream : TIdMultipartFormDataStream;
begin
 Stream := TIdMultipartFormDataStream.Create;
 try
   Stream.AddFile( 'img', 'scr.jpg', 'image/jpeg' );
   IdHTTP1.Post( 'http://www.imagebanana.com', Stream );
   //Memo1.Text := Idhttp1.Get(); <-prob
 finally
   Stream.Free;

 end;
Gespeichert
CoolObsession
Full Member
***
Beiträge: 236


848620
Profil anzeigen E-Mail
« Antworten #2 am: März 25, 2009, 03:09:48 »

Ich denke mal du willst auch den Link ausgegeben bekommen.

So habe ich das gelöst:

am besten ist du benutzt die idhttp und fügst in die uses "StrUtils.pas" ein.

Bei type
TArrayofstring = array of string;

Jetzt zum Upload:

Code:
var
s:string;
after:tarrayofstring;
stream: TIdMultiPartFormDataStream;
begin


s:=('http://www.imagebanana.com/');

stream := TIdMultiPartFormDataStream.Create;

Stream.AddFormField('send','Hochladen!');
Stream.AddFile('img','23.jpg', 'multipart/form-data');

s:=IdHTTP1.Post(s,Stream);
memo1.text:=s;
FindInString (memo1.text,'[img=','][/url]&quot;',true,after);
edit1.text:=after[0];
end;
Damit lädst du das Bild hoch die letzten 3 Zeilen sind zum suchen des Links.

Zum Suchen des Links:

Code:
function FindInString(Text, SearchFrom, SearchTo: string; FirstOnly: Boolean; var Return: TArrayOfString): Boolean;
var
  i: Integer;
  FoundString: string;
begin
  Result := False;
  SetLength(Return, 0);
  i := Pos(SearchFrom, Text);
  while i > 0 do
  begin
    Result := True;
    i := i + Length(SearchFrom);
    FoundString := Copy(Text, i, PosEx(SearchTo, Text, i) - i);
    SetLength(Return, Length(Return) + 1);
    Return[High(Return)] := FoundString;
    Delete(Text, 1, i);
    i := Pos(SearchFrom, Text);
    if FirstOnly then
      Break;
  end;
end;

Das ganze sollte bei Imagebanana funnktionieren.


Wenn du das in einen Thread einbauen kannst, dann wäre ich auch über eine Source erfreut =)
« Letzte Änderung: März 25, 2009, 03:19:02 von CoolObsession » Gespeichert

[B] RS, Freundin, Altpapier, Datenbanken
[S] Nichts
3
Newbie
*
Beiträge: 13


Profil anzeigen E-Mail
« Antworten #3 am: März 25, 2009, 11:38:11 »

IdMultipartFormData.pas funzt leider nicht unter codegear delphi 2009 Traurig
Gespeichert
CoolObsession
Full Member
***
Beiträge: 236


848620
Profil anzeigen E-Mail
« Antworten #4 am: März 26, 2009, 07:16:08 »

dann lade dir 2007
Gespeichert

[B] RS, Freundin, Altpapier, Datenbanken
[S] Nichts
Seiten: [1]
  Drucken  
 
Gehe zu:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | New Look by Nolt Prüfe XHTML 1.0 Prüfe CSS