トップページ⇒php
1001コメント310KB

【PHP】質問スレッドpart30【php】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/10/25(火) 06:50:06ID:Q4oGlTH3
PHP全般の質問スレです。
【基本ルール】
・新規質問の方は上げてください。age進行でお願いします。
・質問者は2回目以降、最初のレス番号を名前欄に入れてください。
・回答者は質問者に対して>>(アンカー)をつけてください。
・煽り・荒らしは放置。荒らしに反応した香具師も荒(ry
・解決しなくてもこたえてもらったら礼を。
【質問テンプレ】
・マニュアルを調べたか、google検索したか(調べたキーワード)
・タイトル(禁:教えてください!etc) 例:requireとinclude
・内容 例:requireとincludeはどう違うのですか?
・質問する際には環境も明記。
【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークはそれぞれの該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
・オブジェクト指向については良スレがないから本を買え
・速さについては自分でベンチをとってここに書け(違う環境の人も調べてくれるかも)
【PHP マニュアル】
http://www.php.net/manual/ja/
※マニュアル上部の「search for」から検索を活用すべし(便利)。

過去スレ、関連リンク、FAQ等>>2-10辺り
0554nobodyさん2005/11/15(火) 18:04:15ID:???
いや、エラー取得しろよ
0555nobodyさん2005/11/15(火) 18:15:27ID:???
>>551,553
ありがとうございました。

エラーを表示させたところ、
$conn = mysql_connect("localhost","usr");
の行にエラーがあるとのこと・・・

となると、やはりホスト名やユーザ名が怪しい・・・?

/etc/sysconfig/network の HOSTNAMEではなく、localhost固定ですよね?

どちらも実験しましたが、やはりダメでした・・・
0556nobodyさん2005/11/15(火) 18:16:56ID:???
>>555
何てエラーだ?
0557nobodyさん2005/11/15(火) 18:17:57ID:???
>>555
ちゃんと解釈できてないならエラーを略すな
05585502005/11/15(火) 18:19:46ID:???
>>556-557
すみませんすみません。

Fatal error: Call to undefined function mysql_connect() in /var/www/html/simple_connect.php on line 8

というエラーでした。
0559nobodyさん2005/11/15(火) 18:20:43ID:???
ワロス。バカすぎるww
0560nobodyさん2005/11/15(火) 18:23:17ID:???
(´-`).。oO(なんでだろ?)
0561nobodyさん2005/11/15(火) 18:24:02ID:???
いつから
 くだスレのレベル >>> 本スレのレベル
になったんだ。
0562nobodyさん2005/11/15(火) 18:28:02ID:???
このスレが出来たころからでしょうか、、、
0563nobodyさん2005/11/15(火) 18:28:32ID:???
で、今朝は何食った?
0564nobodyさん2005/11/15(火) 18:28:49ID:???
yumでphp-mysqlを拾っておいで
http://jp2.php.net/mysql
0565nobodyさん2005/11/15(火) 18:33:39ID:???
礼儀正しい態度と質問内容の落差が切ないな
FC4使ってるけど最初から入ってた希ガス
05665502005/11/15(火) 18:41:12ID:???
>>564
MySQLはきちんと入れてますが、いまだに原因がわかりません。涙

mysql> select user,host,password from mysql.user;
+------+-----------+------------------+
| user | host | password         |
+------+-----------+------------------+
| root | localhost | xxxxxxxxxxxxxxxxx    |
| usr | 192.% | xxxxxxxxxxxxxxxxx     
| usr | localhost |            |
+------+-----------+------------------+

きちんとユーザつくられているのに・・・涙
0567nobodyさん2005/11/15(火) 18:43:32ID:???
>>550
あのな、>>558のエラーはphpにmysqlの拡張モジュール組み込まれてないせいなの
phpinfoで確認した後、>>564読んで出直しておいで
0568nobodyさん2005/11/15(火) 18:44:41ID:???
ここは釣りを楽しむスレだったんですねwww
0569nobodyさん2005/11/15(火) 18:47:41ID:???
>>566
なんか釣りのような気もしてきたが…

[PHP] <---> [PHPのMySQLモジュール] <---> [MySQL]

オマイさんのシステムには、[PHPのMySQLモジュール] がインストールされていない、
またはインストールされているが、使用するように設定されていない。
今時の Linux の状況は漏れは知らんが、>>564 氏の書かれた yum とかで
インストールできるんぢゃマイカ。
0570nobodyさん2005/11/15(火) 18:48:01ID:???
>>567
ありがとうございました。
拡張モジュールが不足していたんですね。汗

お騒がせ致しましたm(_ _)mペコリ
0571nobodyさん2005/11/15(火) 18:48:30ID:???
PHP自分でコンパイルした?
0572nobodyさん2005/11/15(火) 18:53:43ID:???
5.0.4だからrpmでしょ
05735502005/11/15(火) 18:55:28ID:???
>>571
いえ、rpmで自動的にやりました・・・
問題ありましたか??汗
0574nobodyさん2005/11/15(火) 19:02:07ID:???
次は
Fatal error: Call to undefined function mb_convert_encoding() in . . .
0575nobodyさん2005/11/15(火) 19:06:07ID:???
>>565
FC4公式rpmだとphp-mysqlパッケージで別。
0576nobodyさん2005/11/15(火) 19:21:38ID:???
次に、取得したデータが文字化けするという相談が来る予感。
0577nobodyさん2005/11/15(火) 19:23:23ID:???
エラーばっかりで涙が出てきました。
PHPにはもっと寛大な心を持って欲しい。
0578nobodyさん2005/11/15(火) 19:51:01ID:???
寛大だからエラーがあっても動いてんだろ
つーかデバッグはエラー出してやれよ
思わぬ落とし穴にはまるぞ
0579nobodyさん2005/11/15(火) 20:02:35ID:???
PHPに型とか強制して、違ってたら大量エラーで叱ってくれる機能が欲しい。
0580nobodyさん2005/11/15(火) 20:15:05ID:PU11Oeig
call_user_funcで関数を呼び出してるプログラムがあるのですが、
grepで調べてみると、その関数名を持つ関数がやたらと
たくさんあります。
その場合のcall_user_funcで呼び出される優先度ってどういう
決まりがあるのでしょうか?
0581nobodyさん2005/11/15(火) 20:20:51ID:???
>>580
関数を2回定義したらFATAL ERROR。(オーバーロードもできない)。
grepでひっかかったのって呼び出しじゃないの?
0582nobodyさん2005/11/15(火) 20:23:23ID:???
あるいは
class A { function hoge() {} }
class B { function hoge() {} }
class C { function hoge() {} }
ってオチかと
0583nobodyさん2005/11/15(火) 20:24:56ID:???
if ($foo) { function hoge() {} }
else { function hoge() {} }
もありうるな(あんまないかw)
05845802005/11/15(火) 20:28:05ID:???
>>581
早速のレスどうもです。


別ファイル[ファイルX]に記述されてるのを呼び出してるんですけど見てたら
そのファイル[呼び出し元B]自体がrequire_onceで、
他のファイル[呼び出し元A]に呼ばれてるます('A`)

[呼び出し元A]の中ではrequire_onceで10個ぐらいよびだしてるので
その中のいずれかで、call_user_funcで呼び出してるファイルを
さらに呼び出してるぽいかも。
こういう階層にするのってPHPで一般的なのかな?

grepでひっかかったのは
function 呼び出し関数名(){
ってなってるのでたぶん間違ってないと思います。
本来なら、関数名だけで判断できるように同じ関数名は避けるべきっすよね?

もうちょっと調べてみますー。おかげで考えがまとまりました。
ありがとうございましたー。<m(_)m>
05855802005/11/15(火) 20:29:45ID:PU11Oeig
>>582-583
おお、書いてる間にさらにレスが!ありがとうございます。
classは使ってないぽいです。
if文の中で関数定義なんてできるんすね。
phpって結構なんでもありだなぁ・・・。
0586nobodyさん2005/11/15(火) 20:34:45ID:???
よくわからんけど、
require_once()は、スクリプトの実行時に同じファイ ルが複数回読み込まれ、評価される可能性がある場合に、
関数の再定義や 変数値の再代入といった問題を回避するために一回だけ読み込ませるため に使用します。
(マニュアルより)

も覚えとくといいかも
0587nobodyさん2005/11/15(火) 20:34:48ID:???
次スレは爆笑質問集にスレタイ変更だな
05885502005/11/15(火) 20:49:22ID:???
みなさんのお陰で、どうにかphp-mysqlを入れることができました。

rpm -ihv http://download.fedora.redhat.com/pub/fedora/linux/core/updates/4/i386/php-mysql-5.0.4-10.5.i386.rpm

本当に有難う御座います。
0589nobodyさん2005/11/15(火) 20:53:08ID:???
>>587
ツマンネ
05905802005/11/15(火) 20:59:15ID:???
requireで呼び出してるファイル名を動的に変えて、呼び出す関数自体は
同じ名前にして処理をかえるような仕掛けでした。
人のソースはやっぱ仕掛けがわかりにくいです('A`)
どうも、お騒がせしますた。

>>587
初心者の質問なんてそんなもんじゃ?
0591nobodyさん2005/11/15(火) 21:07:42ID:???
>>590
>>589
05924902005/11/15(火) 21:21:35ID:bjEKtblW
490です。
psql --help の一部です。
Connection options:
-h HOSTNAME specify database server host (default: local socket)
-p PORT specify database server port (default: 5432)
-U NAME specify database user name (default: xxxx)
-W prompt for password (should happen automatically)
上記に合わせて、config.phpを変更しました。が、ダメでした。。。
configの書き方と設定の仕方がわるいのでしょうか?
PHPですか、postgreSQLの設定ですか?
どうしたらいいですか?急いでいます!わかる方,お願いします。
0593名無し募集中。。。2005/11/15(火) 21:26:58ID:???
configの書き方や設定の仕方じゃなくて
掲示板への質問の仕方が悪いんじゃない?
0594nobodyさん2005/11/15(火) 21:35:19ID:???
育ちが悪い
05955322005/11/15(火) 21:35:33ID:???
>592
キタノ?
本物キターーーノ?
ワクテカw
0596nobodyさん2005/11/15(火) 21:37:32ID:???
まだ聞くかw
0597nobodyさん2005/11/15(火) 21:37:53ID:???
誰か暇な奴相手してやってくれ

>>493-495の流れで
>というか、急いでるんです。
と言い出し、挙句の果てには
>>518-519
>ちょっと自分で本屋に行って勉強してみます。
等と戯けた事を言い出す始末だけどna
(つか本を買おうという気もまるでなし('A`))
0598nobodyさん2005/11/15(火) 21:37:58ID:???
期待の大型新人キタ━━━━━━(゚∀゚)━━━━━━ !?
0599nobodyさん2005/11/15(火) 21:39:49ID:???
さぁ盛り上がってまいりました
0600nobodyさん2005/11/15(火) 21:47:24ID:???
>>592
今日は、キチガイのオンパレードだな…

1) postgresへの接続は具体的なコードは?、コードはオマイが書いたのか?
2) configの書き方うんぬんと書いてあるが、configとは何?、内容は何?

>>490 のカキコより
3) エラーメッセージが "unknown host name: localhost" と表示されているが該当マシンで ping localhost はOK?
4) port=8040 となっているが、postgresの初期設定では 5432 のはず。オマイが変更しているのか?
5) 該当マシンで以下を行うと正常に接続できる?
  psql -hlocalhost -p8040 -Utestuser2 -dtestdb2
  psql -h127.0.0.1 -p8040 -Utestuser2 -dtestdb2
  psql -hlocalhost -p5432 -Utestuser2 -dtestdb2
  psql -h127.0.0.1 -p5432 -Utestuser2 -dtestdb2

後、急いでる、急いでるってバカの一つ覚えみたいにわめくな。
急いで解決したければ、質問の仕方から考え直せ。
06014902005/11/15(火) 22:01:24ID:NEc3YLTa
ping localhost 動いてます。
psql -hlocalhost -p8040 -Utestuser2 -dtestdb2
psql -h127.0.0.1 -p8040 -Utestuser2 -dtestdb2
は接続拒否でした。残り2つの-p5432の方はOKです。
config.php
<?php
if(ereg("config.php",$_SERVER["PHP_SELF"]))
{
exit();
}
define("DB_HOST","localhost");
define("DB_PORT",5432);
define("DB_NAME","testdb2");
define("DB_USER","testuser2");


define("DB_CONN","host=" .DB_HOST
."port=" .DB_PORT
."dbname=" .DB_NAME
."user=" .DB_USER);
?>
0602nobodyさん2005/11/15(火) 22:06:15ID:???
>ping localhost 動いてます。

>は接続拒否でした。残り2つの-p5432の方はOKです。

おいおいこれが釣りじゃなく本気ならやべーぞお前技術者向いてないよw
0603nobodyさん2005/11/15(火) 22:13:57ID:???
>>490
ここまでしつこい&知らないと逆に感心するなw

define(."DB_CONN","dbname=" .DB_NAME );

一度これだけでやってみれ、portは5432な
つか本買わないんだったらマニュアル読めや
0604nobodyさん2005/11/15(火) 22:16:29ID:???
やはり一味も二味も違うな
06056002005/11/15(火) 22:18:14ID:???
>>601
ポート8040ってのはどこから出てきたんだ…
その状況だと >>490 の時点とはエラーメッセージが変わってるんじゃないのか?

1) 念のため聞くが、WEBサーバー(PHPが動作しているサーバー)とpostgresが動作している
  サーバーは同じサーバー?
2) 現在のエラーメッセージは?
3) 接続パラメータにパスワードがないが、パスワードなしでOK?
4) 先のカキコで聞いたが、無視しやがるので再度。postgresへ接続する部分の具体的なコードは?
0606nobodyさん2005/11/15(火) 22:20:00ID:???
回答をもらってるのに部分的にスルーって時点で釣りか、精神的にアレなんじゃないのか・・・
0607nobodyさん2005/11/15(火) 22:21:25ID:???
>>605

4)は501あたりじゃね?昨日と同じなら
0608nobodyさん2005/11/15(火) 22:27:04ID:AP0zNwzy
PHPでheader("Content-type: image/png")のように画像を出力しています。
通常の画像〜.pngなどはサーバー側で更新されていなければ再取得せずにキャッシュが使われますが、PHPで書いてある場合にはどのようにしたら同じような挙動をさせることができるでしょうか?
0609nobodyさん2005/11/15(火) 22:29:05ID:???
よく考えりゃテンプレも読めなきゃレスも読めてないんだから
参考書とかマニュアルなんて読めるわけが無いよな
0610nobodyさん2005/11/15(火) 22:29:49ID:???
>>608
ブラウザに依るから何とも言いようが無い
06116082005/11/15(火) 22:32:05ID:???
>>610
むむー、そうなのですか。IEとFirefoxが大半だと思うので、この2つだけでも何とかなりませんか?
06124902005/11/15(火) 22:34:07ID:NEc3YLTa
>>603
ありがとうございます。
>>603
これでいいでしょうか?
config.php
<?php
if(ereg("config.php",$_SERVER["PHP_SELF"]))
{
exit();
}
define("DB_NAME","testdb2");
define("DB_CONN","dbname=" .DB_NAME);
?>
結果ですが、ダメみたいです。
<br /><b>Warning</b>:
pg_connect()
[<a href='function.pg-connect'>
function.pg-connect</a>]
Unable to connect to PostgreSQL server: FATAL:
user "nobody" does not exist
---------------------------------------------------
06134902005/11/15(火) 22:34:33ID:NEc3YLTa
test1.php
<?php
require("config.php");
$db=pg_connect(DB_CONN);
header("Content-Type:text/plain;Charset=EUC-JP");
if($db==FALSE)
{
echo " not connect db?n " ;
}
else
{
echo "database connect ok?n" ;
}
?>
0614nobodyさん2005/11/15(火) 22:38:35ID:???
>>611
Last-Modifiedで何とかならんかな?
0615nobodyさん2005/11/15(火) 22:39:06ID:???
490はもうスルーしようよ
0616nobodyさん2005/11/15(火) 22:45:26ID:???
>>608
rfc嫁
last-modifiedとif-none-matchをみてレスポンス返せばいいが
HTTP1.1に準拠するのは結構面倒だぞ
06176082005/11/15(火) 22:55:52ID:???
>>614
header("Last-modified: 〜")のようにすればいいのですね。

>>616
if-none-matchというのもこれから調べてみます。

ありがとうございました。
0618nobodyさん2005/11/15(火) 22:57:48ID:???
>>617
違う。304レスポンス/ステータスを返す
Web鯖がやってるのと同じことをする
ところで下のほうにくだスレがあるの見えてる?
0619nobodyさん2005/11/15(火) 22:58:47ID:???
>>615
釣りか、知能が異様に低いかのどっちかだな。

前者なら良いが、もしも後者なら490が不憫で・・
06206002005/11/15(火) 22:59:11ID:???
>>607
サンクス。>>490 からのスレを全部読んでいなかった漏れが悪かった。
で、全部読んだら脱力した…。今回とほとんど同じ流れじゃん。
>>490 からすると同じ事を何度も聞きやがって、と思うかもしれんが
聞かれてもしょうがないよな…
スマンが、この件からは離脱するわ。付き合いきれん。
0621nobodyさん2005/11/15(火) 23:02:48ID:???
>>616
つ if-modified-since
0622nobodyさん2005/11/15(火) 23:05:27ID:???
>>620
一つだけ言っておこう。

「おまいは別に悪くないぞ」
0623nobodyさん2005/11/15(火) 23:07:42ID:???
>490

test1.php
<?php
$db=pg_connect("dbname=testdb2 user=testuser2");
if($db==FALSE) {
echo "NG";
} else {
echo "OK";
}
?>

なら、どうよ?
0624nobodyさん2005/11/15(火) 23:11:07ID:???
>>490
user "nobody" does not exist
なんだと思う?
気づけよ┐(´ー`)┌

#623をやって、今度はパスワでエラーかもw
0625nobodyさん2005/11/15(火) 23:14:58ID:???
ダメなのはなんとなく理解しているが、
どうしてダメなのかはサッパリ分かってないし、分かろうともしていない
0626nobodyさん2005/11/15(火) 23:18:02ID:???
このまま尻切れトンボで収束して、明日はまた最初からだな。
急いでいるみたいだから、みんな準備しとけよ。
0627nobodyさん2005/11/15(火) 23:18:41ID:???
>>625
昨日も相手したんだけどねぇ
ぷっスマの時間なので後は頼んだw
0628nobodyさん2005/11/15(火) 23:51:35ID:???
期待の大型新人もぷっすまかな?

”ある意味”こっちのほうがレベル低いよねw

明日こそ旨く伝えられるようにがんばるぞ!
0629nobodyさん2005/11/15(火) 23:55:07ID:???
じゃあ、期待の大型新人はこちらで育成よろしく。
PostgreSQLスレでは、育てきれません。
0630nobodyさん2005/11/16(水) 00:21:48ID:???
>>629
イヤン。お持ち帰り下さいませ。
0631nobodyさん2005/11/16(水) 00:31:30ID:???
>>549が正論だな
下質スレは下質スレなりにレベルを保つって事だな
0632nobodyさん2005/11/16(水) 03:49:50ID:???
くだスレどこがまともなの?
0633nobodyさん2005/11/16(水) 03:53:16ID:???
期待の新人君が沸いて楽しいぞ
0634nobodyさん2005/11/16(水) 06:55:21ID:???
phpizeって何ですか?
06356342005/11/16(水) 07:44:56ID:???
すみません他のスレに行きます。
0636nobodyさん2005/11/16(水) 08:01:21ID:???
>>635
他の星へ行け
0637nobodyさん2005/11/16(水) 11:27:45ID:???
くだらない質問なんだろうなぁと思う奴は控えめ→くだ質へ→控えめなので丁寧に質問→丁寧故に回答を得る→結果的に良質なスレへ
0638nobodyさん2005/11/16(水) 12:30:06ID:???
なんか妙にくだスレをヨイショしたがってる池沼がいるな。
全体的によく見比べれ。つーか低脳はくだスレに帰れ。
0639nobodyさん2005/11/16(水) 12:34:04ID:???
↑みたいなレスが増えると糞スレになってくる。
質問と回答以外書き込まなければいいと思うよ。
0640nobodyさん2005/11/16(水) 12:35:10ID:???
念のため書いときまーす

【基本ルール】
・煽り・荒らしは放置。荒らしに反応した香具師も荒(ry

(>>1より一部引用)
0641nobodyさん2005/11/16(水) 13:59:29ID:???
echo ってなんですか?
0642nobodyさん2005/11/16(水) 14:11:46ID:???
http://php.net/echo
0643nobodyさん2005/11/16(水) 14:20:49ID:pHA2FDGy
配列に関する質問です。
数値をキーとする配列(キーそのものにはあまり意味はないです)に含まれる値だけを取りだして、それをキーとするにはどのようにしたらよいでしょうか?(検索効率を上げるため)
生成された配列の値は使用しないので何でもよく、(キーにするという性質上)重複は削除するものとします。
何か案をお持ちの方いらっしゃいましたらよろしくお願いします。
0644nobodyさん2005/11/16(水) 14:32:10ID:???
array_combine
0645nobodyさん2005/11/16(水) 14:48:02ID:???
>>643
案っていうか、オマイさんが言ったことをゴリゴリと書いても大した手間ではないだろうに。
確かにPHPの関数を使った方が短く書けるだろうけど、それに拘るのなら自分で PHP マニュアルの
array_xxxx 関係を読めばいいのではないのか?
多分、array_values、array_combine 辺りで可能だと思う。
0646nobodyさん2005/11/16(水) 14:51:21ID:pHA2FDGy
>>644
レスありがとうございます。
実はarray_count_valuesで一発だったようです。
array_combineも便利そうですね。
どうもありがとうございましたm(_ _)m
0647nobodyさん2005/11/16(水) 15:03:11ID:???
セッションの管理について詳しく書いてるとこない?
0648nobodyさん2005/11/16(水) 15:47:45ID:???
>>647
マニュアル読んだ?
>>1読んだ?
0649nobodyさん2005/11/17(木) 00:40:21ID:???
490の大型ルーキー今晩こなかったなあ。

生活にハリがなくなったよ。しょぼーん。
0650nobodyさん2005/11/17(木) 00:56:25ID:???
>>649
をを、そういえばこなかったな。
0651nobodyさん2005/11/17(木) 01:20:25ID:???
そのうちまた来るさ。
0652nobodyさん2005/11/17(木) 03:25:55ID:V06oZKlx
任意の正規表現に対して、その正規表現がマッチする文字列をランダムに生成する方法がわかりません。
たとえば$pattern = "/[0-9]{1,2}[A-Za-z]{3,4}/";なら
51TuAG
8ntQb
93dzL
:
のように複数の文字列をランダムに生成する形です。
どなたかご教授いただけますでしょうか?
0653nobodyさん2005/11/17(木) 03:59:17ID:???
性器表現道場へ逝け
06546522005/11/17(木) 04:47:47ID:V06oZKlx
すみません。正規表現そのものの質問ではなく、与えられた正規表現に対するPHPを用いた処理の仕方の質問です。
うまく伝えられなかったようなので申し訳ありません。
■ このスレッドは過去ログ倉庫に格納されています