[ prginfo @ 21.10.2009. 23:09 ] @
Koristim D2007.

Interesuje me da li postoji mogućnost da postavim MySQL bazu na internet i da se putem desktop aplikacije kačim na bazu koja je na netu.
Baza mi sasvim lepo funkcioniše sa PHP stranom koja je takođe na serveru.
Pokušavao sam da pretražim net, ali bezuspešno (našao sam puno toga, ali nema koristi).

Ako je neizvodljiva direktna konekcija, imam ideju da napravim komunikaciju aplikacija-PHP-MySQL-PHP-aplikacija

Da li neko ima ideju kako ovo da rešim?

Unapred se zahvaljujem.
[ xenox @ 21.10.2009. 23:26 ] @
http://delphi.about.com/od/mysql/MySQL_with_Delphi.htm
[ prginfo @ 22.10.2009. 07:48 ] @
To sam pročitao. Problem je što provajder ne daje direktan pristup serveru.

Imam svoj sajt koji je dobrim delom rađen u PHPu sa MySQL bazom podataka.
Bazi mogu da pristupam i preko PHPMyAdmina i preko CPanela. Sajt normalno funkcioniše.

Poenta je kako vezati desktop aplikaciju sa MySQL bazom koja se hostuje kod provajdera?

To je ono što ne znam kako da uradim.

Svi tekstovi, primeri koje sam našao podrazumevaju direktan pristup serveru sa statičkom IP adresom.
Meni sve radi normalno u lokalu.

ali i dalje ostaje pitanje:

Kako vezati desktop aplikaciju sa MySQL bazom koja se hostuje kod provajdera?
[ dekys @ 22.10.2009. 08:18 ] @
KOliko mi se cini jedini nacin da resis problem je da putem FTP-a prosledis fajl na web server. To mozes jednostavno napraviti, teki TXT, CSV, XML... formatiran onako kako ti odgovara.
Pa onda PHP kod koji ce to da preuzme i prosledi u MySQL bazu!
[ stankons @ 22.10.2009. 08:22 ] @
U cPanel - u bi trebalo da postoji opcija da dozvoliš pristup MySQL bazi, ako ne, onda možeš preko SOAP - a da pristupaš, ili da napraviš jednu PHP skriptu koja će raditi POST metodu a ti iz Delphi - a samo šalješ parametre...
[ prginfo @ 22.10.2009. 08:47 ] @
Postoji u CPanelu definisanje za

Remote Database Access Hosts

U tom delu se samo kuca IP adresa.

Kako se namešta ovaj deo, ako bi to rešilo problem?
[ stankons @ 22.10.2009. 08:52 ] @
Da, to je to. % je džoker, znači, ako staviš samo % onda će imati pristup svi, koji znaju šifru, naravno, a, možeš, recimo, da staviš 192.168.1.% znači imaće pristup svi čiji IP počinje sa 192.168.1. Takođe proveri i da ti FireWall ne blokira pristup...

Skini HeidiSQL i testiraj sa njim, inače je urađen u Delphi - u, pa možeš i da pogledaš izvorni kod...
[ prginfo @ 22.10.2009. 09:30 ] @
Probao sam. Problem je sama konekcija na server.

Šta upisati u Hostname / IP

Taj deo mi nedostaje, a ono što obezbeđuje provajder kao Hostaname, to i upišem.
Username, password i DBname znam. Port sam ostavio na 3306.

Kada idem preko PHPa, default je localhost i port 80
[ prginfo @ 22.10.2009. 09:33 ] @
U HeidiSQL mi izbaci sledeću poruku:

Can`t connect to MySQL server on `ovde ispiše Hostaname` (10060)
[ stankons @ 22.10.2009. 09:51 ] @
Sad, ne znam, ja takođe upišem hostname kad se kačim preko Heidi - a...

Znači, ili je uključen firewall, ili neki problem sa host - om, ili sam ti ja dao pogrešnu informaciju sa % :) Nemam ovde pristup na cPanel, da vidim kako sam kod mene iskonfigurirao, pa ću ti poslati od kuće, ako ne nađeš rešenje...
[ prginfo @ 22.10.2009. 09:54 ] @
Promenio sam sada Hostname i po svemu sudeći prođe, ali mi sada uradi access denied for user...

Elem, mislim da je problem u tome da provajder ne dozvoljava direktnu konekciju na server.
[ stankons @ 22.10.2009. 09:59 ] @
Ne, to znači da korisničko ime koje si napisao nema pristup toj bazi. Pogledaj u cPanel - u, da li taj korisnik ima pristup bazi, ili kreiraj novog korisnika, i dodaj ga u bazu, pa njega koristi. cPanle će ti dati i connection string, sa parametrima koji ti trebaju, pa to iskoristi...
[ prginfo @ 22.10.2009. 10:25 ] @
Nismo se razumeli.

Ja imam pristup bazi i ja sam kreirao i bazu i korisnika.

Ja sam i importovao bazu i ona funkcioniše u okviru sajta.

Poenta je što trenutno komunikacija sa bazom ide preko PHPa koji se, naravno, izvršava na serveru provajdera, i sve radi normalno.

Ja ne mogu da napravim konekciju sa Desktop aplikacije.

Baza, korisnik i lozinka su ispravne.

Suština je u Hostname.
[ stankons @ 22.10.2009. 10:29 ] @
Ako ti kaže access denied for user,... onda znači da si se konektovao na bazu ali korisnik nema dozvolu pristupa...

Korisnika koji koristiš za PHP je verovatno samo za localhost, ne znam, ne sećam se tačno, ali definitivno kod mene radi kad kreiram novog korisnika, dodam ga u bazu, sa full privilegijama - sve preko cPanel - a, i onda koristim tog korisnika za pristupa bazi.

Nemoj me držati za reč, ali verovatno taj root korisnik nema remote access.

Ali 100% si se zakačio na server čim kaže access denied.