LinuxMySQLPHP

PHP7 MySql error Uncaught Error: Call to undefined function mysql_real_escape_string()

1 Mins read

PHP7の環境へPHP5系のアプリを移動してみたら案の定動かん。。。

モジュール調べたら「mysql_」系が無くなってて「mysqli_」に代わっているのみたいなのでソース内をgrepして片っ端から直したらなんとか動いた♪

mysql_

から

mysqli_

へ「i」つける!

「mysql_select_db」や「mysql_query」は「i」付けるだけではなく、引数の順番も変わっているから念のため、関連する部分は見直しが必要です。

このタイミングで出来ればオブジェクト指向系に変更することをおススメします。
「mysqli::query」感じ!

あと、なんかunset($this)も使えんようになってたみたい。

時代は進むんだぁ

Read more
ApachePHPSQLServerWindows ServerWindows7パソコンのこと

Windows7 Apache2.4.4 PHP5.4.22 SQL Server 2008R2接続 開発環境構築について

1 Mins read

■環境クライアント
Windows7(x64)
LAMPP 1.8.2(x86)
UTF-8

■接続先サーバー
Windows Server 2008R2(x64)
Microsoft SQL Server 2008 (SP3) – 10.0.5500.0 (X64)
UTF-8

■クライアント環境 SQL Server Native Client

[MicrosoftR SQL ServerR 2012 SP1 用 Feature Pack]から
[JPN\x64\sqlncli.msi] Or [JPN\x86\sqlncli.msi]をダウンロードする。

クライアントOSの環境に合わせる。今回はWindow7x64なので場合は[JPN\x64\sqlncli.msi]をインストールする。

また、接続先はSQL Server 2008R2だが下位互換があるため、最新版の2012用を使用する。

http://www.microsoft.com/ja-jp/download/details.aspx?id=35580

■クライアント環境 Drivers for PHP for SQL Server

Microsoft Drivers 3.0 for PHP for SQL Server

今回は
・PHP5.4系
・SQL Server 2008R2
・Native Client 2012用
なので、「Microsoft Drivers 3.0 for PHP for SQL Server」を使用する。
環境により「Microsoft Drivers 2.0 for PHP for SQL Server」と使い分けること。

以下から、ダウンロードしてくる
http://www.microsoft.com/en-us/download/details.aspx?id=20098

回答後のファイルの中からPHP5.4用のextensionを使用する

PHPのスレッドセーフ Or Noneスレッドセーフにより
「php_pdo_sqlsrv_54_ts.dll」 Or 「php_pdo_sqlsrv_54_nts.dll」を使い分ける

あとはPHP.iniに以下を記載する(今回はスレッドセーフ版使用)
extension=php_sqlsrv_54_ts.dll
extension=php_pdo_sqlsrv_54_ts.dll

phpinfoで確認して使用する

PDO&UTF-8指定で接続!

Read more
LinuxMySQLPHP日記

PHP5.4 PDO Connection Windows7で遅い

1 Mins read

気づいたら、1年ぶりの更新だった(汗)

さてさて、開発環境のLAMPを最新版にバージョンアップしてみたら、
PDO経由でのMySQLへのアクセスが遅い遅い、従来の10倍ぐらい時間がかかっている!!!

調べてみたら、PDOのConnectionで遅い。。。。はて?

環境は以下
旧:Apache2.2,MySQL5.1,PHP5.2
新:Apache2.4,MySQL5.5,PHP5.4

どうやら、接続時の文字列を「localhost」にしていたのだが、DNSの名前解決で遅延しているらしい、これを「127.0.0.1」とIP指定してあげたらもとの速度に戻った。

ググるとVista,Win7,Win8で起きるらしい

なんでだ。。。hostにも「localhost 127.0.0.1」と設定したのにダメ

ネットワークのIP6も使用禁止にしたのに

本当の解決方法を知りたい。

Read more
ASP.NETPHPWindows Server

Team Foundation Server 2010 Install

1 Mins read

Team Foundation Server 2010、テスト導入してみたよ!

以下の順番でインストール

1.SQL Server 2008R2 Standard(x64)

2.Sharepoint Server 2010 with sp1(x64)

3.Team Foundation Server 2010(x64)

4.Team Foundation Server 2010 sp1

これでTeam Foundation Serverマネージャーで構成開始

うまくダッシュボード上のグラフが表示されない・・・はて

Windows UpdateやったらOfficeのOWCコンポーネントがUpdateされて、表示OKに!
そういえばOWC11以降は無くなるような記事が出てたけど・・・

VSSにバイバイできるかなぁ

Read more
ASP.NETJavaScriptPHP

eval使用時にJsonでの改行について

1 Mins read

Jsonの項目内の改行コードの記述方法について

サーバーサイドでは\マークはエスケープ文字としてよく利用されている為に
ついつい”\n”の状態にてJsonに含めるとクライアントサイドのeval時にエラーとなる。

なのでエスケープされる場合は”\\n”と2回つけることを忘れべからず!
もちろん多数ある場合も改行コードを上記のように置換処理をすること!

PHPの場合はダブルクォート「”」とシングルクォート「’」でエスケープされる、
されないが変わるので、どちらかに統一するのが望ましい。

これはJsonだけの話ではないが、重要なので記述!
javascript側では受け取ったJsonを展開するときにカッコで囲ってあげること!
例:var a = eval(‘(‘+json+’)’); //このカッコ追加は結構注意!

覚書(^ ^)

Read more