2014-01-15 2 views
-1

Хорошо, вот моя ситуация:PHP PDO MSSQL в Xampp?

Я установил Xampp (v1.8.2) на свой сервер, чтобы опубликовать веб-программу, которую я создаю (php, html) для некоторых людей в моей сети. Впервые мне нужно подключиться к серверу MSSQL 2008 вместо MYSQL (phpmyadmin). За последние годы я всегда работал с MySQL api и немного с MySQLi. Я прочитал через Интернет, я должен использовать PDO, чтобы я мог успешно подключиться к базе данных MS.

Как я вижу, PDO не установлен/активирован. Когда я смотрю в файл php.ini единственное, что я вижу:

extension=php_mssql.dll 

но не

extension=php_pdo_mssql.dll 

я читал, выделяют (т.е. то, что я должен установить DLL сома файлы, которые я должен установить apache, PHP, PDO вручную)

Каков хороший способ успешного подключения к моей базе данных mssql?

Благодаря

+0

Проверить это: http://stackoverflow.com/questions/16310892/mssql-pdo-could-not-find-driver –

+0

Спасибо! Из-за вашего толчка в моей спине я смог найти следующий поток: http://stackoverflow.com/questions/7402713/how-to-get-mssql-work-with-php-5-3. Ответ Гордона сделал мой день, и пусть это работает как шарм! если бы я нашел это на 2 дня раньше, я бы сэкономил много драгоценного времени! – Raz3rt

+0

Рад, что я мог бы как-то помочь. :) –

ответ

0

Хотя с помощью PDO это хорошая идея, и поможет вам сэкономить время, вы можете использовать Mssql extension. Если вы действительно хотите использовать PDO_MSSQL, вы должны разрешить его в PHP.ini (вторая строка, которую вы опубликовали, это правильный способ сделать это), но вы также должны иметь php_pdo_mssql.dll в своем каталоге расширения PHP. Вы можете найти этот файл here

+0

Спасибо, что поймали меня в хорошем направлении. Я работаю с PHP 5.4 и в соответствии с этим: «Расширение MSSQL больше не доступно в Windows с PHP 5.3 или новее. SQLSRV, альтернативный драйвер для MS SQL, доступен из Microsoft» mssql больше не является вариантом. – Raz3rt

+0

Есть ли причина, по которой вы предлагаете Mssql вместо PDO? –

+0

В моем ответе я не предлагал расширение Mssql над PDO_MSSQL. Просто они являются альтернативами, и поэтому я предложил другое, если последнее не было доступно. В вопросе OP мы можем ясно видеть, что расширение Mssql включено, следовательно, можно использовать. Вот почему я предложил использовать Mssql. Также иногда драйверы PDO не поддерживают специальные функции. Однако, если бы мне пришлось выбирать между нормальным расширением и PDO, я бы предпочел PDO. – Kei

0

Есть два расширения MSSQL: SQLSRV http://php.net/manual/en/book.sqlsrv.php (если ваш сервер/компьютер окно Windows) и MSSQL http://php.net/manual/en/book.mssql.php (если ваш сервер/компьютер коробок Linux или OSX)

Если вы используете Windows: используйте расширение PHP SQLSRV http://www.microsoft.com/en-us/download/details.aspx?id=20098.

Если вы используете Linux/Debian, следуйте инструкциям в этой статье. Если вы используете OSX, попробуйте что-то вроде этой статьи http://blog.andyhunt.info/2013/11/29/php-mssql-pdo_dblib-freetds-support-on-mac-osx-10-9-mavericks/.

Я пишу основные MSSQL базы данных объекта, который совместим с обоими расширениями: https://github.com/janjuna/mssql-db

+0

Есть ли причина, по которой вы предлагаете MSSQL вместо PDO? Все, что я читал, говорит о замене функций mysql_ * на PDO. Является ли MSSQL лучше, чем PDO? –

+0

mysql; MSSQL; и PDO в основном три разные вещи, я предлагаю вам узнать разницу между ними, прежде чем принимать решение о том, что использовать. – Kei

Смежные вопросы