| Subiectul anterior :: Subiectul următor |
| Autor |
Mesaj |
noodle
Data înscrierii: 20/Mar/2006
Mesaje: 45
Locație: sibiu
|
| Trimis: Mar Aug 15, 2006 10:52 am Titlul subiectului: baze de date ACCESS din PHP |
|
|
| cum pot sa baze de date access din php, ce imi trebuie sa instalez... ned help!!! :cry: |
|
| Sus |
|
flavius.stef
Data înscrierii: 31/Iul/2006
Mesaje: 175
Locație: Timisoara
|
| Trimis: Mar Aug 15, 2006 12:17 pm Titlul subiectului: |
|
|
| http://aspn.activestate.com/ASPN/Cookbook/PHP/Recipe/163447 |
|
| Sus |
|
cristic
Data înscrierii: 02/Noi/2004
Mesaje: 32
Locație: BUCURESTI
|
| Trimis: Mar Aug 15, 2006 10:56 pm Titlul subiectului: |
|
|
| Pai PHP-ul nu prea te lasa sa te conectezi la Access decat prin ODBC. (sau cu multa munca prin DSNLess) Iti activezi repede in php.ini extensia de ODBC, iti faci un DSN la baza de date si apoi folosesti odbc_connect, odbc_query si etc (astea sunt direct in manualul de PHP direct) |
|
| Sus |
|
noodle
Data înscrierii: 20/Mar/2006
Mesaje: 45
Locație: sibiu
|
| Trimis: Mie Aug 16, 2006 7:47 am Titlul subiectului: |
|
|
cum fac DSN la baza de date si tot nimic ... daca ii dau calea absoluta la baza de date imi returneaza ca nu poate sa o deschida
Cod:
$db = 'C:\Program Files\VertrigoServ\www\db1.mdb';
$conn = new COM('ADODB.Connection') or exit('Cannot start ADO.');
// Two ways to connect. Choose one.
//$conn->Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db") or exit('Cannot open with Jet.');
$conn->Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$db") or exit('Cannot open with driver.');
asta e conexiunea daca poti sa imi explici mai detaliat despre DSL. Am gait o varianta care merge dar, numai daca dai calea absoluta a fisierului, si aici e o problema.... baza de date trebuie sa fie pe un alt server. |
|
| Sus |
|
cristic
Data înscrierii: 02/Noi/2004
Mesaje: 32
Locație: BUCURESTI
|
| Trimis: Mie Aug 16, 2006 9:26 am Titlul subiectului: |
|
|
Vad ca ai luat-o pe calea cea grea cu DSNLess si ADO. Incearca totusi si prin ODBC.
Ca sa creezi un DSN trebuie sa faci asta:
[http://www.zend.com/zend/tut/odbc.php?article=odbc&kind=t&id=6275&open=1&anc=0&view=1#Define]
Apoi in pagina ta trebuie sa te conectezi la DSN-ul definit si nu trebuie sa mentionezi calea catre fisier:
$dsn_user = 'my_database';
$dsn_user = 'user';
$dsn_pass = 'user';
$conn = odbc_connect($dsn_name, $dsn_user, $dsn_pass);
$rs = odbc_exec('SELECT * FROM my_table', $conn);
Si cam asta este tot. Ar fi bine sa citesti un pic si manualul de PHP-ODBC
[http://ro.php.net/manual/en/ref.uodbc.php]
Cristic[/url] |
|
| Sus |
|
noodle
Data înscrierii: 20/Mar/2006
Mesaje: 45
Locație: sibiu
|
| Trimis: Mie Aug 16, 2006 10:55 am Titlul subiectului: |
|
|
Nu am reusit sa fac numic cu DSN-ul, exista cumva o solutie prin care sa nu mai trebuiasca sa dau calea absoluta a fisierului....
Ce SQL server trebuie sa am acela de windows? pentru ca eu il folosesc pe cel de pe serverul web local. |
|
| Sus |
|
cristic
Data înscrierii: 02/Noi/2004
Mesaje: 32
Locație: BUCURESTI
|
| Trimis: Mie Aug 16, 2006 11:53 am Titlul subiectului: |
|
|
Pai nu exista decat 2 metode cum ti-am explicat DSN si DSNLess. Doar in prima nu hardcodezi calea in aplicatie.
Ce probleme ai cu DSN-ul ca nu inteleg ? Ce nu iti merge ? Ce system de operare folosesti ? La ce baza de date exact te conectezi Access sau MSSQL? Ai erori in PHP ? Ce erori ai ? Fii mai explicit ca altfel nu te pot ajuta. |
|
| Sus |
|
cristic
Data înscrierii: 02/Noi/2004
Mesaje: 32
Locație: BUCURESTI
|
| Trimis: Mie Aug 16, 2006 11:58 am Titlul subiectului: |
|
|
| A, si inca un lucru, cand faci [i] or exit [/i] nu mai baga texte de la tine. Asta este cel mai gresit lucru care te face sa pierzi o suta de ani la debug. Baga exit cu functiile dedicate de error reporting ale modului de PHP pe care il folosesti ca altfel nu stii care a fost problema. Ceva de genul [i]or exit(odbc_errormsg())[/i][/i] |
|
| Sus |
|
noodle
Data înscrierii: 20/Mar/2006
Mesaje: 45
Locație: sibiu
|
| Trimis: Mie Aug 16, 2006 12:42 pm Titlul subiectului: |
|
|
folosesc windows XP sp2
am incercat cu odbc_errormsg() dar nu imi afiseaza nimic. eu vreau sa pot sa ma conectez la o baza de date access, din care sa preiau toate inregistrarile si dupa care sa le transfer in MySQL. cand incerc sa creez dupa pasii din adresa care mi-ai dat-o.... imi zice ca nu gaseste serverul SQL.....
daca poti si ai mai mult timi asta e id'ul meu de yahoo mess: mihai_84. |
|
| Sus |
|
flavius.stef
Data înscrierii: 31/Iul/2006
Mesaje: 175
Locație: Timisoara
|
| Trimis: Mie Aug 16, 2006 11:57 pm Titlul subiectului: |
|
|
noodle a scris: cum fac DSN la baza de date si tot nimic ... daca ii dau calea absoluta la baza de date imi returneaza ca nu poate sa o deschida
Cod:
$db = 'C:\Program Files\VertrigoServ\www\db1.mdb';
$conn = new COM('ADODB.Connection') or exit('Cannot start ADO.');
// Two ways to connect. Choose one.
//$conn->Open("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=$db") or exit('Cannot open with Jet.');
$conn->Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=$db") or exit('Cannot open with driver.');
asta e conexiunea daca poti sa imi explici mai detaliat despre DSL. Am gait o varianta care merge dar, numai daca dai calea absoluta a fisierului, si aici e o problema.... baza de date trebuie sa fie pe un alt server.
Strict legat de numele fisierului... pentru caile windows trebuie sa folosesti \\ in loc de \ ($db = 'C:\\Program Files\\VertrigoServ\\www\\db1.mdb';)
Cum te conectezi prin COM/ADO la alt server... asta nu mai stiu. Si mi`e cam lene sa caut :D |
|
| Sus |
|
cristic
Data înscrierii: 02/Noi/2004
Mesaje: 32
Locație: BUCURESTI
|
| Trimis: Joi Aug 17, 2006 8:34 am Titlul subiectului: |
|
|
S-a rezolvat de ieri.
Cristic |
|
| Sus |
|
PHPRomania Bot
Bot Member
Data înscrierii: 27/Dec/2007
Mesaje: 1
Locaţie: Server Google |
| Trimis: Mie Dec 26, 2007 7:01 pm Titlul subiectului: Ad |
|
|
|
|
|
| Sus |
|
| |