私的良スレ書庫
不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitterでログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。
元スレMac OS X + PHP + MySQL
php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニューみんなの評価 :
レスフィルター : (試験中)
kaz氏のおかげかCotEditorのPHPはなかなか良いね。
タブ使えればなぁ。
タブ使えればなぁ。
プログラムを実行したら
supplied argument is not a valid MySQL result resource
という文が出てきたのですが、どういう意味なのか教えてもらえないでしょうか?
よろしくお願いします。
supplied argument is not a valid MySQL result resource
という文が出てきたのですが、どういう意味なのか教えてもらえないでしょうか?
よろしくお願いします。
>>113
GD自体は入れたんだけど、元のPHPの場所が分からんくて。。
mac OSはこれが初物で。自分でソース引っ張ってきて
makeして再起動しても有効にならんし、いまいちどこをいじればよいのか不明なんす
GD自体は入れたんだけど、元のPHPの場所が分からんくて。。
mac OSはこれが初物で。自分でソース引っ張ってきて
makeして再起動しても有効にならんし、いまいちどこをいじればよいのか不明なんす
>>115
うーん、というか*nix系でapache/phpを使うのが初めてって事か?
じゃなけりゃアタリが付くはず。わからなくてもphpinfo()の出力に
全てがある。
おれもphpは別ツリーで管理してるなぁ。但しlibphp4.soは
バックアップをとっておけ。じゃないとうpでたんが出たときに
入れ換えられてしまう。
うーん、というか*nix系でapache/phpを使うのが初めてって事か?
じゃなけりゃアタリが付くはず。わからなくてもphpinfo()の出力に
全てがある。
おれもphpは別ツリーで管理してるなぁ。但しlibphp4.soは
バックアップをとっておけ。じゃないとうpでたんが出たときに
入れ換えられてしまう。
昔はdebian使ってた。
phpサイトでおとしたソースファイルに書いてあった、mac osXクライアント版のインストール方法だと、wgetでlibphpをインスコするみたいだね。これだとオプションどうなるんだろ?
phpサイトでおとしたソースファイルに書いてあった、mac osXクライアント版のインストール方法だと、wgetでlibphpをインスコするみたいだね。これだとオプションどうなるんだろ?
多分この人のファイルの事かな。
つhttp://www.entropy.ch/software/macosx/
おれは使ったことないからわかんないけど、とにかく
phpinfo()の内容を自分で確認汁。
つhttp://www.entropy.ch/software/macosx/
おれは使ったことないからわかんないけど、とにかく
phpinfo()の内容を自分で確認汁。
俺UNIXとかわからないが、libjpegとかその他いろいろ
ググりながら./configure、make、make insutallを繰り返して
いよいよphpのコンパイルまできたんだけど、
make中curl.cってところでエラー出でた。
ほんでCURLのバージョン落としたり、macportからインコしたCURLを指定しても
同様のエラーでmakeできないんだけどcurl.cがわるいのかね?
今夜はphpのバージョン落としてためしてみるかな・・・
ググりながら./configure、make、make insutallを繰り返して
いよいよphpのコンパイルまできたんだけど、
make中curl.cってところでエラー出でた。
ほんでCURLのバージョン落としたり、macportからインコしたCURLを指定しても
同様のエラーでmakeできないんだけどcurl.cがわるいのかね?
今夜はphpのバージョン落としてためしてみるかな・・・
phpinfoだと、こんな感じ。
'/SourceCache/apache_mod_php/apache_mod_php-18.8/php/configure'
'--prefix=/usr' '--mandir=/usr/share/man'
'--infodir=/usr/share/info' '--disable-dependency-tracking'
'--with-apxs' '--with-ldap=/usr' '--with-kerberos=/usr'
'--enable-cli' '--with-zlib-dir=/usr' '--enable-trans-sid'
'--with-xml' '--enable-exif' '--enable-ftp' '--enable-mbstring'
'--enable-mbregex' '--enable-dbx' '--enable-sockets'
'--with-iodbc=/usr' '--with-curl=/usr'
'--with-config-file-path=/etc' '--sysconfdir=/private/etc'
'--with-mysql=/usr' '--with-mysql-sock=/var/mysql/mysql.sock'
'--without-pear'
んで、プラスして
'--with-gd'
とねじ込みたいんだよね。
環境的には、
Intel mac mini
OS X Tiger
うーむ、困った。。
'/SourceCache/apache_mod_php/apache_mod_php-18.8/php/configure'
'--prefix=/usr' '--mandir=/usr/share/man'
'--infodir=/usr/share/info' '--disable-dependency-tracking'
'--with-apxs' '--with-ldap=/usr' '--with-kerberos=/usr'
'--enable-cli' '--with-zlib-dir=/usr' '--enable-trans-sid'
'--with-xml' '--enable-exif' '--enable-ftp' '--enable-mbstring'
'--enable-mbregex' '--enable-dbx' '--enable-sockets'
'--with-iodbc=/usr' '--with-curl=/usr'
'--with-config-file-path=/etc' '--sysconfdir=/private/etc'
'--with-mysql=/usr' '--with-mysql-sock=/var/mysql/mysql.sock'
'--without-pear'
んで、プラスして
'--with-gd'
とねじ込みたいんだよね。
環境的には、
Intel mac mini
OS X Tiger
うーむ、困った。。
デフォルトのPHPはセキュリティーアップデートのときに勝手にバージョンアップされたり、
自分で設定した項目が戻されるみたいなことどっかで見たんだけど
prefixで/usr/localを指定すればセキュリティーアップデートに影響しない?
自分で設定した項目が戻されるみたいなことどっかで見たんだけど
prefixで/usr/localを指定すればセキュリティーアップデートに影響しない?
--prefix=/usr/local でも --with-apxs(=/usr/sbin/apxs) なら libphp4.so は /usr/libexec/httpd に入るから影響するよ。
>>120
こんな感じでいけるはず。とりあえず make までは試した。
1. autoconf やら automake やらをインストール
2. PHP-4.4 系のソースコードを入手
3. tar xfj php-4.4.4.tar.bz2
4. cd php-4.4.4/ext/gd
5. /usr/bin/phpize
6. ./configure --with-php-config=/usr/bin/php-config --with-gd \
--with-jpeg-dir=/hoge --with-png-dir=/hoge --with-zlib-dir=/hoge --with-freetype-dir=/hoge
7. make
8. sudo make install
9. sudo cp /etc/php.ini.default /etc/php.ini
10. /etc/php.ini を編集
extension_dir = "./" をコメントアウト (行頭に ; を入れる)
extension=gd.so と一行追加
11. システム環境設定でパーソナルWeb共有を停止→開始
GD ライブラリはインストール不要っていうか PHP バンドル版の GD を使ったほうが使える関数が多いので configure でパスを指定しない。
>>120
こんな感じでいけるはず。とりあえず make までは試した。
1. autoconf やら automake やらをインストール
2. PHP-4.4 系のソースコードを入手
3. tar xfj php-4.4.4.tar.bz2
4. cd php-4.4.4/ext/gd
5. /usr/bin/phpize
6. ./configure --with-php-config=/usr/bin/php-config --with-gd \
--with-jpeg-dir=/hoge --with-png-dir=/hoge --with-zlib-dir=/hoge --with-freetype-dir=/hoge
7. make
8. sudo make install
9. sudo cp /etc/php.ini.default /etc/php.ini
10. /etc/php.ini を編集
extension_dir = "./" をコメントアウト (行頭に ; を入れる)
extension=gd.so と一行追加
11. システム環境設定でパーソナルWeb共有を停止→開始
GD ライブラリはインストール不要っていうか PHP バンドル版の GD を使ったほうが使える関数が多いので configure でパスを指定しない。
ごめん無理だった。
なんか OSX デフォの PHP は C 言語レベルで足りないグローバル変数がいっぱいあるみたいで
DSO として拡張モジュールを入れるのは無理くさい。
全部入れ直しだね。
なんか OSX デフォの PHP は C 言語レベルで足りないグローバル変数がいっぱいあるみたいで
DSO として拡張モジュールを入れるのは無理くさい。
全部入れ直しだね。
>>124
>セキュリティーアップデート時にlibphp4.soを退避させる
でok.
>ライブラリ群は個別に用意する必要があるってこと?
ライブラリというか、PHP全部を自分でコンパイルする必要あり。
慣れるとそう難しくもないんだけど、面倒くさかったらMacPortsで
sudo port install php4 +apache +gd +macosx
か
sudo port install php5 +apache +macosx
で一発よ。
>セキュリティーアップデート時にlibphp4.soを退避させる
でok.
>ライブラリ群は個別に用意する必要があるってこと?
ライブラリというか、PHP全部を自分でコンパイルする必要あり。
慣れるとそう難しくもないんだけど、面倒くさかったらMacPortsで
sudo port install php4 +apache +gd +macosx
か
sudo port install php5 +apache +macosx
で一発よ。
>>119
curl関数ってphpで使う?
とりあえず、ディテクトリ?指定しなきゃmake通ると思う。
NG: --with-cul=/hoge
OK: --with-curl
>>121
jaguarから使ってるけど、セキュリティーアップデートで勝手にいじられた覚えはないなぁ。>libphp4.so
httpd.confは書き変えられたことはあるが。
セキュリティーアップデートのphpより上のバージョン使ってれば大丈夫なんじゃい?
>>122
--with-gdだけでバンドル版は入ったという記憶がある。
(いや、--with-gdすらいらなかったっけ?)
--with-jpeg-dirとかはいらない。
指定したい場合は、ライブラリを自分でインストールしないとダメ。
curl関数ってphpで使う?
とりあえず、ディテクトリ?指定しなきゃmake通ると思う。
NG: --with-cul=/hoge
OK: --with-curl
>>121
jaguarから使ってるけど、セキュリティーアップデートで勝手にいじられた覚えはないなぁ。>libphp4.so
httpd.confは書き変えられたことはあるが。
セキュリティーアップデートのphpより上のバージョン使ってれば大丈夫なんじゃい?
>>122
--with-gdだけでバンドル版は入ったという記憶がある。
(いや、--with-gdすらいらなかったっけ?)
--with-jpeg-dirとかはいらない。
指定したい場合は、ライブラリを自分でインストールしないとダメ。
>>125
thx
んで、macportsをいれて、再度書いてもらったコマンド入れたら、柿のようなエラーが。。
If this is your first install, you might want
* copy /opt/local/etc/php4/pear.conf.sample to /opt/local/etc/php4/pear.conf
---> Activating php4 4.4.4_2+darwin_8+macosx
Error: Target com.apple.activate returned: Image error: /opt/local/lib/php4/.channels/.alias/pear.txt already exists and does not belong to a registered port. Unable to activate port php4.
Error: Status 1 encountered during processing.
原因なんだろう。
php自体に問題あるのかと思い、単体で入れても上記と同様のエラーが。うーむ、もう少し調べてみるか。
thx
んで、macportsをいれて、再度書いてもらったコマンド入れたら、柿のようなエラーが。。
If this is your first install, you might want
* copy /opt/local/etc/php4/pear.conf.sample to /opt/local/etc/php4/pear.conf
---> Activating php4 4.4.4_2+darwin_8+macosx
Error: Target com.apple.activate returned: Image error: /opt/local/lib/php4/.channels/.alias/pear.txt already exists and does not belong to a registered port. Unable to activate port php4.
Error: Status 1 encountered during processing.
原因なんだろう。
php自体に問題あるのかと思い、単体で入れても上記と同様のエラーが。うーむ、もう少し調べてみるか。
自己レス
errorに表示されてるファイルを消しまくっていったらとりあえずはエラーは出なくなった。
が、再起動後phpinfoみても全く変わってなし(゚Д゚;)。。
errorに表示されてるファイルを消しまくっていったらとりあえずはエラーは出なくなった。
が、再起動後phpinfoみても全く変わってなし(゚Д゚;)。。
>>129
どうやっているか、全部晒してみ
どうやっているか、全部晒してみ
んと、
とりあえず、色々試してみた。
1.sudo port install php4 +apache +gd +macosx
→128のようなエラーが出た。
がfind / -name "libphp4.so"で検索するとそれらしきものが/opt配下に出来てるので、
↑を/usr/libexec/にコピーして、再起動してみた。
既にインスコ済みのmysqlに接続できないのでとりあえずやめ。
2.sudo port install php4 +apache +gd +macosx +mysql
→mysqlも一緒に入って、かつgdも入った。いけそうかと思ったが、
新しく入ったmysqlにsocket関連のエラー出力ではいれず、とりあえずやめ。
3.http://www.entropy.ch/software/macosx/php/からphp5+apache1.3のパッケージを
引っ張ってきて入れて再起動してみるも、bus errorでapache起動せず。
という感じで今はintel mac os X client用に用意されているlibphp4.soを探し中。
昔は
http://www2.entropy.ch/download/libphp4.so.gz
http://www.diax.ch/users/liyanage/software/macosx/libphp4.so.gz
でいけたっぽいが今はnot foundらしい(PPC用?)。
とりあえず、色々試してみた。
1.sudo port install php4 +apache +gd +macosx
→128のようなエラーが出た。
がfind / -name "libphp4.so"で検索するとそれらしきものが/opt配下に出来てるので、
↑を/usr/libexec/にコピーして、再起動してみた。
既にインスコ済みのmysqlに接続できないのでとりあえずやめ。
2.sudo port install php4 +apache +gd +macosx +mysql
→mysqlも一緒に入って、かつgdも入った。いけそうかと思ったが、
新しく入ったmysqlにsocket関連のエラー出力ではいれず、とりあえずやめ。
3.http://www.entropy.ch/software/macosx/php/からphp5+apache1.3のパッケージを
引っ張ってきて入れて再起動してみるも、bus errorでapache起動せず。
という感じで今はintel mac os X client用に用意されているlibphp4.soを探し中。
昔は
http://www2.entropy.ch/download/libphp4.so.gz
http://www.diax.ch/users/liyanage/software/macosx/libphp4.so.gz
でいけたっぽいが今はnot foundらしい(PPC用?)。
>>132
とりあえず、/optもろとも全部消してから、portsの再インストール。
バイナリで入れたんなら、/Library/Receipts/内にゴミがあるからとりあえず、
それも消す。
portsで入れたんなら、/usr以下は関係ない。
というか触ると余計はまる。
一遍にいろいろやらないで、少しずつやってみれば?
例えばさ、こんだけでもOKじゃん。
./configure --with-apxs=/usr/sbin/apxs
で、うまく動いたら少しずつオプション増やしてく。
動かんと泣きたくなるけど、まぁ、がんばれ。
とりあえず、/optもろとも全部消してから、portsの再インストール。
バイナリで入れたんなら、/Library/Receipts/内にゴミがあるからとりあえず、
それも消す。
portsで入れたんなら、/usr以下は関係ない。
というか触ると余計はまる。
一遍にいろいろやらないで、少しずつやってみれば?
例えばさ、こんだけでもOKじゃん。
./configure --with-apxs=/usr/sbin/apxs
で、うまく動いたら少しずつオプション増やしてく。
動かんと泣きたくなるけど、まぁ、がんばれ。
>>133-134
THX
はまりまくったが、何とか動かした。。
かなり力業っぽいが、ご愛嬌で。
以下に手順を書いておくので、同様にはまりまくった人は見てほしいです。
まず、
◆既存システム情報
・intel mac OS X Tiger(mac mini)
・apache1.3(バンドル版)
・php4(バンドル版)
・mysql5(パッケージでいれた)
んで、
◆目的
・バンドル版php4でGDを動かす。
長いので続く
THX
はまりまくったが、何とか動かした。。
かなり力業っぽいが、ご愛嬌で。
以下に手順を書いておくので、同様にはまりまくった人は見てほしいです。
まず、
◆既存システム情報
・intel mac OS X Tiger(mac mini)
・apache1.3(バンドル版)
・php4(バンドル版)
・mysql5(パッケージでいれた)
んで、
◆目的
・バンドル版php4でGDを動かす。
長いので続く
そいで、
◆やったこと
・Macportsから以下のコマンドでインストール
sudo port install php4 +apache +gd +macosx +mysql5
→エラーはでまくるが無視
・出来たlibphp4.soを/usr/libexec/httpd/にコピー
・既存php.iniを/opt/local/etc/にコピー
・既存mysqlディレクトリを、新規でインストールされたmysqlディレクトリにディレクトリごとコピー
・再起動
Mysql + GD + PHP のシステムが動いた。というかzenphotoなんだけどさ。
ちゅうことでとりあえず美しくはないが、できましたんで、ご報告。
クソ疲れたわ。。
◆やったこと
・Macportsから以下のコマンドでインストール
sudo port install php4 +apache +gd +macosx +mysql5
→エラーはでまくるが無視
・出来たlibphp4.soを/usr/libexec/httpd/にコピー
・既存php.iniを/opt/local/etc/にコピー
・既存mysqlディレクトリを、新規でインストールされたmysqlディレクトリにディレクトリごとコピー
・再起動
Mysql + GD + PHP のシステムが動いた。というかzenphotoなんだけどさ。
ちゅうことでとりあえず美しくはないが、できましたんで、ご報告。
クソ疲れたわ。。
俺も自前コンパイルできたw
一回makeでこけたらmake cleanしろってことだなw
一回makeでこけたらmake cleanしろってことだなw
Mac OS XでのPHPの野良ビルドは難しくねーだろ。
躓くとすれば依存ファイルとか。
躓くとすれば依存ファイルとか。
>>138
マウス操作でなんでもやってきた人には仕切り高いよ。
マウス操作でなんでもやってきた人には仕切り高いよ。
OS10.4.8
にPHP5をmakeしようと思ってconfigureしたのですが、mysqlのところでerrorになってしまいますた。
mysqlの設定はデフォルトで入っていたphp4のconfigureオプションの通りにしたのですがいいかの様なエラーが出てしまいます。。
configure: error: Cannot find MySQL header files under /usr.
Note that the MySQL client library is not bundled anymore!
これを見る限りもっと具体的なパスを指定しないとイケナイみたいですが、
OSXのどこにmysqlがインストールされているのかが分かりません。。orz
whereisしてもみつかりません。。orz
デフォルトのphp4のinfoだとmysql enableになっているのに。。なんでこの設定じゃイケナイんだろう。。
実行したオプション:
./configure --prefix=/usr/local --with-apxs --with-ldap=/usr
--with-kerberos=/usr --enable-cli --with-zlib-dir=/usr
--enable-trans-sid --with-xml --enable-exif --enable-ftp
--enable-mbstring --enable-mbregex --enable-dbx --enable-sockets
--with-iodbc=/usr --with-curl=/usr --with-config-file-path=/etc
--sysconfdir=/private/etc --with-mysql=/usr --with-mysql-sock=/var/mysql/mysql.sock
--without-pear --enable-sqlite-utf8 --enable-zend-multibyte
にPHP5をmakeしようと思ってconfigureしたのですが、mysqlのところでerrorになってしまいますた。
mysqlの設定はデフォルトで入っていたphp4のconfigureオプションの通りにしたのですがいいかの様なエラーが出てしまいます。。
configure: error: Cannot find MySQL header files under /usr.
Note that the MySQL client library is not bundled anymore!
これを見る限りもっと具体的なパスを指定しないとイケナイみたいですが、
OSXのどこにmysqlがインストールされているのかが分かりません。。orz
whereisしてもみつかりません。。orz
デフォルトのphp4のinfoだとmysql enableになっているのに。。なんでこの設定じゃイケナイんだろう。。
実行したオプション:
./configure --prefix=/usr/local --with-apxs --with-ldap=/usr
--with-kerberos=/usr --enable-cli --with-zlib-dir=/usr
--enable-trans-sid --with-xml --enable-exif --enable-ftp
--enable-mbstring --enable-mbregex --enable-dbx --enable-sockets
--with-iodbc=/usr --with-curl=/usr --with-config-file-path=/etc
--sysconfdir=/private/etc --with-mysql=/usr --with-mysql-sock=/var/mysql/mysql.sock
--without-pear --enable-sqlite-utf8 --enable-zend-multibyte
>>140
MYSQLいれてないんじゃ?
MYSQLいれてないんじゃ?
>>141
はい、、入れてないです。。
でもOSXってMySQLデフォルトで入ってませんでしたっけ。。いや入ってないんですねご免なさいm(__)m
じゃ、sqliteでいいやー。ありがとー141さ~ん。
はい、、入れてないです。。
でもOSXってMySQLデフォルトで入ってませんでしたっけ。。いや入ってないんですねご免なさいm(__)m
じゃ、sqliteでいいやー。ありがとー141さ~ん。
mysql5をインストールしてphpmyadminからデータ入力をしたら「???」
のように日本語文字が化けてしまうんだけどmysqlの日本語の取扱についての
対策方法ってどんなのがあります?
現状でmy.cnfに以下のような設定を記述したんだけど状況は変わらずです。
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
skip-character-set-client-handshake
socket = /tmp/mysql.sock
old-passwords
[mysqldump]
default-character-set=utf8
[mysql]
default-character-set=utf8
のように日本語文字が化けてしまうんだけどmysqlの日本語の取扱についての
対策方法ってどんなのがあります?
現状でmy.cnfに以下のような設定を記述したんだけど状況は変わらずです。
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
skip-character-set-client-handshake
socket = /tmp/mysql.sock
old-passwords
[mysqldump]
default-character-set=utf8
[mysql]
default-character-set=utf8
MYSQLにて
mysql> GRANT ALL PRIVILEGES ON *.* TO guest@"%" IDENTIFIED BY 'pass';
を実行しguestユーザーを作成
PHPにて
<?mysql_connect('localhost', 'guest', 'pass');?>
接続OK
<?mysql_connect('123.456.789.123:3307', 'guest', 'pass');?>
接続NG
なんだが、
別のサーバーからDBに入っている情報を取り出したいのだがどうしたらいいのですか?
mysql> GRANT ALL PRIVILEGES ON *.* TO guest@"%" IDENTIFIED BY 'pass';
を実行しguestユーザーを作成
PHPにて
<?mysql_connect('localhost', 'guest', 'pass');?>
接続OK
<?mysql_connect('123.456.789.123:3307', 'guest', 'pass');?>
接続NG
なんだが、
別のサーバーからDBに入っている情報を取り出したいのだがどうしたらいいのですか?
>>146
123.456.789.123の3307ポートは開いているのかい?
123.456.789.123の3307ポートは開いているのかい?
>>148
と聞かれれば出来るとこたえる。おれは嫌だけどな。
と聞かれれば出来るとこたえる。おれは嫌だけどな。
類似してるかもしれないスレッド
- CGI VS PHP VS JAVA (341) - [25%] - 2017/12/31 9:30
- Apache + MySQL + PHP (89) - [23%] - 2018/5/20 9:31
トップメニューへ / →のくす牧場書庫について