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

【PHP】初心者コーナー 2 Released

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん03/03/24 03:06ID:???

PHPに関するアホな質問はここでやれ。今回からMySQLも受付開始。
アホな質問であっても詳しく質問すること。

PHPが大嫌いなPerl信者もぜひご参加ください。

前スレ
http://pc2.2ch.net/test/read.cgi/php/1011550860/l50  関連>>2-10

普通の質問はこっちな、【PHP】質問スレッド Part7
http://pc2.2ch.net/test/read.cgi/php/1044478561/l50
0082nobodyさん03/03/30 18:29ID:8gZxLTYu
>>80
そうです。
でも、どうしてそういう動作をするのか理解できないのですが、
そういう仕様ですか?
0083nobodyさん03/03/30 18:40ID:???
>>82
IEならそういう仕様です。
0084nobodyさん03/03/30 18:41ID:wfManVtB
箱庭諸島PHP版で登録者のIPがわかる方法とかありませんか?
あらしが出て、、
0085nobodyさん03/03/30 18:43ID:???
>>84
消えろ。
0086nobodyさん03/03/30 18:44ID:SkR8REgM
var_dump(system('ls'));
system('ls',$disk);
var_dump($disk);

みなさん どんな結果がでますか?
どうもsystem関数がうまくいかないっす
0087nobodyさん03/03/30 18:46ID:???
>>86
開発環境はWIndowsです。とか。
0088nobodyさん03/03/30 18:48ID:SkR8REgM
>>87
環境は freeBSDです
0089nobodyさん03/03/30 18:50ID:???
>>88
セキュリティ上禁止されてるとか/binにパスが通ってないとかは?
0090nobodyさん03/03/30 19:01ID:SkR8REgM
/binにパスってどういうことですか?
0091nobodyさん03/03/30 19:06ID:???
>>90
悪い、俺自分が使ってるOSのことも知らない奴って初心者とは認めたくないのよ。
0092nobodyさん03/03/30 20:17ID:SkR8REgM
>>91
safeモードが原因でした すんまそ
0093nobodyさん03/03/30 22:10ID:8gZxLTYu
>>83
なるほど。
ありがとうございました。
00947403/03/31 04:04ID:???
>>76さん
ありがとう。OS Xに移行してから手を出すほうが良いんですね。
今ちょっと金銭的に余裕がないからしばらく先になっちゃうなぁ。
残念だけど。

>>81さん
目的を定めたくてもどこに照準をあわせたら良いのか
わからない段階なんです。phpのことをよくわかっていないので・・・。
(でも興味を持っている)

phpってwebプラグラマーとかプロの人じゃないと敷居が高いですか?
htmlはわかる(あとcgiの設置くらいなら)程度の素人なんですが・・・。
0095nobodyさん03/03/31 04:53ID:???
>>94
いまのところ、phpの習得が目的で具体的に作りたいサイトはまだないってことだよねぇ。
そんなんでつづくのかなぁ。
パソコンには興味あるけど、具体的な用途はなくて結局ゴミになっていくパターンて
よくあったじゃない。それに似ているなと老婆心ながらそう思った。

言語的には全然難しくない。敷居は非常に低い。よって厨房が大量発生中...
htmlしか知らないのは痛いかもしれないけど、phpはサーバサイドで動く言語
と言うのを理解した上で頑張ってくれ。
0096nobodyさん03/03/31 06:49ID:z41dsEAY
今度ISPにレンタルサーバ立ててPHPを使ったWebアプリを作る予定です。
そこではPHPLib, Smartyを使いたいと思っています。
コンパイルなどは許可されないと思うのですが、PHPLibって、そういう
環境でもインストールして利用できるのですか?
0097nobodyさん03/03/31 06:53ID:???
>今度ISPにレンタルサーバ立てて

自宅鯖?ならコンパイルできるだろ。
0098nobodyさん03/03/31 07:25ID:???
>>96
>今度ISPにレンタルサーバ立てて

そんな権限があるのだからコンパイルくらいなんぼでもやらせてもらえるだろ。
0099nobodyさん03/03/31 07:56ID:???
>>97-98
春だなぁ
0100nobodyさん03/03/31 08:00ID:???
>>99
>>96が春満開だからな。陽気に誘われた。
0101nobodyさん03/03/31 12:00ID:bvUigJQk
phpでhogeディレクトリー以下にどれぐらいの容量を使用しているかを
調べるのはどうすればよいでしょうか?
0102nobodyさん03/03/31 12:16ID:???
お前はここ見てゼロからやり直せ!
…みたいな初心者向けの解説サイトありませんか?
0103nobodyさん03/03/31 12:58ID:???
>>102
マンモス本ぐらい買えよ。
0104nobodyさん03/03/31 13:24ID:???
買うなんてもったいない。
0105nobodyさん03/03/31 15:08ID:BOUrZzjH
PHP4.3.1を使っているのですが
リファラーはどのように取得するのでしょうか?

$referer = getenv("HTTP_REFERER");
print "referer:".$refere."<BR>";

これでは取得できないようですが
0106nobodyさん03/03/31 15:13ID:???
>>105
そのページに直接(リンクを介さずに)アクセスしているからでは・・・
それと、本当にその通りに書いたのなら表示されるわけがない。
0107nobodyさん03/03/31 15:35ID:wTMBGJsI
★みんなの情報局★みんなのリンク集★ココ最高★
↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓ ↓
http://www.pink-angel.jp/betu/linkvp2/linkvp.html
0108nobodyさん03/03/31 15:45ID:???
FreeBSD 4.8-PRERELEASE を使っています。
namazu モジュールを組み込もうとしているのですが、
buildconf を実行するとlibtool のバージョンチェックに引っかかって
しまいます。php のソースを展開したディレクトリには、
libtool 1.4.2 が入っていますが、こっちは使ってくれないようで、
/usr/local/bin/libtool 1.3.4 が使われるようです。
/usr/ports/devel/ に入っている3種類のlibtool は、distinfo を
見る限りいずれも1.3.4 でした。
PHP のソースに含まれている1.4.2 バージョンのlibtool を使用するには
どこをどう設定すれば良いのでしょうか?
0109nobodyさん03/03/31 17:26ID:1OU1azxz
ある文字列から,たとえば最初の10文字を取り出したいときはどうすればよいですか?
0110nobodyさん03/03/31 17:40ID:???
>>109
substr()
マニュアル嫁
0111nobodyさん03/03/31 17:43ID:1OU1azxz
>>110
ありがとうございます.わかりました.
もう一つ,Perlでいうところのs/hoge/foo/はどうすればいいでしょうか
0112nobodyさん03/03/31 17:46ID:???
>>111
わかってない
マニュアル嫁
0113nobodyさん03/03/31 17:49ID:1OU1azxz
ごめんなさい.逝ってきます.
0114nobodyさん03/03/31 17:49ID:???
>>109-112
コントですか?
0115nobodyさん03/03/31 17:51ID:???
>>111
まず調べ

                        Perlがでれば・・・
0116nobodyさん03/03/31 18:07ID:1OU1azxz
ごめんなさい.調べたら分かりました.許してください.すみません.
0117nobodyさん03/04/01 01:04ID:???
い、い、いぬが出てきた! phpinfo()
0118nobodyさん03/04/01 01:25ID:???
ワン!
0119nobodyさん03/04/01 02:11ID:???
>95
人によるんじゃないのかな。
最初はただPCでプログラム組んで、それがちゃんと動くだけでも
結構楽しいもんよ。そこで楽しさが感じられない人なら、
何か他の理由付けがないと難しいと思うけど。

>74
折りも、Mac OS X は個人的に結構興味がある。中古のMac買おうかと思ってるぐらい
ただ現行ハードのデザインが好きになれなくてね…せめてG3-266ぐらいのデザインの
機械を一機種でもラインナップに置かないのだ?
なので、取り合えずDarwin/x86で遊んでます。
0120ど素人03/04/01 04:41ID:XkDgOhTm
今日PHP始めました。
以下のようなものを組んだのですが常に『型が違う』と表示されます。
何がおかしいのかご指摘ください。

<FORM METHOD="POST" ACTION="index.php">
▲<INPUT TYPE="TEXT" NAME="a"><BR>
▼<INPUT TYPE="TEXT" NAME="b">
<INPUT TYPE="submit" VALUE="入力">
<INPUT TYPE="reset" VALUE="クリア">
</FORM>

<?php

if ($_POST["a"] !== $_POST["b"]) {
print "型が違う";
} elseif ($_POST["a"] == $_POST["b"]) {
print "▲と▼は等しい";
} elseif ($_POST["a"] > $_POST["b"]) {
print "▲の方が多い";
} else {
print "▼の方が多い";
}

?>
0121nobodyさん03/04/01 04:53ID:???
>>120
> if ($_POST["a"] !== $_POST["b"])

if ($_POST["a"] != $_POST["b"])
0122nobodyさん03/04/01 04:56ID:???
ちょいまて、

!== って型の比較検証する演算子じゃないよ。
0123ど素人03/04/01 04:56ID:XkDgOhTm
>>121
それにしましたが同じでした・・・
0124nobodyさん03/04/01 04:56ID:???
!== は型チェック付きの比較だからいいんじゃねえの?
そのままコピペして動かしてみたが、ちゃんと動いたぞ。
0125ど素人03/04/01 05:00ID:XkDgOhTm
そんなバカな・・・
0126121=12203/04/01 05:03ID:???
>>124
そだた。(汗
0127121=12203/04/01 05:04ID:???
じゃない! 型付比較だけど、型のみの比較じゃない。
0128121=12203/04/01 05:06ID:???
じゃ、なかったけ? (あーもー
if(gettype($_POST["a"]) != gettype($_POST["b"]))
でどよ。
0129ど素人03/04/01 05:09ID:XkDgOhTm
>>128
ナイスガイ
0130nobodyさん03/04/01 05:11ID:???
if    ($_POST["a"]!==$_POST["b"]){}
elseif ($_POST["a"] ==$_POST["b"]){}
これで完結してる
0131ど素人03/04/01 05:16ID:???
あ。>>128だと『型が違う』の表示が出ないですね。
0132121=12203/04/01 05:18ID:???
>>131
たぶん、数値入力でも文字列と認識しているのではないかい。
0133nobodyさん03/04/01 05:21ID:???
!== : $a が $b と等しくないか、同じ型でない場合に TRUE
対偶は、
$aと$bが等しく かつ 同じ型 だな
0134ど素人03/04/01 05:21ID:???
>>132
逆に文字列を入力しても数値と認識してるっぽいです。
013513303/04/01 05:23ID:???
ちげえよ(w >オレ
まぁなんだ、対偶じゃなくてelseのことな
0136nobodyさん03/04/01 05:24ID:???
if    ($_POST["a"]!==$_POST["b"]){}
これいらね。何がしたいのか?
0137ど素人03/04/01 05:26ID:???
TRUEの意味はBASICでいうところのTHENですよね?
0138nobodyさん03/04/01 05:28ID:???
ど素人じゃないじゃんか。
0139ど素人03/04/01 05:30ID:???
PHPは今日始めたところなのでど素人です。
BASICは中学のときちょこっとやりますた。
0140ど素人03/04/01 05:33ID:???
数値以外を入力したときに『型が違う』と表示させたいんですよ・・・
0141121=12203/04/01 05:35ID:???
>>140
is_numericを使えば
0142nobodyさん03/04/01 05:50ID:???
おはよぉ
横からゴメ`/

> is_numericを使えば
PHPってこんな関数もあったんだ。今まで知らなかった。
数値チェックにわざわざ正規表現使って私っていったい・・・(汗
0143nobodyさん03/04/01 06:52ID:???
Cafestaは、日本初のコミュニケーションポータルサイト
無料会員登録で、もれなく商品券が貰えるキャンペーン実施中!!
http://camellia16.fc2web.com/cafesta.html
0144ど素人03/04/01 12:04ID:???
is_numericを使えばということなんですが、

bool is_numeric (mixed var)
varが数値または数値文字列である場合に TRUE、その他の場合にFALSEを返します。

このような形でマニュアルにあるものが多いんですが、
返しますというのを、具体的にどのように使えばいいのかがわからないですねー。
0145nobodyさん03/04/01 12:37ID:16G3l11N
if()
0146ど素人03/04/01 12:44ID:???
>>145
よくわかりました!!
0147nobodyさん03/04/01 21:27ID:???
上司にPHPはお子様の言語だ、と馬鹿にされくやしいです。
しかし漏れは初心者なので言い返せません。
大規模サイトはPHPでは作れないから、というのが理由らしいですが、
なんでですか?!
0148nobodyさん03/04/01 21:29ID:???
>>147
やろうと思えばできるんじゃない?型チェックが無いからレベルの低いプログラマとかSEが集まったら簡単に崩壊しそうだけど。
014914703/04/01 21:33ID:???
ちなみにその上司は「これからはJavaとLinuxだ」と言っていました。
だからといって他の言語にケチをつけるそいつが嫌いです。
つうか、むしろ最初からそいつが嫌いなんですけど。
0150nobodyさん03/04/01 21:35ID:???
>>147
その会社は、
何の制作してんの?
言語は、
何をつかってんの?
0151nobodyさん03/04/01 21:35ID:???
>>149
愚痴りたいだけなら消えろ。
0152nobodyさん03/04/01 21:40ID:???
>>147 春休み暇なのか?(w
0153nobodyさん03/04/01 21:47ID:???
>>152
解雇されて暇なんだろう。
0154nobodyさん03/04/01 21:54ID:???
まあ>>147がPHPで大規模サイトを作れば済む話だな
0155nobodyさん03/04/01 22:28ID:???
>>147
まあまあ、PHPもオブジェクト指向言語へと脱皮を遂げるみたいだから
いいじゃん。
015614703/04/01 22:48ID:???
>>148
そうですね。型宣言がないのはある意味みんなでやるとこんがらがりそうですよね。
>>150
ええと、うちの会社はJavaとかが中心です。まだ出来て5年たってない会社で、派遣が中心です。
なので、開発は独自でやっていません。
>>155
調べたんですが、やっぱりオブジェクト指向が大規模向けなんですね。もう少したてばPHPも
認められるようになりますかね。

俺も、>>154のように自分で大規模サイト作って上司をギャフン言わしたいんですが、
まだ小さい掲示板も作れないからこれから頑張ります。
0157nobodyさん03/04/01 22:54ID:???
>>147
春休み厨にみえる
0158nobodyさん03/04/02 00:50ID:???
>まだ小さい掲示板も作れないからこれから頑張ります。


よくそんなやつ雇ってるなその会社。
0159nobodyさん03/04/02 01:26ID:B/samNKd
うちの会社もPHPからJSPに進みつつあるよ。
でも漏れを含めて2人はまだPHPで開発をしている。
もう1人はあと1ヵ月後に会社を辞める予定。
漏れは会社でどういう風な道を歩んでいくのだろうか。
まあそろそろ辞めてプログラマー以外になろうと思ってるんだけどねー。

まったくおもしろくねーんだよプログラムはよ!
ていうかひたすら同じような書き方なPHPばっかりだったらそら飽きるわ!
SQL引っ張ってきてfor文でまわして1行ずつ表示の処理ばっかりなんだよ!
0160nobodyさん03/04/02 01:50ID:???
>159

じゃあ、たまには XML引っ張ってきてXSLTでどかっと表示させてみれば?
0161nobodyさん03/04/02 01:52ID:???
それは、やり方が間違ってる
0162nobodyさん03/04/02 06:11ID:???
>>159
>ていうかひたすら同じような書き方なPHPばっかりだったらそら飽きるわ!
>SQL引っ張ってきてfor文でまわして1行ずつ表示の処理ばっかりなんだよ!

さっさとライブラリにしろよ。
0163nobodyさん03/04/02 07:31ID:???
>>159

飽きたならJAVA勉強すればー?

ったく使えねぇヤツだな。
0164nobodyさん03/04/02 13:19ID:???
>147
一応yahooもPHPを今後使っていくらしいからな。
早くPHPで動けばいいね。
取りあえずPHPで大規模サイトは作れないのか?と賭けてみれば?
yahooがPHP化したら147は勝つんだから。
0165nobodyさん03/04/02 15:13ID:???
javaに将来見えない気がするんですが・・・
0166 03/04/02 15:47ID:???
このスレやな奴多いなって思ってたけど・・。
答える気もないのに(←答えらんないからだろうけど)偉そうな人多いし。
>>164はいい人だねー。たぶん普通のレスだけど、光って見えるよw
0167nobodyさん03/04/02 15:51ID:???
別にYahooは全てPHPでやるってわけじゃないんだけど(汗
0168ぷふぁ〜ん03/04/02 16:17ID:/rVTQekD
はじめまして、perlからPHPに引っ越してきた初心者です。

CGIで外部サーバ上のhtmlファイルのソースを取得する方法を
調べているのですがこれについて詳しく載っているサイトが
見当たりません..

ソケットを使うということは解っているのですが、プログラミング
初心者なこともあってどういうコードを書けばいいのかさっぱりです。
PHPマニュアル等もいろいろ見て回ったのですがどれも私には説明不足で..

ご存知の方、どうか宜しくお願い致します。m(__)m
0169nobodyさん03/04/02 16:25ID:???
まぬある
file
fopen
fsockopen
さんぷるつき
0170ぷふぁ〜ん03/04/02 17:14ID:/rVTQekD
マニュアルを見ても解らないようじゃダメすぎですよね、
もぅ少し勉強してきます、お忙しいところありがとうございました。(ぺこり)
0171nobodyさん03/04/02 18:14ID:PsDG8e3I
フォームからポストして、MySQLをつかって文字をInsertしているのですが、
文字の中に「?」が含まれている場合は、「?」が「?」に化けてしまいます。
処理はEUCに統一しています。urlencodeなどで試しているのですが、うまく
いきません。解決策などありましたら、よろしくお願いいたします。
0172nobodyさん03/04/02 18:15ID:PsDG8e3I
????????????MySQL????????Insert?????????
??????????????????????????????????????????
???EUC?????????urlencode????????????????
???????????????????????????????
?????????????????????
0173nobodyさん03/04/02 18:19ID:PsDG8e3I
なんどもすみません。

>文字の中に「?」が含まれている場合は、「?」が「?」に化けてしまいます。
の文章は、以下の通りです。

>文字の中に半角の「¥」が含まれている場合は、「¥」が「?」に化けてしまいます。
017410803/04/02 19:35ID:???
FreeBSD を使っていてbuildconf を実行したときにlibtool のバージョンチェックに
引っかかってstop してしまう件ですが・・・
結局、ソースに含まれているlibtool 1.4.2 を使う方法が分からなかったので、
/build/buildcheck.sh 内のチェック行のexit 1 をリマークしてしまいました。
いくつかワーニングが出たものの、configure は生成されたので、
「まいっか。。。」しちゃいました。
#FreeBSD でPHP-RCを使ってる人ってどうやってるんだろう??
0175nobodyさん03/04/02 20:37ID:???
そら勿論libtoolの最新を入れてるが。
0176nobodyさん03/04/02 20:39ID:???
>>173

insertのSQLをここに貼ってみ
0177nobodyさん03/04/02 21:05ID:PsDG8e3I
$que = "insert into tb_item(C_TYPE, C_TEXT) values(¥"$hoge¥", ¥"$hoge2¥")";
こんな感じです。

それと、今わかったのですが、フォームで、hoge.phpにポストして、
$hogehoge = $_POST["hogehoge"];
で拾って、
<?= $hogehoge ?>でブラウザに表示させると、
「¥」が化けるのではなく、カットされてしまいます。
たとえば、「¥hogehoge」とポストしたのに、結果は「hogehoge」となります。

なぜなんでしょうか?
0178nobodyさん03/04/02 21:14ID:???
$que = "insert into tb_item(C_TYPE, C_TEXT) values(¥"$hoge¥", ¥"$hoge2¥")";

の次に

echo $que;

入れてどんなSQLが表示されるか見てみれ。
0179nobodyさん03/04/02 21:29ID:PsDG8e3I
エコーしました。う〜ん。
valuesの変数は初期化していませんので、
insert into tb_item(C_TYPE, C_TEXT) values("", "")
というかんじです。見る限り、問題ないように思います。
0180nobodyさん03/04/02 21:43ID:???
valueが分からなきゃなんの判断も出来ないのだが。
018117703/04/02 22:10ID:9OeHk805
あそっか。すんません。

インサート以前に、先ほども、書いたのですが、
$hogehoge = $_POST["hogehoge"];
この状態ですでに、¥が文字化けしているのです。

■ このスレッドは過去ログ倉庫に格納されています