Hallo,
erst mal danke, klappt super. Leider nutze ich auch einen Server, der anstelle der
localhost eine andere Serveradresse wie bei zu #16,Datenbankserver" beschrieben benötigt.
Was muss man wo wie ergänzen.
Ich habe es selber einmal versucht,und habe FloginU erweitert.
Delphi-Quellcode:
procedure TFLogin.Execute(SQLConnection: TSQLConnection);
begin
EdURL.Text:=SQLConnection.Params.Values['Hostname'];
EdDatabase.Text:=SQLConnection.Params.Values['Database'];
EdUsername.Text:=SQLConnection.Params.Values['User_name'];
EdPassword.Text:=SQLConnection.Params.Values['Password'];
EdHost_adr.Text:=SQLConnection.Params.Values['host_adr'];
if Self.ShowModal = mrOk then begin
SQLConnection.Params.Values['Hostname']:=trim(EdURL.Text);
SQLConnection.Params.Values['Database']:=trim(EdDatabase.Text);
SQLConnection.Params.Values['User_name']:=trim(EdUsername.Text);
SQLConnection.Params.Values['Password']:=trim(EdPassword.Text);
SQLConnection.Params.Values['host_adr']:=trim(EdHost_adr.Text);
SQLConnection.Open;
end;
end;
aber bekomme den Parameter 'host_adr' nicht in mein PHP-Scipt übertragen.
Im PhP habe ich folgende Ergänzungen eingetragen,
Delphi-Quellcode:
private function Init()
{
if (isset($_POST['id'])) {
$_REQUEST[session_name()] = $_POST['id'];
session_start();
if (isset($_SESSION['init']) && $_SESSION['init']) {
return $this->connect($_SESSION['user'], $_SESSION['pass'], $_SESSION['db'], $_SESSION['host_adr']);
}
$this->ERROR = '
Fehler bei der Initialisierung.';
}
else {
session_start();
if (isset($_POST['command']) && $_POST['command'] == 'connect') {
if ( isset($_POST['user'])
&& isset($_POST['pass'])
&& isset($_POST['db'])
&& isset($_POST['host_adr'])
)
{
if ($this->connect($_POST['user'], $_POST['pass'], $_POST['db'], $_POST['host_adr'])) {
$_SESSION['init'] = true;
$_SESSION['user'] = $_POST['user'];
$_SESSION['pass'] = $_POST['pass'];
$_SESSION['db'] = $_POST['db'];
$_SESSION['host_adr'] = $_POST['host_adr'];
$this->ID = session_id();
return true;
}
}
}
}
return false;
}
private function connect($user, $pass, $database, $host_adr)
{
$this->db = mysql_connect($host_adr, $user, $pass);
werde aber mit Scriptfehler abgewiesen, da natürlich die host_adr über die libmysql.dll nicht übertragen wird. Würdest du du den Code für die
dll auch noch einstellen, oder die
DLL anpassen ?