PDA

Visualizza versione completa : [WEB]PHP+MS SQL SERVER


Mentos
01-09-2005, 10.50.31
Buongiorno a tutti!
Sono neofita di php. Ho necessità di collegarmi ad un database Microsoft SQL Server. Ho abilitato l'estensione php_mssql.dll nel php.ini e riesco ad effettuare operazioni di connessione e di query di selezione sul database. Fin qui nessun problema.
Devo però fare anche delle INSERT INTO e delle UPDATE che assolutamente non vengono eseguite. Non mi viene nemmeno restituito un errore, anzi debuggando il mio script sembra che l'operazione venga eseguita correttamente. In realtà però, andando a verificare nella tabella del db, i record apparentemente inseriti non ci sono e quelli modificati non hanno cambiato una virgola. :eek: :confused:
Qualcuno sa aiutarmi????? E' veramente urgente e importante!!! GRAZIE
:confused:

Gergio
01-09-2005, 11.44.53
nn e' magari un problema di permessi di scrittura?

Mentos
01-09-2005, 11.57.26
Ci avevo pensato, ma ho controllato e l'utente che utilizzo per l'accesso/selezione/scrittura nel db ha tutti i diritti...è l'amministratore...
Non so più che fare :confused:

Kjow
02-09-2005, 21.27.09
Per favore, modifica il topic (il titolo) in base al regolamento (http://www.wintricks.it/forum/showthread.php?s=&threadid=90815).

Grazie

Mentos
03-09-2005, 21.14.34
Chiedo venia....è un po' che non scrivevo qui...

Dr_House
03-09-2005, 21.27.54
Sai alle volte si verificano delle stranezze su script che apparentemente sono perfetti.

Ad esempio ho uno script che su Linux funge perfettamente e su Windows non va per nulla manifestando il tuo stesso problema.

Posso consigliarti se vuoi usare MySql, il server Apache, esistono le ultime versioni o dei pacchetti che permettono l'installazione direttamente del PHP PHPMySQL ed il Web Server.

Alternativamente se vuoi andare maggiormente sul sicuro posso suggerirti i seguenti server.

www.ilbello.com (totalmente free)

www.altervista.org (mysql a pagamento PHP free)

Il bello alle volte ha il vizio che crasha per un paio di giorni... ma quando le cose sono free cosa ci si vuole fare...

A presto.

Mentos
04-09-2005, 20.20.40
Dr House, grazie ma vedi, io utilizzo Apache+MySql+PHP di solito. In questo caso però i dati che mi servono sono memorizzati su un db MS SQL Server. Siccome MySQL non permette (e non ha proprio) le tabelle collegate sono obbligato a connettermi direttamente all'altro database. Capito?? :p

Cmq forse ho risolto venerdì in ufficio...E' un problema di transazioni distribuite...Sembra infatti che se non spunto l'opzione "Imponi transazioni distribuite" o qualcosa del genere, riesco a fare tutte le operazioni che voglio sul database. Il problema è che le applicazioni client-server fatte in Visual Basic in precedenza potrebbero avere degli "sviamenti"...
Spero in bene...

ceccus
10-09-2005, 17.17.13
Salve,
Il problema è dovuto proprio al principio di "Transazione" ...
Nell'ambiente Microsoft, colui ch esi occupa di coordinare le transazioni è il DTC (Distributed Transaction Coordinator), il quale "risiede" all' interno del COM+ ...
Quindi , se usi componenti VB, alias DLL e le inserisci in un package COM+ , non avrai nessun tipo di problema per quei Database che seguono le specifiche XA ...
Nel tuo , effettivamente stai facendo una transazione distribuita e devi abilitare tale flag...se le applicazioni in VB (che sono DLL) le inserisci in Package COM+ , non avrai nessun tipo di problema....

Ciao !!