PHP - SQL server

chattola79

Nuovo Utente
30 Ott 2013
2
0
0
Ciao a tutti
ho sempre programmato in ambiente LAMP/WAMP ma ora ho bisogno di connettere un'applicazione ad un database SQL Server
Ho un pc XP Service pack2
Ho installato SQL Server e con Toad ho verificato che funziona
Cosa serve fare per la connessione di php al nuovo db????

Grazie in anticipo....!!
 

marino51

Utente Attivo
28 Feb 2013
3.204
207
63
Lombardia
ciao, io utilizzo questa funzione che mi esegue tutti i comandi sql ritornando i dovuti risultati,
in questo modo non ho nessuna chiamata sql all'interno degli script php
la funzione è "require" ...
la variabile OPlog quando settata manda messaggi di log nel file "php54_errors.log" ed è usata in tutti gli script

PHP:
<?php

$OPlog = 1;

function exec_DB($CmdType, $sql) {
  global $swN,$OPlog,$data,$data_val;

  $OPdbHOST = 'server_name';
  $OPdbUSER = 'user_name';
  $OPdbPASS = 'Password';
  $OPdbNAME = 'db_name';

  if ($OPlog) error_log("$swN $CmdType : $sql", 0);

  try { $db = new PDO("sqlsrv:Server=$OPdbHOST;Database=$OPdbNAME", "$OPdbUSER", "$OPdbPASS"); }
  catch (PDOException $e) { die( print_r( 'Connection failed : ' . $e->getMessage(), true)); }

  if ($CmdType == "select") {
    $sth = $db->prepare($sql); $sth->execute(); $data = $sth->fetchall(PDO::FETCH_NUM);
    return $OPdbresult = count($data);
  }

  if ($CmdType == "select_val") {
    $sth = $db->prepare($sql); $sth->execute(); $data_val = $sth->fetchall(PDO::FETCH_NUM);
    return $OPdbresult = count($data_val);
  }

  if ($CmdType == "insert" or $CmdType == "update" or $CmdType == "delete") {
    return $OPdbresult = $db->exec($sql);
} }

?>

ciao
 
Ultima modifica di un moderatore:

chattola79

Nuovo Utente
30 Ott 2013
2
0
0
Grazie !
Spulciando per il web oggi ho trovato anch'io l'oggetto PDO che ho provato ad usare per il db che si trova di default appena l'installazione di SQL server
Ora mi trovo di fronte ad un 'ostacolo' che trovo assurdo ... uso Toad ma non riesco a creare un mio db:
File -> new -> database
Name: indico il nome di un nuovo db
E mi dà questo errore:

System.ArgumentNullException
Value cannot be null.
Stack Trace:
at System.RuntimeType.GetField(String name, BindingFlags bindingAttr)
at Quest.Toad.SqlServer.Doe.Utils.Attributes.AttributesUtils.GetIValuedAttributeValue[TypeAttribute,TypeValue](Enum eValue)
at Quest.Toad.SqlServer.Doe.Databases.DatabaseProperties.GenerateScript(String extPropertiesScript)
at Quest.Toad.SqlServer.Doe.Databases.DatabaseEditForm.GetScript()
at Quest.Toad.Doe.BaseDoeForm.Execute()
at Quest.Toad.SqlServer.Doe.Base.SqlServerDoeForm.Execute()
at Quest.Toad.Doe.BaseDoeForm.buttonPanelControl_OKButtonClick(Object sender, EventArgs e)
at Quest.Toad.Controls.ButtonPanelControl.DoOkButtonClicked(Object sender, EventArgs args)
at System.Windows.Forms.Control.OnClick(EventArgs e)
at DevExpress.XtraEditors.BaseButton.OnClick(EventArgs e)
at DevExpress.XtraEditors.BaseButton.OnMouseUp(MouseEventArgs e)
at System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
at System.Windows.Forms.Control.WndProc(Message& m)
at DevExpress.Utils.Controls.ControlBase.WndProc(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
at System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)



Che significa ??
 

marino51

Utente Attivo
28 Feb 2013
3.204
207
63
Lombardia
scusa non è semplice capire .... occorre conoscere tutte le condizioni, abbi pazienza, io uso ancora il vecchio e caro DOS

ho diversi file txt che contengono la struttura del database e poi con il comando sqlcmd li eseguo ....
di seguito un estratto ....

Codice:
USE master
GO
IF  EXISTS ( SELECT name FROM sys.databases WHERE name = N'nomeDB' ) DROP DATABASE nomeDB;
CREATE DATABASE nomeDB ON PRIMARY
	( NAME = N'nomeDB', FILENAME = N'C:\MSSQL\DATA\nomeDB.mdf', SIZE = 8192KB, FILEGROWTH = 1024KB, MAXSIZE = UNLIMITED )
LOG ON 
	( NAME = N'nomeDB_log', FILENAME = N'C:\MSSQL\DATA\nomeDB.ldf', SIZE = 1024KB, FILEGROWTH = 10%, MAXSIZE = UNLIMITED )
GO
EXEC dbo.sp_dbcmptlevel @dbname=N'nomeDB', @new_cmptlevel=90
GO
IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled')) EXEC nomeDB.dbo.sp_fulltext_database @action = 'enable';
GO
EXEC nomeDB.sys.sp_addextendedproperty @name=N'MS_Description', @value=N'nomeDB OLTP Database' 
GO

-----

del "%Opt_CmdFile%" 2>nul

type "%Opt_sqlpath%\nomeDB_0_CreateDB.txt"		>>"%Opt_CmdFile%"
type "%Opt_sqlpath%\nomeDB_1_USEDB.txt"			>>"%Opt_CmdFile%"
type "%Opt_sqlpath%\nomeDB_1b_CreateRules.txt"		>>"%Opt_CmdFile%"
type "%Opt_sqlpath%\nomeDB_2_CreateTables.txt"		>>"%Opt_CmdFile%"
type "%Opt_sqlpath%\nomeDB_3_GrantTables.txt"		>>"%Opt_CmdFile%"

sqlcmd %Opt_svrname% -i "%Opt_CmdFile%" -o "%Opt_LogFile%"

puoi sostituire il nomeDB con ciò che preferisci e non dovresti avere problemi
ciao
 
Discussioni simili
Autore Titolo Forum Risposte Data
F Programma PHP che esegue backup e ripristino di database SQL SERVER PHP 12
B php e sql-server PHP 13
N [collaborazione] programmatore php/mysql asp/sql server Rovigo, Mantova, Ferrara Offerte e Richieste di Lavoro e/o Collaborazione 2
F PHP con SQL SERVER PHP 0
B Php con sql server 2005 PHP 1
M Php+ms Sql Server PHP 3
D passare valori da database sql a php PHP 1
Emix Select concatenate php sql ajax PHP 2
L form multipla php sql,errore in inserimento MySQL 0
L Insert php sql da una form multipla PHP 6
moustache [RISOLTO] SQL PHP IIS PHP 8
WebmasterFioriniAndrea SQL, PHP Come passo i dati da una tabella? PHP 1
D [MySQL] [PHP] SQL andare da capo MySQL 0
A [PHP] registrazione utente in un database sql con confronto PHP 1
G sql select con array in php PHP 1
trattorino [PHP] sql estrarre in base all'ultima visita PHP 4
A [PHP] Modifica caratteri di una query Oracle SQL PHP 0
trattorino [PHP] sql aggiungere dato in una tabella senza cancellare contenuto PHP 6
Merlina3377 php insert dati su tabella sql PHP 9
V [PHP] Estrazione con SQL PHP 1
K stampa e modifica tabella in php e ms sql PHP 2
G [PHP] Selezionare OGGI anno precedente per query sql PHP 2
S Select Concatenate Ajax, php, sql Presentati al Forum 16
giancadeejay [PHP] istruzione UPDATE SQL PHP 2
M PHP/SQL Inserire più valori in una colonna di tipo integer - Checkbox - PHP 3
S [PHP] Eseguire differenza su dati SQL presenti sulla stessa colonna PHP 1
giuseppe_123 [PHP] ricerca in una tabella con my sql PHP 0
G [Offro] [Retribuito] cerco assistenza per sito internet - programmazione PHP SQL Offerte e Richieste di Lavoro e/o Collaborazione 2
D php sql PHP 0
J PHP Ajax tabella SQL non viene mostrata PHP 0
J Php ajax sql controllare se l'id esiste in una tabella db PHP 2
F Form Multipli con PHP e SQL PHP 0
F PHP problema doppi apici all'interno di una query SQL PHP 1
C [PHP][MY SQL] - Estrazione dati database tramite form PHP 8
M php vs sql PHP 13
R modifica dati in tabella php+sql PHP 12
I Riga tabella HTML creata con cicli PHP e Query Sql che restituisca un campo se si clicca la Riga PHP 4
Sargon Php e My Sql Area ristretta con password PHP 5
Sargon ordine delle parole PHP, My sql PHP 5
Komix Errore sintassi SQL "UPDATE" in file PHP PHP 10
Sargon Php / My sql motore di ricerca PHP 21
W [OFFRO] script php+sql semplice retribuito Offerte e Richieste di Lavoro e/o Collaborazione 0
I Php + sql PHP 1
E calendario in php + sql PHP 4
I Problema con PHP + SQL ! PHP 13
D [PHP/SQL] Estrarre risultati da 2 database Database 0
S Query PHP My sql PHP 31
S query sql in php PHP 4
Z query sql e script php per ordinamento dati tabella PHP 2
H Php,Sql.. prendere i dati prima di oggi PHP 7

Discussioni simili