witam ! chciałem wysłać do bazy Pewne Dane, Szukałem po google o metodach GET i POST lecz nic nie znalazłem chcę zrobić Coś takiego Aby wysłać dane z pola edit memo itp do bazy danych po czym wyciągnąć je do skryptu ale z tym sobie poradzę chodzi mi o jakiś przykład jak za pomocą indy mogę wysłać coś do bazy danych za wszystkie odpowiedzi dziękuję.
co ma wspólnego GET/POST i INDY z bazą danych???
szukałem wszystkiego... ma ktos przykład jak wysłać coś do bazy danych ?
Co masz na myśli pisząc "baza danych"?
Chcesz zrobić program, który "połączy" się ze stroną www, coś tam puści za pomocą post albo get, a później Ty w php coś zrobisz z danymi które program wysłał wcześniej... tak? ło to chodzi? musisz jaśniej, bo nie wiadomo o co Tobie chodzi.
tak chcę się połączyć z bazą danych po czym wysłać do niej dane do tabeli np. do tabeli Users.
Rozumiemy, że masz takie dane, jak:
Nazwa użytkownika, hasło, serwer
?
noo tak.. mam wszystkie dane jestem administratorem tej bazy i serwera... mam także dostęp do ftp.
Refresh
refresh2
- uruchamiasz przeglądarkę
- w pasek adresu wpisujesz google.pl i enter
- w pole wyszukiwania wpisujesz "delphi nazwa_bazy_z_jakiej_chcesz_korzystać" i enter
- czytasz i się uczysz
szukałem własnie pod taką nazwą !!! Wyswietlało mi się jak wklejać do programu dane z bazy lub jak stworzyć baze w delphi...
to może zapytam inaczej - wiesz w ogóle co oznacza "tak chcę się połączyć z bazą danych po czym wysłać do niej dane do tabeli np. do tabeli Users." bo z twoich postów wynika, że myślisz, że polega to na wysłaniu danych na serwer FTP a on już sobie z tym jakoś sam poradzi.
dla mysqla pierwszy z brzegu link z googla MySQL w Delphi
tam jest napisane o bazie którą mam na komputerze ;) mi chodziło o baze którą mam zainstalowaną na swoim serwerze na swojej stronie :] chodziło mi o rejestracje do bazy którą mam na necie :D zaraz postaram się coś znaleźć na google ale wątpie tym czasem prosze o odpowiedz.
Ja dalej nie rozumiem na serwerze masz bazę (pewnie MySQL ale nie koniecznie) i jest jakiś skrypt PHP, jakiś formularz, który chcesz wypełniać i wysyłać (tak jak by został wypełniony przez użytkownika wchodzącego na stronę) za pomocą Delphi czy może chcesz bezpośrednio łączyć się z bazą i przykładowo coś zapisywać do niej.
xoxo napisał(a)
tam jest napisane o bazie którą mam na komputerze ;) mi chodziło o baze którą mam zainstalowaną na swoim serwerze na swojej stronie :] chodziło mi o rejestracje do bazy którą mam na necie :D zaraz postaram się coś znaleźć na google ale wątpie tym czasem prosze o odpowiedz.
a wytłumacz mi czym się różni baza którą masz na kompie lokalnie od takiej, która jest na innym kompie (np. w necie)???
chodzi mi oto aby z delphi połączyć się z bazą danych mysql po czym wysłać z programu do bazy jakieś dane np. Dane z labela do Tabeli users, inaczej to chcę zrobić rejestracje z programu do bazy mysql :D
No to pobaw się np. DirectSQL (albo poszukaj czegoś innego, DirectSQL ma ten + że nie wymaga zewnętrznych DLL)
http://sourceforge.net/projects/directsql/
I masz przykład:
//do uses uMysqlClient;
const
HOST = 'localhost';
USER_NAME = 'user';
USER_PASS = 'pass';
DB_NAME = 'test';
DB_PORT = 3306;
var
MySqlClient: TMySqlClient;
MySqlResult: TMySqlResult;
i: Integer;
ok: Boolean;
begin
MySqlClient:= TMySqlClient.create;
try
MySqlClient.connect(HOST, USER_NAME, USER_PASS, DB_NAME, DB_PORT);
if MySqlClient.Connected then
begin
Memo1.Lines.Add('Polaczony');
MySqlClient.query('CREATE TABLE users ' +
'(id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, ' +
'imie TINYTEXT NULL DEFAULT NULL, ' +
'nazwisko TINYTEXT NULL DEFAULT NULL, ' +
'wiek TINYINT NULL DEFAULT NULL);', false, ok); //tworzy przykladowa tabele users
if (ok = True) or (MySqlClient.LastErrorNo = 1050 {tabela już istnieje}) then
begin
if MySqlClient.LastErrorNo = 0 then
Memo1.Lines.Add('Tabela users została utworzona.')
else
Memo1.Lines.Add('Tabela users juz istnieje.');
MySqlClient.query(Format('INSERT INTO users(imie, nazwisko, wiek) VALUES ' +
'("%s", "%s", %d);', ['Jan', 'Kowalski', 18]), false, ok); //daje rekord
if ok then
begin
Memo1.Lines.Add('Rekord został dodany do bazy.');
MySqlResult:= MySqlClient.query('SELECT * FROM users;', true, ok); //odczyt rekordow
if MySqlResult <> nil then
begin
while not MySqlResult.Eof do //jeden ze sposobow pobrania rekordow
begin
Memo1.Lines.Add(Format('----------------'#13#10'ID: %0:s'#13#10'Nazwisko: %1:s' +
#13#10'Nazwisko: %2:s'#13#10'Wiek: %3:s', [MySqlResult.FieldValue(0),
MySqlResult.FieldValue(1), MySqlResult.FieldValue(2), MySqlResult.FieldValue(3)]));
MySqlResult.Next;
end;
end
else
Memo1.Lines.Add('ERROR: ' + MySqlClient.LastError);
end
else
Memo1.Lines.Add('ERROR: ' + MySqlClient.LastError);
end
else
Memo1.Lines.Add('ERROR: ' + MySqlClient.LastError);
MySqlClient.close; //rozlacz
end
else
Memo1.Lines.Add('ERROR: ' + MySqlClient.LastError);
finally
MySqlClient.Free;
end;
end;
nom Tylko mam jeden problem kiedy zainstaluje ten directsql To go nie ma nigdzie w komponentach co jest ? a i zapomniałem podziękować :>
Nie korzystałem z akurat tego komponentu nigdy, ale podejrzewam, że jest to tak jak te z pakietu Synapse - niewizualny. Czyli po zainstalowaniu, dodajesz odpowiedni moduł do sekcji uses, a następnie deklarujesz zmienną odpowiedniego tupu i korzystasz z jej konstruktora aby stworzyć obiekt i później odwołujesz się do niego, tak jak to pokazal kAzek w kodzie powyżej.
tak ;D właśnie sprawdziłem i kod zadziałał... Tylko mam jeden problem ponieważ nie rozumiem co mam wpisać w HOST.. ;/ a poza tym ten kod działa ;P
CHyba logiczne, w host podajesz adres serwera na którym jest baza, jeżeli jest ona na komputerze, z którego uruchamiaz program - to pewnie, tak jak w przykładzie wystarczy podać localhost.
Teraz to mi wyskakuje taki Error Gdy klikam w button:
ERROR: Can't connect to MySQL server on 'www.strona.y0.pl' (0)
wyświetla się to w memo że nie można połączyć się z bazą danych nie wiem czy dobrze wypełniam ten formularz:
const
HOST = 'www.strona.y0.pl';
USER_NAME = 'login';
USER_PASS = 'haslo';
DB_NAME = 'tutaj nazwa bazy';
DB_PORT = 3306;
Proszę o odpowiedzi.
Trzeba poszukać na stronie informacji jaki jest adres serwera dla Twojej bazy danych, wątpie aby był taki sam jak adres strony i to jeszcze z "www.", z przodu.
wiem to co tam napisałem to bełkot ahh... adres bazy mam stronę na cba i tam pisze tak:
Adres bazy danych: mysql.cba.pl
wpisałem to w host lecz tym razem znów wywala błąd:
ERROR: Can't connect to MySQL server on 'mysql.cba.pl' (0)
co jest grane ? ;o
i OCZYWIŚCIE sprawdziłeś wcześniej, czy w ogóle możesz się połączyć z MySQLem z zewnętrznego adresu i OCZYWIŚCIE NIGDZIE NIE PISAŁO, ŻE NIE MOŻESZ...
Normalnie załamać się można jak przez TYDZIEŃ dyskusja toczy się o dupie maryni i trzeba każdą pieprzoną informację wyciągać prawie siłą łaskawego pytacza...
FAQu CBA.PL napisał(a)
Nie mogę połączyć się z bazą danych z zewnętrznego serwera, dlaczego?
Albo nie zmieniłeś w skrypcie adresu bazy danych i próbujesz połączyć się z localhost (a powinieneś z mysql.cba.pl), albo próbujesz połaczyć się z innego serwera www niż tego na cba. Bazy danych nie są dostępne z zewnętrznych serwerów www, zatem nie możesz wrzucić strony na inny hosting i trzymać tylko bazy tutaj.
Albo nie zmieniłeś w skrypcie adresu bazy danych
Co ? oco chodzi ? Podałem w host mysql.cba.pl tak jak powinienem i wyskakuje że nie mogę się połączyć z bazą... Czyli co źle robie ?
a jeżeli będzie to serwer z proserwer.pl to dam radę ? proszę o odpowiedz.
Taaa, myśle sobie baza działa pod PHPAdminem na cba, to co gościowi nie wychodzi i oczywiście to samo wyczytałem w FAQ. Ech, xoxo: ogarnij się!!! I nie pytaj nas czy na serwerze xxxxxx bedzie można się logowac z zewnątrz. Na profesionalnych płatnych serwerach albo vpsach pewnie się da (a na vpsach to na pewno wszystko się da co zgodne z polskim prawem). Skąd tutaj mamy wiedzieć czy się da, nie każdy ma tam konto, nie łatwiej pogooglować lub napisac do supportu?
założyłem hosting na friko.pl i tam wszystko ładnie działa dziękuje wszystkim za wparcie i pozdrawiam !
teraz jest jedna lipa a więc jeżeli chcę wysłać do bazy pole z edita to wyskakuje mi ten oto błąd:
ERROR: Unknown column 'edit1text' in 'field list' albo jak zmieniam ten jan kowalski na coś innego to wyskoczy mi to:
ERROR: Unknown column 'Michal' in 'field list' oczywiście z tym editem nie daje tak ['edit1.text'])
tylko tak [edit1.text])
i wyskakuje ten błąd... nie wiem oco chodzi ;/
Przykro nam.
Wróżka na wakacjach :P
Daj więcej kodu.
nie moge dać edita posta więc odpowiem... zmieniałem kod ort! połowe kodu kod teraz wysyła tylko 3 tabele id,imie,nazwisko kod nie działał ort! w tym ("%s", "%s",%d)
Było %d zmieniłem to na %s i dodałem " " i działało lecz nie wysyłało tego co potrzeba więc to wywaliłem...i wszystko działa :> temat może zostać bo nie wiem co jeszcze się odwali... :D Pozdrawiam.