Re: Komponente: MySQL via PHP-Tunnel
Nachdem es nun doch eine Reaktion gegeben hat, wird das Projekt endgültig wieder aufgenommen....
|
Re: Komponente: MySQL via PHP-Tunnel
Ich würde mich sehr darüber freuen. :hello:
Gruß Frank |
Re: Komponente: MySQL via PHP-Tunnel
Ich befasse mich seit Neustem auch mit dem Thema,
Ziel ist bei mir eine lokale Datenbank mit einer Webdatenbank abzugleichen. Mit den hier beschriebenen Wegen ist ja zumindets das Auslesen vom Server möglich. Durch Anpassen der PHP-Datei auch Updates und Insert´s. Eine Anassung auf Dataset-, Datasourcekomponente würde hier sicher hilfreich sein. Dann kan man doch sicher auf andere Grids (welche auch bearbeitbar sind), zurückgreifen. Da ich nicht so fit in Komponentenerstellung bin freue ich mich auf die nächsten Schritte, die ich mit Interesse verfolgen werde. |
Re: Komponente: MySQL via PHP-Tunnel
Hallo,
Ich habe mich auch schon mal mit ein PHP-Tunnel beschäftigt und auch mit der TDataset. Wenn es etwas bringt: fuer die TDataset gibt es beispiele in der MD5code oder MD7Code (Mastering Delphi Bücher). Als ich die Idee für PHP-Tunnel an ein Kollege erzählt habe, hat der sich dran gesetzt und PHP code geschrieben die eine KbmMemtable compatible textfile erzeugt. Das würde gehen, alternative wäre vielleicht auch om XML vom PHP script zu bekommen die für die TClientDataset geeignet ist. Aber es ginge noch einfacher: Es ginge auch im Ini format oder in etwas wie Fields=2 Field1=Name;ftstring;20;no Field2=Adresse;ftstring;50;no Records=2 Record1=Teo;Niederlande Record2=Teo2;Niederlande (in ein loop zu lesen und auch ohne TDataset verwendbar) Das wäre in PHP leicht zu coden und zu lesen, in Delphi auch und ich habe hiermit ein experiment gemacht wobei dies in ein TDataset geht (um data zwischen Delphi und Lazarus hin und her zu schicken). Wenn erwünscht habe ich code der Mastering Delphi demos dabei und auch sources für diese TDataset. |
Re: Komponente: MySQL via PHP-Tunnel
Guten morgen,
mal das alte Projekt nach oben zieh :gruebel: Mal ne kleine Frage ? Wie sieht es aus wenn der php-tunnel hinter einem htaccess liegt ? cu Frank |
Re: Komponente: MySQL via PHP-Tunnel
Hab ich bisher noch nicht ausprobiert... Gute Frage, nächste Frage... :(
|
Re: Komponente: MySQL via PHP-Tunnel
Schreibrechte braucht man mit php nur wenn man auch aufs Filesystem schreibt. Solange nur zur Datenbank durchgereicht wird und mit Variablen gearbeitet wird ohne Zwischenzuspeichern geht das auch mit nur Lesen-Rechte im htaccess.
Gibt es eigentlich schon Fortschritte im Projekt? Grüße // Martin |
Re: Komponente: MySQL via PHP-Tunnel
Siehe auch klick.
|
AW: Komponente: MySQL via PHP-Tunnel
@cbsistem: Schon mal den Post über deinem gesehen?
|
AW: Komponente: MySQL via PHP-Tunnel
Hallo, da ich euer Forum über google(php tunnel gesucht) gefunden habe, habe ich es auch gleich getestet.
Soweit alles ok, den php tunnel habe ich bissel umgebaut und sende die Daten über post('abfrage','xyz','dudarfstrein',sql); an die komponente TIdHTTP von indy-client In der 1ten sql bekomme ich Daten zurück, in der 2ten sql bekomme ich einen Fehler und weiß nicht mehr weiter. da ich mir ein phpwbb Installiert habe, kann ich auch gut testen, bei der sql abfrage sql := 'SELECT user_id,username FROM phpbb_users WHERE user_id < 3' bekomme ich das in mein Memo, gibts Möglichkeiten über php das nur die Namen gesendet werden ? array(2{["user_id"]=>string(2)"-1["username"]=>string(9)"Anonymous"}array(2{["user_id"]=>string(1)"2["username"]=>string(8) "Schubert"} weil diesen String müsste ich zerlegen und mir die namen raus holen. ich hoffe das geht auch anders.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var sql : String; begin // 1SQL ok sql := 'SELECT user_id,username FROM phpbb_users WHERE user_id < 3' // 2SQL nicht ok, gibt error // sql := 'SELECT user_email FROM `phpbb_users` WHERE `username` = '+chr(39)+'Schubert' + chr(39); post('abfrage','xyz','dudarfstrein',sql); So habe ich mir mal meinen php Tunnel aufgebaut, da ich nicht die Originalen Zugangsdaten weiter an 3te geben wollte, sende ich 3 strings, wenn die ok sind bekommen die richtigen var ihren wert. da ich in php noch NIE etwas gemacht habe, hoffe ich doch das dies ok ist.
Code:
<?php
include "LA/phpBB2/config.php"; // $link = mysql_connect($dbhost,$dbuser,$dbpasswd) or die('DB_FAIL1'); // mysql_select_db($dbname) or die('DB_FAIL2'); $aktion = $_POST['aktion']; $user = $_POST['user_name']; //dbuser $pass = $_POST['user_passwort']; //dbname $db_pass = $_POST['db_pass']; //dbpasswd $abfrage = $_POST['abfrage']; //dbuser if ($user == "xyz") { $user = $dbuser; } //dbname if ($pass == "dudarfstrein") { $pass = $dbname; } //dbpasswd if ($db_pass == "123456") { $db_pass = $dbpasswd; } switch ($aktion) { case "abfrage": if ($abfrage != "") { mysql_connect($dbhost,$user,$db_pass) or die('DB_FAIL1'); mysql_select_db($pass) or die('DB_FAIL2'); $sql = $abfrage; $result = mysql_query($sql) OR die('DB_FAIL3'); while ($row = mysql_fetch_assoc($result)) {var_dump($row);} } else echo "Kein Query gefunden"; } mysql_close($link); ?> |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:42 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