トップページ⇒php
853コメント275KB

【PHP】初心者コーナー 3 Released【スローモード】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん03/06/11 06:24ID:???
PHPに関するアホな質問はここで、マターリやろな。
ファイル MySQL PostgreSQL 正規表現でも なんでもいってみ
でもな、アホな質問であっても詳しく質問しろよ。 ネタはおもしろく書けよ。

前スレ http://pc2.2ch.net/test/read.cgi/php/1048442813/l50

■PHPの普通の質問はあっちな、【PHP】質問スレッド Part8
 http://pc2.2ch.net/test/read.cgi/php/1050249148/l50
■PHPへ移行したいPerl信者はあっちな、【待望】PerlユーザのためのPHP入門
 http://pc2.2ch.net/test/read.cgi/php/1046326634/l50
■マニュアル嫁ってうるさいのがいるからちょっとは嫁な、
 http://www.php.net/manual/ja/
■おまえ初心者なら入門本くらいかっとけな、PHP関連の書籍(但しPHP出版系お断り)
 http://pc2.2ch.net/test/read.cgi/php/985315574/l50
■これはなズープスと読むらしいがあっちな、XOOPS
 http://pc2.2ch.net/test/read.cgi/php/1031736248/l50

でもな、ここで書きたかったらここで書き。 あとは関連な、>>2 
0412404.HDML ◆StMXML.EXE 03/07/15 02:16ID:???
>>405
どこぞのサイトで「一度インスコしたPHPを再設定する為に再インスコする場
合、元有るファイル群を根刮ぎ消しとかないと設定が反映されてない」みたい
な内容のメモを見た事が有る気がするけど。。実際はドウナンダロウ。

って、解決済だったのか。。(・∀・∀・)

>>410
具体的には以下の一文を".htaccess"に書き加えたりします。
以下では、".php",".phtml","html"の拡張子でPHPを動作させます。

AddType application/x-httpd-php php phtml html

但し、アナタが利用しているウェブサーバで".htaccess"による設定変更を
許可していれば、の話でっせ。
0413404.HDML ◆StMXML.EXE 03/07/15 02:25ID:???
>>411
>AddModule mod_php4.cは指定しないが、同じバージョンの付属のhttpd.confでも
>公開時期の違いで記述に差(ClearModuleListの位置だったか、有無だったかな)があって
>指定しないと駄目な場合もあった。[warn] module mod_php4.c is already added,skipping
>となってるのなら、指定しないでOK。

これは知らなかった。公開時期の違いって具体的には、いつといつの違い?
俺が試したのは、昨日そのうちにダウソしたもの(Apache/1.3.27)なんだけど。
0414nobodyさん03/07/15 03:26ID:???
>>412
がんばって勉強してみます。

読み方はエイチティーアクセスと読むんでしょうか。
0415nobodyさん03/07/15 03:29ID:???
続けてすみません。
.htaccessはセキュリティ上置かない、と言うサーバがありましたが
セキュリティ弱いんですね。
0416404.HDML ◆StMXML.EXE 03/07/15 06:23ID:???
>>414-415
>読み方はエイチティーアクセスと読むんでしょうか。

その通り。

>.htaccessはセキュリティ上置かない、と言うサーバがありましたが
>セキュリティ弱いんですね。

そりゃユーザ任意で好き勝手な設定されたらサーバ管理しづらいからね。
但し、ウェブサーバ管理者の設定によって".htaccess"で変更できる内容を
細かく制限できるので、一概に「セキュリティが云々」というのも、只の
怠け文句の様にしか聞こえんわな。

ああ、そうそう。".htaccess"は、"Apache(アパッチ)"というウェブサーバにて利用できる、
ディレクトリ毎の設定ファイルの事です。
ウェブサーバとしてApacheを採用していない所では使えませんよ。
0417山崎 渉03/07/15 11:06ID:???

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0418nobodyさん03/07/15 11:10ID:1Nim6t2Z
掲示板を作成しています。htmlspecialcharsでhtmlを無効にしているのですが、
一部のタグを使用できるように独自タグを実装し、
[code][/code]を<pre></pre>タグに置き換えています。改行は<br>に置き換えしています。

問題は<pre>タグ内の改行文字も<br>に置き換えているので、見た目上は問題ないのですが、
コピペすると、改行のない1行としてペーストされてしまうのです。
<pre>タグ内の改行が\nならきちんと改行されてコピーできるのを確認しました。

[code]〜[/code]で囲まれた文字内の改行文字だけを"~"などの
特殊な(使わなそうな)文字に置き換える方法はないでしょうか?
表示時に"~"を\nに置き換えたいと思っています。
情報不足でしたら、ご指摘ください。

windows2k apache 1.3.27 php4.2.3の環境で作業しています。
よろしくお願いします。
0419nobodyさん03/07/15 11:12ID:DBSRX3iv
ローカルでPHPをテストしたいんですが
Apacheをインストールしないとだめですか?
0420nobodyさん03/07/15 11:31ID:???
age
0421nobodyさん03/07/15 12:33ID:VrVVC0RB

function error($msg){
echo $msg;
exit;
}

を入れると

Fatal error: Cannot redeclare error() になる…

因みに別の設定ファイルにおいて require してます
0422nobodyさん03/07/15 12:36ID:dUuUFsTq
メールフォームを作ってそこからメールが送られてくるとリナックスサーバに
メール内容を残したいのですがどうすればいいんでしょうか・・・助けてください。
0423nobodyさん03/07/15 12:52ID:???
誰か>>422の文章の訳を助けてください
0424nobodyさん03/07/15 12:57ID:???
メールフォームからリナックスサーバへメールを送信するんじゃねーの?
で、クライアントがサーバのメールを読んで削除してしまうのを
残したいってことか?
0425nobodyさん03/07/15 14:13ID:VrVVC0RB
>>421
requireでなくしたら治った…なんだったんだ
0426nobodyさん03/07/15 14:23ID:dUuUFsTq
>424
だいたいそんな感じなのですが
htmlでメールフォームを作り、送信を押すとリナックスサーバにメールを
送るということなのですが、やり方がわからなくて・・・
メールアドレスに送るのは簡単にできましたが・・・。
よろしくお願いします。
0427nobodyさん03/07/15 14:30ID:???
自動生成したテキストファイルをある操作でパーミッションを変えて
追記できないようにしました。ですが次回そのファイルにアクセスしよ
うとした時にパーミッションを変えた情報はどこにも残していないので
書き込みモードで開くとpermission deniedのエラーになります。

if(!($fp = fopen(***,**))){ error_trap()}
してもエラー処理は続行されますがエラー文は返ってきます。
これを回避するにはどうすればよいでしょうか?
パーッション情報を得て回避させるか完璧なエラー回避の構文に
するかだとは思うんですが具体的な知識がないので困ってます。
ググっても良い解決策は見当たりませんでした。
よろしくお願いします
042842703/07/15 14:43ID:???
ちなみにデバッグの度にphp.iniを書きかえるのは避けたいです
0429nobodyさん03/07/15 15:12ID:???
>>427
書き込む前にパーミッションを変更したらええやん。
0430nobodyさん03/07/15 15:43ID:???
>>427
is_writable("file")で書き込み可能か調べればいい
043142703/07/15 17:21ID:ptJK4UDQ
>>430
おお!そんな手もあるんですね。ありがとうございます。
応急処置でstat(filename)でやってみましたがそちらに切り替えて
みます
0432nobodyさん03/07/15 17:51ID:???
インストールできません

Windows 2000
php 5.0.1b1-win32.zip
apache 2.0.47

手順どおりphpのファイルを展開。
apache起動時にcannnot load c:/php/sapi/php4apache2.dllが
ロードできませんとのエラーメッセージ。
ファイルはあるけど、ロードできないです。
043342703/07/15 17:54ID:ptJK4UDQ
>>430
成功です。ありがとうございました
0434nobodyさん03/07/15 17:56ID:???
>>432
PHP5を入れたいのにphp4apache2.dllを組み込もうとしてるの?
もしPHP4の間違いならすでに動かしている方のhttp.confの一部を
見せてもらうとか
0435nobodyさん03/07/15 17:58ID:???
>>422
>>426
何がやりたいのか?
そもそもメールフォームからのメールの送信は出来ているのか?
そのメールをサーバに置いて何かしたいという事なのか?
0436nobodyさん03/07/15 18:02ID:???
>>434
Download sectionで一番上にあったから5をとったけど
4のがいいのか。

変えてみます。
043739503/07/15 18:19ID:???
原因がわかりました。

httpd.confの
LoadModule php4_module C:/usr/local/php/sapi/php4apache.dll
をいれる位置が問題だったみたいです。
最初は176行目あたりに

# Example:
# LoadModule foo_module modules/mod_foo.so
LoadModule php4_module C:/usr/local/php/sapi/php4apache.dll

としていたのですが、>>411を参考にして、CGIやshtmlのAddHandlerの下あたり848行目に追記したところ
うまくいきました。なんか納得いきませんが。

ちなみに、Apache2ではこのような問題は発生せずすんなりでした。謎。
0438nobodyさん03/07/15 19:04ID:???
>>434
バージョンsageたら上手く逝った。
産休
0439nobodyさん03/07/15 19:19ID:???
PHP5は大規模商用サイトに向いているかもしれんが構造化に関する
部分以外はまだ何が変わったか調べる手間がもったいないと思う。
PHP4.3をいじくり回してみてある程度飲み込めてからでいいんじゃない
すか?
0440nobodyさん03/07/15 19:21ID:ptJK4UDQ
PHPコンパイラがホスイ
0441nobodyさん03/07/15 23:07ID:???
$line =~ s/^(..)(...)//;
正規表現してください,お願いします。
0442nobodyさん03/07/16 00:27ID:???
また見にきたらスレ違いでした。
すみませんです・・・
0443nobodyさん03/07/16 00:40ID:4pRAgQGC
少し板違いかもしれませんが、ここぐらいしか思い当たらなかったので・・

あるデータベース(何故か不明)のテーブルを書き出したtxtファイルがあり、
それをPosrgres+PHPのシステムに移してほしいと頼まれました。
(手元にはそのtxtファイルしかなく、元のデータベースは既に無いらしい・・)
が、あるフィールドがtextareaだったらしく、途中で改行が入っているのです。
id   name   abc(textarea)   tel
1  あああ  あああああ  11111
2  いいい  いいいいい  22222
3  ううう  うう   −−−(ここで改行)
\ううう  33333     −−−(改行の続き)
4  えええ  えええええ  44444
といった感じです。

Excelにインポートして少し配置を変えてからエクスポート、それから
COPYコマンドで入れ直すつもりだったのですが、途中の改行が邪魔をして
(上の例だと、「¥ううう」が、あたかもidのように居座っています)
困っています。しかもレコードは5000件ほどあり、手で直すわけにも・・・

どうにか上手くExcelでいじれる形まで持っていけないでしょうか?
お願いします。
044441503/07/16 00:48ID:???
>>416
どうもありがとう。
少しづつですがわかってきている状態です。
ちなみに僕が使っているとことはファイル設定が出来るそうです。

PHPどころかプログラム初心者なのでめちゃ苦労している状態です。
そもそも、PHPを始めたのはDBを作りたかったからです。
それ以外にもPHPが優れているところはどこなのでしょうか?
皆さんがなぜPHPをやり始めたのか聞かせてもらえませんか。
に比べてそれ以外に
044541503/07/16 00:50ID:???
ごめんなさい。

>>に比べてそれ以外に
↑これいりませんねw
0446nobodyさん03/07/16 00:51ID:???
>>443
データもってきたアホにやらせれば?


ってのは冗談で
本来の行末のフィールドに絶対改行が入らないなら、
一行ずつ取っていってフィールド数がたらんかったら
次の行を追加するようなスクリプト作れば?
0447nobodyさん03/07/16 00:52ID:???
>>443
改行を取り除くっていうかデータを整形するスクリプト
書けばいいんちがう?PerlでもPHPででも。
044844703/07/16 00:54ID:???
かぶった。スマソ。
0449nobodyさん03/07/16 01:32ID:APFwOkck
>>443
というよりタブ空文でも改行でもデータを拾うようにして4フィールど
毎に1つ目のフィールドが数字である事をチェックして真なら改行。
これでよいはず。前述でも同じ結果が得れたらなんでもいいだろうけど
0450nobodyさん03/07/16 01:38ID:???
>>449

ほげほげ
1
1

ってデータが入ってたらどうすんだべさ?
0451404(・∀・∀・)HDML ◆StMXML.EXE 03/07/16 01:42ID:???
>>444
俺の場合、PerlよりハイカラなイメージがPHPに有ったからというだけの理由。
ちなみに今でもド素人の部類に入ると思います。Perlの勉強すらすっとばして
いきなりPHPから始めちゃった訳ですから。
そもそも、自前でアクセス解析スクリプト程度のものを作れればいいかなー、
程度の目標だったんで上達する事も無く。
今借りてるレンタルサーバがSQLに対応してくれていないせいも有って、データ
ベース系を勉強する機会も興味も沸かないし。
0452nobodyさん03/07/16 01:48ID:APFwOkck
>>450
データ4個周期を基本にチェックしてるわけだし。よほどいいかげんな
DB処理でないかぎりIDとデータが混同される事はないでしょ。
0453nobodyさん03/07/16 02:07ID:???
>>452

id  name  abc  tel
1  あああ  あああ(改行)
1(改行)
1  090-xxxx-xxxx(改行)
2  あああ  あああ  090-xxxx-xxxx(改行)

ってのを
split /\t|\n/

ってやるとややこしくなんね?

違うやり方をいってるならスマソ。
045441503/07/16 02:55ID:???
>>451
そうなんですかw
僕の方は幸い、なんでも出来そうな環境が整っています。



DBまでの道のりは長そうなので、まず何Pかカウンターを作ってみました。
で、次なんですけど、何をやろうか迷っています。皆さんの参考を教えてください。

まだ、面白いと思える段階ですw
0455nobodyさん03/07/16 09:14ID:APFwOkck
>>453
まず1行分と予測する生データを4つバッファリングして5つ目のデータ
を参照。5つ目がIDデータだと判断できたら1行分を修正済みを格納す
る配列へ代入。もし5つ目がIDデータでないなら4つ目とくっつける。
で、6つ目をチェック。以下同様。
根本的に異常なデータが混じっていない限りきっちり修正出きると思う。
処理はややこしいかもしれないが確実。無条件な状況判断ではどこか
でおかしな処理をしやすいから串だんごみたいにして1本ずつ丁寧に
修正してやるとよいかも。
2ch互換スクの故障データの修正で体験した
0456nobodyさん03/07/16 16:45ID:IyV1t1TM
Cの__LINE__みたいなマクロって存在しますか?(現在のスクリプト内の行No)
自作のエラー用の関数で、何処で起きたか表示させたいのです
045741803/07/16 17:05ID:???
418です。
力業っぽいですが、解決しましたのでお知らせします。

#<pre class="code">〜</pre>に置き換え後、
$msg = str_replace("\n", "<br />", $msg);
$array = split("pre", $msg);
for($i = 0; $i<count($array); $i++){
if(strstr($array[$i], "class=\"code\"")) $array[$i] = str_replace("<br />","~~", $array[$i]);
}
$msg = join("pre", $array);

表示処理で
$msg = str_replace("~~","\n", $msg);


ありがとうございました。
0458nobodyさん03/07/16 21:11ID:???
変数を明示的に宣言しないと使えないようにする(エラーがでるようにする)ことは出来ないのでしょうか?
(C言語で言うところの int i; のように)
タイプミスで一文字違っただけで数時間も悩むのはもうイヤ!
0459nobodyさん03/07/17 01:05ID:???
>>458
つこてるバージョンによっても違うが、
error-reportのレベルをNOTICEも出力するようにすると出ない?
error_reporting(E_ALL)とか。
http://jp.php.net/manual/ja/function.error-reporting.php

あとは折れは"$文字列"の正規表現で、ファイルあたりの出現回数を
カウントしたりしてる。変数名に固有のプリフィクスつけて管理してるので。
0460nobodyさん03/07/17 06:00ID:???
>>459
get_defined_varsでいいんじゃないの?
0461nobodyさん03/07/18 07:11ID:???
WindowsCE向けのphpはありませんか?
もし存在するならどこにあるか教えてください。
0462nobodyさん03/07/18 10:22ID:???
>>461
Perlなら聞いた事があるが…
0463nobodyさん03/07/18 23:43ID:Uzp0kmuO
PHPの事全く分かりません。
Mac OS �] 10.2.6ですが、
PHPのバージョンてどこをみれば分かるのですか。
0464あぼーんNGNG
あぼーん
0465nobodyさん03/07/19 00:27ID:???
>>464
ナイスタイミング
0466nobodyさん03/07/19 01:26ID:???
>>462
うーん、Perl@CGIなら僕も聞いたことあるのですが、、、残念です。
0467703/07/19 07:32ID:???
>>463
phpinfo見れ
0468nobodyさん03/07/19 12:46ID:???
>>463
CGI/CLIなら、php -v
関数:phpversion()
定義済み定数:PHP_VERSION
0469nobodyさん03/07/22 10:50ID:???
ジャンプさせるために
header("Location: http://hogehoge.com");
をつかってみたのですが、これだとリファラが残ってしまいます。

ソケット関数使わずにリファラを消すにはどうしたらいいですか?
0470nobodyさん03/07/22 20:45ID:???
>>469
困って問題があるのか?

不特定多数を別のサイトに送り込んでカウンタを無駄に上げたりするような用途位のような気がするんだが。困るのは。
0471nobodyさん03/07/23 02:19ID:???
それだったらソケット使ってます。
てか、もう一つページを挟めばいいかな。
適当にがんがって見ます。
0472PHP初心者03/07/23 21:32ID:8eneuWCZ
上でもGETやPOSTについてでてますが、
↓は上のフォームに記述して送信した文字列を下のフォームに表示する、
というものですが、

<body>
<form method="GET" action="form.php">
<p><input type="text" name="text1" size="40"> <input type="submit"
value="送信します" name="b"></p>
<p><input type="text" name="text2" size="40" value="<?php echo $_GET['text1'] ?>"></p>
</form>
</body>

実行すると、

<b>Notice</b>: Undefined index: text1 in <b>C:\Apache Group\Apache\htdocs\samples\form.php</b> on line <b>11</b><br />

というエラーが出ます。どこがおかしいのか、わからなくて困ってます。PHPは4.3.2を使ってます。
よろしくお願いします。
0473nobodyさん03/07/23 21:34ID:???
>>472
取りあえずどこが11行目か解るソース出せやボケ。
0474あぼーんNGNG
あぼーん
0475nobodyさん03/07/23 21:37ID:???
>>473
<p><input type="text" name="text2" size="40" value="<?php echo $_GET['text1'] ?>"></p>

ここが11行目です。
0476nobodyさん03/07/23 21:38ID:???
>>475
セミコロン忘れてるぞ。
0477nobodyさん03/07/23 22:13ID:???
だめだこりゃ
0478nobodyさん03/07/24 00:06ID:???
>>472
そのフォームはtext1を送信するのか受信するのかハッキリしろや
0479nobodyさん03/07/24 08:32ID:???
マニュアルっていつの間にUTF-8になったの ?
namazuで検索したいのでEUC版が欲しいのですが・・・
0480nobodyさん03/07/24 09:41ID:???
PHPを勉強したいんですけど、どの本がいいですかね?
0481nobodyさん03/07/24 10:03ID:???
<?=$a?>の方が短くてすき
0482nobodyさん03/07/24 10:37ID:???
>>472
とりあずNotice出したくないんなら変数を宣言しろ。
if(!isset($_GET[text1])) {$_GET[text1]="";}
if(!isset($_GET[text2])) {$_GET[text2]="";}
048348203/07/24 11:06ID:???
確認したらだめだった
if(!isset($_GET['text1'])) {$_GET['text1']="";}
if(!isset($_GET['text2'])) {$_GET['text2']="";}
こうだね。
0484nobodyさん03/07/24 11:14ID:???
if(!isset($_GET['text1'])) $_GET['text1'] = "";
if(!isset($_GET['text2'])) $_GET['text2'] = "";

むしろこうじゃ無いのかと。

@$_GET['text1'];
@$_GET['text2'];

でもいいけどね。
048547203/07/24 23:31ID:???
>>482-484
@$_GET['text1'];
で解決しました。どうもありがとうございました。
0486nobodyさん03/07/25 03:55ID:???
include についての疑問です。
includeは常時、ファイルをincludeして監視状態なのでしょうか?
ということは、大規模になると、遅くなる原因になるのかなと思いまして。

たとえば、config.phpが、
//config.php
$hoge = "2ch";
$moge = "3ch";
・
・
・
-------------------------
この時、

include "config.php";
echo $hoge;

それとも、
if($hituyou){include"config.php";}
echo $hoge;

こんな感じ。
大規模の時に下の方が負担は軽減される。
と妄想してるんですが、本当はどうなんでしょうか?
0487nobodyさん03/07/25 04:05ID:???
>>486
includeはその時点で全て読み込まれるんじゃ・・・
そのincludeファイルが必要になった時点で読み込めばいいと思うけど。

そんなに遅くなる原因にはならないと思うけど。
0488nobodyさん03/07/25 09:51ID:wJ5ItSln
質問させてください。
phpでgzip圧縮通信がしたくて、php.iniファイルの設定で、

output_handler = ob_gzhandler

としたのですが、これで正しく圧縮通信ができるのでしょうか?
もしできているのなら、それをどうやって確認すればいいでしょうか?
環境はRedHat9.0 Apache2 PHP 4.3です。
0489nobodyさん03/07/25 10:53ID:TM9efvfm
質問です、宜しくおねがいします。
phpのバージョンを4.2.3から4.3.2にアップグレードさせようと考えています。マニュアル、FAQ等でその方法を調べてみたのですが、探し方が悪いのでしょうかイマイチ明快な答えが見つかりません。
一応以下に示す方法を実行しよようと考えているのですが何か安易な気がしてなりません。お気付きの点がありましたらご指摘ください。

私的には、3. でmake clean して前のヴァージョンの makeファイルを削除するのがミソかなと思っているのですが…。
これでは前のヴァージョンをアンインストールすることにならないような気もします。そもそも前のヴァージョンを削除する必要があるのかどうかすら分かりません。
勉強不足で申し訳ありませんが、皆様宜しくお願いします。(昨夜一度質問してみたのですが、どこの板に書いたか見失ってしまいました…)

環境:RedHatLinux7.1+apache1.3.27+php4.2.3

1.まずhttpdを停止する。
$ su
# /etc/init.rd/httpd stop

2.php4.2.3のソースファイルが展開されているディレクトリに移動する。
# cd /usr/local/src/php-4.2.3

3. make clean でmakeファイルを削除する。
# make clean

4.php4.3.2のソースファイルが展開されているディレクトリに移動する。
# cd /usr/local/src/php-4.3.2

5. ./configure を実行する。
# './configure' '--enable-mbstring' '--enable-mbregex' '--enable-zend-multibyte' '--with-pgsql' '--with-apxs=/usr/sbin/apxs' '--without-gd' '--with-zlib' '--with-openssl' '--enable-versioning'

6.make 、make install を実行する。
# make
# make install

7.httpd を起動する。
# /etc/ini.rd/httpd start
0490あぼーんNGNG
あぼーん
0491nobodyさん03/07/25 11:16ID:???
>>489
俺、make cleanやってねーよ。でも動いてるけど。
どうなんだろうね? 試してみたら?
0492あぼーんNGNG
あぼーん
0493nobodyさん03/07/25 11:31ID:???
make clean 必要無いよ
make clean が何をやっているのか考えてみましょう
0494nobodyさん03/07/25 20:46ID:???
index.phpから、count/count.phpを呼び出してカウンタとして使おうとしているのですがうまくいきません。
index.phpからinclude_onceで読むのはうまくいくのですが、
count.phpからこれと同じ場所にあるデータファイルのcount.datを開こうとして

$fp =@fopen( "count.dat", "r") ;

とすると、

Warning: fopen("count.dat", "r") - No such file or directory in *********/count/count.php on line 42

となってしまいます。includeされたファイルの中で別のファイルを開く場合、パスの表記はどのようにすれば良いんでしょうか? 
読み込み元のファイルのディレクトリを基準にするのか、読み込まれたファイルのディレクトリを基準にするのかが分かりません。

と言うより後者ならこれでうまくいくと思うのですが、これだと一つのカウンタで複数ページをカウントさせるのに
面倒な気がするので、もっと良い方法が無いかと探しているのですが…
049548203/07/25 21:19ID:???
>>494
count.datを絶対パスで読み込め
0496 03/07/25 23:54ID:???
↑非常にいい子とイった!
0497nobodyさん03/07/25 23:55ID:OQ729f+c
ズブの初心者なんですが
ネット上によくある、フリーCGIの配布サイトでは時々
「セキュリティホールが見つかったのでバージョンアップしてください」
というようなことが書かれてたりしてますが、
PHPでもセキュリティホールはあるんですか?
あるとしたら、どんなのがまずいんでしょうか

とりあえず、どこかのPHPスレではPHPが「index.php」を吐くのはマズイ、
と書いてありました
フォーム入力を受け付ける、掲示板みたいなものを作る場合、タグを
除去すれば大丈夫ですか?
0498nobodyさん03/07/25 23:57ID:???
>>497
あんめろ
049949403/07/26 00:00ID:???
>>495
分かりました。その方法でやってみます。
ただ思い付きでいろいろ足して分かんなくなってきたので、
一から書直そうと思いますが。ありがとうございました。
0500nobodyさん03/07/26 00:00ID:???
>>498
すいません
おっしゃる意味がわかりません
0501nobodyさん03/07/26 00:00ID:???
>>500
喧嘩売ってんのか?
0502nobodyさん03/07/26 00:02ID:???
>>501
違います
あんめろってなんですか?
0503nobodyさん03/07/26 00:08ID:???
なんとなく気が向いたのでマジレスしてみるテスト。
>>502
PHP自体のセキュリティーホールとヘタレなコーディングによる
セキュリティーホールを混同してない?
「あんめろ」は「あんたには向いてない、やめろ」の意。
(民明書房刊「よくわかるセキュリティホール」より)
0504nobodyさん03/07/26 00:16ID:???
>>503
回答ありがとうです
自分が知りたかったのは、へたれなコーディングによる…の方でした
どんなコーディングがマズイのかな、と思って

「あんめろ」身に沁みました
0505nobodyさん03/07/26 01:21ID:???
>>497
>とりあえず、どこかのPHPスレではPHPが「index.php」を吐くのはマズイ、

なんでマズイの? 俺、吐き出してる。吐き出してる。 
0506あぼーんNGNG
あぼーん
0507あぼーんNGNG
あぼーん
0508nobodyさん03/07/26 03:13ID:83bOjRPY
PHPにファイルのアクセス時間と更新時間を変更するPerlのutimeに
相当するものはない?
てっきりfileutimeみたいな関数があるだろうと思ってマニュアルを
見てみたがどこを探してもない。
どうやって変えるのだ??
0509nobodyさん03/07/26 03:37ID:VZ1x6qD8
>>508
んなこたーない。
"ファイルシステム関数"という章をよく見る。
0510nobodyさん03/07/26 21:05ID:92eVqrLv
2chの掲示板URLみたいに
http://www.hogehoge.com/~hoge/test.php/20030724/2310
↑こんな感じにPHPへデータを渡す方法知りませんか?
0511 ◆AngelH/kMI 03/07/26 21:11ID:???
>>510
test.phpの内容を
<?php
phpinfo(32);
?>
にして結果見てみればわかる。
■ このスレッドは過去ログ倉庫に格納されています