AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Funktionen mit Delphi in PHP-Script..
Thema durchsuchen
Ansicht
Themen-Optionen

Funktionen mit Delphi in PHP-Script..

Ein Thema von TheMiller · begonnen am 12. Okt 2004 · letzter Beitrag vom 12. Okt 2004
Antwort Antwort
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#1

Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 16:45
Hey..

also, erstmal das Off-Topic: Ich habe mich durch mehrere Foren durchgeschlagen und bin jetzt wieder bei der DP gelandet, bei der ich schon länger bin... Ich muss sagen, es ist schön, "wieder zu Hause zu sein"!.

das nur am Rande. Jetzt mei Prob...

Ich habe folgenden Code:

Delphi-Quellcode:
var sl : TStringlist;
begin
  sl := TStringList.Create;
  sl.Add('$db_server='+Edit1.Text);
  sl.Add('$db_name='+Edit2.Text);
  sl.Add('$db_user='+Edit3.Text);
  sl.Add('$db_passwort='+Edit4.Text);
  Memo1.Text := idHttp1.Post('http://www.xxx.de/script.php',sl);
  FreeAndNil(sl);
end;
und eine solche PHP-Datei mit Funktionen:

Delphi-Quellcode:
<?PHP
  $db_server=$_POST['$db_server'];
  $db_name=$_POST['$db_name'];
  $db_user=$_POST['$db_user'];
  $db_passwort=$_POST['$db_passwort'];
  $test='hallo';
  $aaa=$_POST['$aaa'];
  $bbb=$_POST['$bbb'];
 

/*echo $_POST['$db_server'].chr(13).chr(10);*/
/*echo $_POST['$db_name'].chr(13).chr(10);*/
/*echo $_POST['$db_user'].chr(13).chr(10); */
/*echo $_POST['$db_passwort'].chr(13).chr(10);*/
/*echo $test;*/


function connect()
{
$db = @MYSQL_PCONNECT($db_server,$db_user,$db_passwort)
    or die ("Konnte keine Verbindung zur Datenbank herstellen");  $db_select = @MYSQL_SELECT_DB($db_name);  if($db_select)    echo "Datenbank wurde ausgewählt";
}


function insert()
{
$result = mysql_query("INSERT INTO test (aaa,bbb)
    VALUES ('sss','sss')");
  $var = mysql_insert_id();  echo $var;
echo mysql_error();
}

?>
Wie kann ich jetzt auf die einzelnen Funktionen zugreifen. Es soll nämlich nich immer jede aufgerufen werden...?

Danke im Vorraus!
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#2

Re: Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 17:01
Was du bräuchtest wäre ein weiterer Parameter, der angibt, welche Funktion ausgeführt werden soll:
Code:
<?php
/* blubb */

switch ($mode) {
  case "connect":
    connect();
    break;
  case "insert":
    insert();
    break;
}

function connect()
{
$db = @MYSQL_PCONNECT($db_server,$db_user,$db_passwort)
    or die ("Konnte keine Verbindung zur Datenbank herstellen"); $db_select = @MYSQL_SELECT_DB($db_name); if($db_select)   echo "Datenbank wurde ausgewählt";
}

function insert()
{
$result = mysql_query("INSERT INTO test (aaa,bbb)
    VALUES ('sss','sss')");
  $var = mysql_insert_id();  echo $var;
echo mysql_error();
}

?>
Die Variable $mode muss dann natürlich in deinem Delphi-Programm gesetzt werden, je nachdem, was gemacht werden soll.
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#3

Re: Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 17:39
Hm, habs probiert, aber nicht so ganz hinbekommen.

Wie würde denn der Aufruf aussehen?
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#4

Re: Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 17:45
In etwa so:
Delphi-Quellcode:
var sl : TStringlist;
begin
  sl := TStringList.Create;
  sl.Add('$db_server='+Edit1.Text);
  sl.Add('$db_name='+Edit2.Text);
  sl.Add('$db_user='+Edit3.Text);
  sl.Add('$db_passwort='+Edit4.Text);
  sl.Add('$mode=connect'); // <-- oder eben insert, je nachdem, was du grad' machen willst
  Memo1.Text := idHttp1.Post('http://www.xxx.de/script.php',sl);
  FreeAndNil(sl);
end;
Und was ich vorher vergessen hatte: Wenn der Server mit PHP3 (und nicht PHP4) läuft, müssen die beiden Funktionen über dem switch-Konstrukt stehen.
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#5

Re: Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 18:11
Hm,

kannst du bitte mal nachsehen, ob die funktionen richtig aufgebaut sind und funktionieren müssen? Das tun sie nämlich nicht. Ich bekomme keinen Fehler, aber auch keine Erfolgsmeldung. Gar nix ;-(
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#6

Re: Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 19:23
Ok, ich habe selbst die Lösung.

Der Fehler lag bei der VariablenÜbergabe/Deklaration.

Es muss noch ganz oben

  $mode=$_POST['$mode']; hinzugefügt werden. Jetzt funzt alles wunderbar
  Mit Zitat antworten Zitat
tommie-lie
(Gast)

n/a Beiträge
 
#7

Re: Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 19:27
Naja, kommt auf die PHP-Kongiguration an
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#8

Re: Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 19:28
Kann man das auch vereinfachen?

Wenn ja, wie?

PS: habe PHPAdmin
  Mit Zitat antworten Zitat
Benutzerbild von titus
titus

Registriert seit: 5. Apr 2004
Ort: Freiburg
232 Beiträge
 
#9

Re: Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 19:31
es heißt aber $mode = $_POST['mode'];

Du kannst register_globals = On setzen dann geht $mode wieder.
Aber: Nicht zu empfehlen, da dann ja auch von $_GET['mode'] oder $_COOKIE['mode'] oder von $_SESSION['mode'] kommen könnte...

Achja es geht noch mit:
extract($_POST); // ganz oben in die Zeile, dann kannst du wie gewohnt $mode benutzen.

Lt. php.net auch nicht zu empfehlen.

mfG
Daniel L.
'-'
  Mit Zitat antworten Zitat
Benutzerbild von TheMiller
TheMiller

Registriert seit: 19. Mai 2003
Ort: Gründau
2.480 Beiträge
 
Delphi XE7 Architect
 
#10

Re: Funktionen mit Delphi in PHP-Script..

  Alt 12. Okt 2004, 19:34
hm, dann lasse ich es so. Ist ja eine einmalige deklaration, da ich diese Variale global verwende..
  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 17:00 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