AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

php script > delphi

Ein Thema von endeffects · begonnen am 4. Nov 2004 · letzter Beitrag vom 5. Nov 2004
Antwort Antwort
endeffects

Registriert seit: 27. Jun 2004
450 Beiträge
 
#1

php script > delphi

  Alt 4. Nov 2004, 19:44
hallo,

ich muss ein php script in delphi realisieren,
leider hab ich dabei einige probleme,
vielleicht kann mir dabei ja jemand helfen

hier die php funktion
Code:
 function base32_encode_num($num, $aa1) { # encode
         $r = "";
         while ($num > 0) {
                        $r = $r . $aa1[ ($num - floor($num/32)*32) + (32 * rand(0,1)) ] ;
                        $num = floor($num/32);
         }
         return $r;
 }
hier mein delphi versuch

Delphi-Quellcode:
function TForm1.base32_encode_num(num, aa1: integer): integer;
var r: integer;
begin
  r:= 0;
  while num > 0 do
  begin
    r:= r + aa1[(num - floor(num/32)*32) + (32 * random(1))];
    num:= floor(num/32);
  end;
end;
hier gibt es den fehler "array-typ erforderlich",
dies bezieht sich natürlich auf aa1,
ich weiß leider nicht wie ich ein array übergenen kann
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#2

Re: php script > delphi

  Alt 4. Nov 2004, 20:07
Nimm daoch ne Liste, ist imho bequemer.
Das ginge so:function TForm1.base32_encode_num (num: integer; aal: TStrings): integer;
  Mit Zitat antworten Zitat
karisma

Registriert seit: 19. Apr 2004
Ort: Berlin
8 Beiträge
 
Delphi 7 Professional
 
#3

Re: php script > delphi

  Alt 4. Nov 2004, 20:07
Zitat:
function TForm1.base32_encode_num(num integer; aal : array of ???): integer;
So vielleicht?

MFG

Ajo nebenbei... kann es sein, dass deine funktion noch nichts zurück gibt?
(mir fehlt sowas à la result := ... oder base32_encode_num := ... ) (oder klappt das auch mit r?)
Sebastian
Wer Pfehler findet, darf sie behalten.
  Mit Zitat antworten Zitat
Benutzerbild von Ultimator
Ultimator

Registriert seit: 17. Feb 2004
Ort: Coburg
1.860 Beiträge
 
FreePascal / Lazarus
 
#4

Re: php script > delphi

  Alt 4. Nov 2004, 20:12
Du musst (nach dem, was ich erkennen kann, obwohl ich kein PHP kann )
result:=r; schreiben, denn im PHP-Code steht ja
Code:
return $r;
Julian J. Pracht
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#5

Re: php script > delphi

  Alt 5. Nov 2004, 09:47
also erstens solltest du darauf achten, was für's Datentyp es wirklich im PHP ist

$r = "";, das ist doch Eindeutig ein String und kein Integer, ausserdem weist der Punkt $r = $r . irgendwas ebenfalls auf 'ne Stringaddition - Zahlen werden mit dem Plus addiert.

aa1 könnte ja auch locker mal ein String oder ein array sein, woher sollen wir denn jetzt erahnen, was es ist.

Zeig uns also mal besser noch den Rest eines Script's, wo das drin ist.


mögliche Lösunden:
Delphi-Quellcode:
function TForm1.base32_encode_num(num: integer; aa1: String): String;
var r: string;
begin
  r := '';
  while num > 0 do
  begin
    r := r + aa1[(num - floor(num/32)*32) + (32 * random(1))];
    num:= floor(num/32);
  end;
  result := r;
end;
Delphi-Quellcode:
type Taa = array of integer;

function TForm1.base32_encode_num(num: integer; aa1: Taa): String;
var r: string;
begin
  r := '';
  while num > 0 do
  begin
    r := r + chr(aa1[(num - floor(num/32)*32) + (32 * random(1))]);
    num:= floor(num/32);
  end;
  result := r;
end;





Delphi-Quellcode:
// statt r könnte man ...
function TForm1.base32_encode_num(num: integer; aa1: String): String;
var r: string;
begin
  r := '';
  while num > 0 do begin
    r := r + aa1[(num - floor(num/32)*32) + (32 * random(1))];
    num:= floor(num/32);
  end;
  result := r;
end;

// ... aber auch gleich result verwenden
function TForm1.base32_encode_num(num: integer; aa1: ...): String;
begin
  result := '';
  while num > 0 do begin
    result := result + ...;
    num:= floor(num/32);
  end;
end;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:33 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