【PHP】初心者コーナー 

このエントリーをはてなブックマークに追加
1名無しさん@お腹いっぱい。
長島も阪神のコーチになった。
仕方ない、人気のないPHPを応援してやる。 

データベース禁止 MySQL PostgreSQL はどっかいけ。
純粋にPHPプログラミングだけ。
初歩的な事ならWebProg板の誰かが素早く教える。
もちろんPerlプログラマーも手伝ってくれ。
ほんじゃ質問してみ。

 >>2-9 誰か情報かいてくれ。
2 ◆gdPRETTY :02/01/21 03:54 ID:???
(=^∇^)ノ”糞スレばいび〜♪・:*:・・:*:・・:*:・
3名無しさん@お腹いっぱい。:02/01/21 03:54 ID:???
http://pc.2ch.net/test/read.cgi/php/1003283567/l50

>>1 削除依頼出しとけよ。

-----------------------廃棄-----------------------
4名無しさん@お腹いっぱい。:02/01/21 06:05 ID:???
PHPは 「 Perfect Hacking Process 」 の略です。
5名無しさん@お腹いっぱい。:02/01/21 10:35 ID:???
PHPでDBに絡めないような奴は
間違い無く、純粋なPHPプログラミングも駄目 (笑
6名無しさん@お腹いっぱい。:02/01/21 11:21 ID:???
初心者は、DB使った方がラクでしょ
掲示板作るにしてもDBの方がめちゃ簡単
7名無しさん@お腹いっぱい。:02/01/21 11:58 ID:???
PHPやってる奴は閉鎖的なのか? perlやっとけ(笑
8名無しさん@お腹いっぱい。:02/01/21 12:08 ID:???
>>7
ageんな猿
9名無しさん@お腹いっぱい。:02/01/21 12:23 ID:yoj+oXnk
あげっ!
10名無しさん@お腹いっぱい。:02/01/21 12:47 ID:???
>>9
やると思った。ワンパターン厨が。
11名無しさん@お腹いっぱい。:02/01/21 12:55 ID:???
おまえがな!  笑っ
12名無しさん@お腹いっぱい。:02/01/21 15:34 ID:???
PHPは"ピップ"であってますよね!
13sage:02/01/21 15:57 ID:???
おまえは "ピップ" と呼ぶといいな。 おれは "ペップ" だ。(笑
14名無しさん@お腹いっぱい。:02/01/21 16:05 ID:???
>>13
ageんな猿 !
15名無しさん@お腹いっぱい。:02/01/21 16:23 ID:???
ペフプと俺は読んでる。
16名無しさん@お腹いっぱい。:02/01/21 18:02 ID:???
ペフプ 言い辛くないか。普通は”ピーエッチピー”読むんだが、
これからは”ペピー”と 読むようにしなさい。
17名無しさん@お腹いっぱい。:02/01/21 20:53 ID:???
ポピーと呼ぶことにしています
18名無しさん@お腹いっぱい。:02/01/21 22:36 ID:???
DB失ったPHPなんて羽をもがれた鳥のようなものだ。
19名無しさん@お腹いっぱい。:02/01/22 00:39 ID:???
しったかがちらほらと・・・。
PHPはすぐDBもってくるから初心者はひくだろうな。

終了
20名無しさん@お腹いっぱい。:02/01/24 00:34 ID:???
echo と print は まったく同じモノなんすか? 
微妙にちがうんかな・・・。
21名無しさん@お腹いっぱい。:02/01/24 08:31 ID:???
>20
微妙に同じなんでしょう?
22名無しさん@お腹いっぱい。:02/01/24 15:29 ID:???
>21
ヒヒヒ 微妙に同じかぁ ほんじゃ考えず前すすもっと。
ありがとうございました。
23名無しさん@お腹いっぱい。:02/01/24 21:35 ID:???
また質問 レスみると掲示板すらDB使わないと、うんこみたいに書いてるんですが、
DB使うまでもないものつくるんですがPHPはファイル保存に弱いとか面倒とかあるんですか?
24名無しさん@お腹いっぱい。:02/01/24 22:19 ID:???
>>23
そうでもない。
ただ、PHPはDBを利用しやすいので使ったほうが良いってくらい。
25名無しさん@お腹いっぱい。:02/01/24 23:25 ID:???
どうもどうも なるほど、ただそれだけですか。PerlからなのでDB自体なれないというか必要ないので、
ファイルで済ませらるならそれでいいんですよね。open の扱いもちょっと違いますが、
けっこういいかもです。ありがとうございました。
26nobodyさん:02/06/14 02:54 ID:FC4/Kzi2
includeで呼び出したphpファイルから、
呼び出し元のページのURLを知るにはどうしたらいいでしょうか?
27nobodyさん:02/06/14 02:57 ID:???
何故半年弱前のスレをageるかなぁ。
2826:02/06/14 14:13 ID:???
Perlには初心者スレがあったのでいいかなぁとついすいません。
26の質問は普通にincludeすればそれでよかったんですね、、
サーバURLをフルパスでincludeしていました。。
ところで、この板は時間の流れが長江のように悠久ですね。
29602:02/06/15 13:46 ID:wm0xi3kp
PerlとPHPとの違いなんですか?
30nobodyさん:02/06/15 18:34 ID:SERZ+ITN
漢と女
31nobodyさん:02/06/16 14:02 ID:wZu+S5Ry
>>28
> ところで、この板は時間の流れが長江のように悠久ですね。

( ´_ゝ`) プッ
3232:02/06/16 18:36 ID:tQ04t5ya
Redhat7.2
Apache2

の環境でphp4.0(rpm)をインストールしても
phpファイルがダウンロードになっちまうんだけど、
こりゃなにがわるいんだい。

自分でも何言ってるのかわからないので詳しい人助けてくだしあ。

ちなみに、ずるぽんあぷろだのphp版を動かそうと思っています。
ただそれだけ自分の鯖でやりたいのでよろすく、、、

http://php.s3.to/
33nobodyさん:02/06/16 18:49 ID:???
>>32
アパッチの設定だ
34nobodyさん:02/06/16 19:12 ID:E0oiz+KW
$HTTP_SESSION_VARS['a'] = array("",$b);

って、できるんだっけ?できないんだっけ?
3532:02/06/16 19:52 ID:tQ04t5ya
>>33

アパッチのhttpd.confですか?
phpに関する、記述は次の通りです。

# And for PHP 4.x, use:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

以上のようにしています。
3632:02/06/16 19:53 ID:tQ04t5ya
パーミッションもいろいろ試しました。
37nobodyさん:02/06/16 20:34 ID:???
>>32
phpのマニュアル読み直せ。
3832:02/06/16 22:43 ID:tQ04t5ya
LoadModule php4_module libexec/libphp4.so

httpd.confに↑がなかったようです。
でもこれいれるとconfigration broken...
3932:02/06/16 22:47 ID:tQ04t5ya
LoadModule php4_module /usr/local/apache/libexec/libphp4.so

こんなんでいいですかね。

どなたか、ヘルプミー!
4032:02/06/16 22:57 ID:tQ04t5ya
パス指定してもconfigration brokenです。

もうダメ・・・・・・。
4132:02/06/16 23:03 ID:tQ04t5ya

Cannot load /usr/lib/apache/libphp4.so into server: /usr/lib/apache/libphp4.so: undefined symbol: ap_block_alarms
/usr/local/apache2/bin/apachectl start: httpd could not be started

こんな感じのエラーがでます。
あたしを見捨てないデー、、、
42 :02/06/17 00:11 ID:dRmTyc5V
RPMじゃなくてコンパイルからしてみそ
コンパイルオプションやらがわからん
4332:02/06/17 00:49 ID:i/e9QgT/
./configure --with-apxs2=/usr/local/apache2/apxs

こんな感じでやってみました。

で、info.phpも試したのですが、URLを開いてみるとやっぱり保存になってしまいます。

php.ini
httpd.conf

phpに関して上の二つのファイルにはどのように記述すればよいのか、、、。
いろいろ調べ回ってます。
44nobodyさん:02/06/17 02:35 ID:???
>>32
(´-`).。oO(PHPのバージョンは?
       Apache2.0だと4.2.1以外はまともに動かなかったような‥‥

       個人的にはApache1.3をお勧めしておくが。)
4532:02/06/17 10:21 ID:l2M4FpTi
バージョンはphp4.2.1です。

なんとか、最後にアパッチの再起動をするところまで進んだのですが、

Cannot load /usr/lib/apache/libphp4.so into server: /usr/lib/apache/libphp4.so: undefined symbol: ap_block_alarms
/usr/local/apache2/bin/apachectl start: httpd could not be started

このようなエラーがでます。

ap_block_alarms って・・・。
46戊寅:02/06/17 23:25 ID:???
>>32さん
apache2のドキュメントを読まずに書いちゃいますが、
./configure に --enable-module=so とかのオプションは要らないんですか?

あと、httpd.conf は、apache_1.3.24 + php-4.2.1 ですと
LoadModule php4_module libexec/libphp4.so
になってました。参考までに・・・
4732:02/06/18 17:52 ID:mgU+5QuF
[root@localhost /]# /usr/local/apache/bin/apachectl start
Syntax error on line 205 of /usr/local/apache/conf/httpd.conf:
API module structure `php4_module' in file /home/*****/apache_1.3.24/libexec/libphp4.so is garbled - perhaps this is not an Apache module DSO?
/usr/local/apache/bin/apachectl start: httpd could not be started

>>46さんレスありがとう。
しかし、上記のようなエラーがでてApacheが起動できない状態です。

./configure に --enable-module=soとしてmake/make installもしています。

あと、libphp4.soをhomeのユーザーの領域に探しにいっているようなのですが
これで問題ないのでしょうか?

apacheのインストールは

./configure --prefix=/usr/local/apache --enable-module=so

上記のように、


php4.2.1は

./configure --with-apxs=/usr/local/apache/bin/apxs --enable-mbregex

のようにインストールしています。
48ちえ:02/06/18 21:21 ID:zOwUJg6s
教えてください
インターネットであちこちみてたら、ヤフーの画面に「Netzany」なるものが
組み込まれてしまってこまってます。どうすればいいの?おしえて
それとこれって やばいのかな
49nobodyさん:02/06/18 23:01 ID:???
↑マルチ↑
50nobodyさん:02/06/19 09:51 ID:???
↑マルチャン↑
51nobodyさん:02/06/19 11:31 ID:djORznSO
32かわいそうなのでage
52anonymous:02/06/19 13:12 ID:???
PHPでクライアントのブラウザにダイアログを出せるんですか?
出せるとしたらどんなコードを書けばいいんですか?
53nobodyさん:02/06/19 13:22 ID:???
>>52
PHPとは何なのか1から勉強し直せ
54戊寅:02/06/19 14:19 ID:???
>>47 もう遅いかな? とりあえず「homeのユーザーの領域に探しにいっている」
というのがおかしいですよね。
./configure を実行したディレクトリにある(と思われる)config.layout を確認して、
prefix: /usr/local/apache
exec_prefix: $prefix
bindir: $exec_prefix/bin
sbindir: $exec_prefix/bin
libexecdir: $exec_prefix/libexec
が、思い通りのレイアウトになっているか否かを確認、
もし違っていたらmake clean; make distclean とかやって、
もう一度ビルドしてみるってのはどうでしょう?
55nobodyさん:02/06/19 18:46 ID:???
>>52
<?php
echo "<SCRIPT type=\"text/javascript\">alert(\"回線切って首吊って氏ね!\");</SCRIPT>";
?>
56nobodyさん:02/06/20 10:31 ID:???
>>55
何げに優しいヒトね。
特に for($i=0;$i<10000;$i++){echo〜}とかしないあたりが…
5732:02/06/20 12:17 ID:iqNeqWhl
戊寅さんアリガトー。

おかげさまで動くようになりました。
でもphp版ずるぽんあぷろだちゃんと動いてくれないのです。
アップロードボタン押しても何も反応がない。。。
もうすこしがんばってみます。
58nobodyさん:02/06/20 12:55 ID:???
>>57
register_globalの設定は?
4.2.0以降だとデフォルトの設定じゃ動かないぞ。
5932:02/06/21 14:42 ID:PaTq4EAH
>>58さん、ありがとう。

register_globalをonにしたらアップロードはされていますが、次にようなエラーがでます。

Fatal error: Call to undefined function: move_uploded_file() in /usr/local/apache/htdocs/php/upload.php on line 214

インストールし直しですか・・・?
6032:02/06/21 16:12 ID:PaTq4EAH
ずるぽんあぷろだ、ちゃんと動きました。

でも8Mバイトを超えるファイルがアップできないです。

php.iniも設定ちゃんとしてあるんだけど・・・。

logの方には

invalid method in request と書き出されています。
61nobodyさん:02/06/24 10:31 ID:nb8sU0Ip
新しいphpではregister_globalsがoffになって
$_SESSION[var]とかでアクセスするようになりましたが、
毎回毎回$_SESSION[var]でアクセスするのと、
スクリプトの頭で$myvar = $_SESSION[var]として
$myvarを使うのとでは、やはり後者のほうが
オーバーヘッドが少ないと考えていいでしょうか?
まあオーバーヘッドといっても微々たるものでしょうけど。
62love somebody:02/07/17 13:35 ID:ftI3+LzP
head.txtとかやるじゃないですか。
それでそのhead.txtの中にSSIってできませんか?
できたら、どうやるんですか?
63_:02/07/18 02:07 ID:???
質問です
よろしくお願いします

クエリで # の文字を渡したいのですが 
その場合 どのように記述もしくは対処すればよいのでしょうか?

例としては 背景色等 #000000 の文字を渡していきたいのです

a.php?col=#000000

のようにクエリで文字を渡し
a,phpの中で

<BODY BGCOLOR="<?echo $col; ?>">

のような使い方をしたいのです 
この実行結果は $colには何も入ってない事になってしまっています 

どなたかヒントをお願いします
ぐーぐる等で検索かけましたが # が入った場合の動作はなかなか見つけられませんでした
64nobodyさん:02/07/18 04:18 ID:???
"#"を"%23"に置き換えといて(a.php?col=%23000000)、クエリを受ける側で「$col = urldecode($col);」とでもしる>63
65_:02/07/18 04:26 ID:???
ありがとうございます
早速試してみます
66nobodyさん:02/07/24 15:58 ID:s4xl4hs7
質問です

$host= @gethostbyaddr(getenv("REMOTE_ADDR"));

これの「@」はなにを表すのでしょうか?
67nobodyさん:02/07/24 16:00 ID:???
以降、質問は下記のスレにておながいします。

【PHP】質問スレッド Part4
ttp://pc.2ch.net/test/read.cgi/php/1022999539/l50
68.:02/07/24 16:01 ID:???
69nobodyさん:02/07/24 18:17 ID:???
エラーを・・・
70nobodyさん:02/08/03 12:55 ID:???
すみません、
phpのソースを閲覧・ローカルに保存する方法を誰かご存知ないでしょうか?

71nobodyさん:02/08/03 13:05 ID:NLXKrSe3
>>70
それができたらたいへんなことになります
http://yume.excite.co.jp/excite/yume/inc/result.inc

PHPスクリプトの拡張子に注意
http://pc.2ch.net/test/read.cgi/php/1028176257/l50
より抜粋
72親切な人:02/08/03 13:09 ID:???

ヤフーオークションで、凄い人気商品、発見!!!

プランテック製の「 RX-2000V 」を改造済み
にした、アイティーエス製の「 RX-2000V 」↓
http://user.auctions.yahoo.co.jp/jp/user/NEO_UURONNTYA#.2ch.net/

ヤフーオークション内では、現在、このオークション
の話題で、持ちきりです。

ヤフー ID の無い方は、下記のホームページから、
購入出来る様です↓
http://www.h4.dion.ne.jp/~gekiyasu/#.2ch.net/
73nobodyさん:02/08/03 16:22 ID:???
重複スレなので移動汁!

【PHP】質問スレッド Part4
http://pc.2ch.net/test/read.cgi/php/1022999539/l50
74nobodyさん:02/08/06 01:40 ID:abqyrA8W
PHPもファイルロックには気を使うべきですか?
75nobodyさん:02/08/06 03:57 ID:???
>>74
お前は73が読めないのか。
76nobodyさん:02/08/25 10:31 ID:???
ななじゅうさんと読みます
77nobodyさん:02/09/24 23:45 ID:eG+qA3Bk
Linux(コバルト)使っているのですが
一年くらい稼働しているのですが、そのうち2日間だけ
/tmp/フォルダに、
phpcSCFMZ
のような、php+ランダムな文字列のファイルが
数百個できてました。サイズは0。ファイルオーナーはhttpd。
これは何なのでしょうか?
削除してもいいのでしょうか?

セッションとは別だと思います。session_ランダムな文字列で
一定期間だけ作成されていますので。

どなたか教えてください。
78nobodyさん:02/09/25 13:28 ID:O6KkuGrZ
ローカルのWin+Apacheでのmkdirは問題ないんですが、
リモートのUNIX+Apacheでmkdirを行うとPermission deniedと、
んなパーミッション許可しねぇYOとエラーが帰ってきます。

ちなみにmkdir("log",0777);って感じで使ってます。
サーバ側の設定の問題でしょうか?
79nobodyさん:02/09/25 14:16 ID:???
そのlogディレクトリを置くディレクトリのパーミッションは?
8078:02/09/25 16:09 ID:O6KkuGrZ
>>79
レスありがとうございます。
logの上はもうドキュメントルートなんで755なんですが、マズいでしょうか。
ちなみに同ディレクトリで動いてる別のperlプログラムでは、
mkdirのパーミッション777が通ります。
81nobodyさん:02/09/25 16:13 ID:???
>>78
perlはsuEXECで動いているのでは。
PHPがモジュールだったらlogの上は707か777にしないとだめれす。
8281:02/09/25 16:18 ID:???
Safe modeがOnだったらPHPでmkdirしてもそのディレクトリにアクセスできなかったりする罠
83nobodyさん:02/09/25 16:30 ID:9hFjKUSb
>>74
PHPもファイルロックには気を使うべきです。
8478:02/09/25 16:35 ID:O6KkuGrZ
すみません、早速上のディレクトリを777にしたら通りました。

んが、実はlogの直下にまたすぐにディレクトリを作りたいんですが、
今度はこいつが通りません。

mdkir("log",0777);で通してるんですが、
実際はパーミッション755でディレクトリが出力されてます。
というかFTPで直接パーミッションを修正しても強制的に755に戻ります。

SafeModeで制限されてるだのという内容のエラーが帰ってきました。
8578:02/09/25 16:41 ID:???
凡ミスでした、ディレクトリの権限がnobodyでした。
これについてのPHP中での変更は・・・もう一調べしてきます。
86nobodyさん:02/09/25 20:55 ID:???
PHPというよりもプログラム自体の疑問なのですが、<select 〜 mutiple>で配列処理して変数$arrayを作った場合に、
この$arrayをスマートに、かつ自由なデザインで表示することって出来ますか?

<table>
<tr>
<td>
$array[0]
</td>
</tr>
<tr>
<td>
$array[1]
</td>
</tr>
</table>
みたいに、テーブルに限らず、柔軟な展開というのは、、どうすればいいのでしょうか? ご教授お願いします。
87nobodyさん:02/09/25 21:19 ID:???
//>>86
//<? <select 〜 mutiple>で配列処理して変数$arrayを作った場合 ?>

<table>
<tr>
<td>
<? $array[0] ?>
</td>
</tr>
<tr>
<td>
<? $array[1] ?>
</td>
</tr>
</table>

//こういうこと?
88nobodyさん:02/09/25 21:38 ID:???
>>87
レスありがとうございますっ!

具体的なことを言うとそうなります。
連番なら何とか出来るぽいんですが、$array[0] $array[2],,,,みたいなのが出てきた場合お手上げです。

地道にif系で書き出さないといけないのかな、、、
89nobodyさん:02/09/25 22:17 ID:???
独り言自己レス

取り出す数を求めて、それによって<tr><td>[$a]</td></tr>の数を決めるようなことをすればいいのかな‥‥
90nobodyさん:02/09/25 23:02 ID:???
//具体的に何に使うん?

<table>
<?
for($i=0;$i<100;$i++){
print "<tr><td>";
print "$array[$i]";
print "</td></tr>";
}
?>
</table>

//これは?
91nobodyさん:02/09/26 08:27 ID:???
<?

//配列"$array"中に一致条件"aaa"が含まれる場合、$linesに値を追記
foreach($array as $value) if(ereg("aaa", $value)) $lines.="${value}\r\n";

//値が空(一致条件が存在しなかった)の場合
if($lines=="") $lines="一致するデータが有りませんでした\r\n";

//"<pre>"要素内に出力(別に"<ul>"や"<dl>"使っても良い訳ですし)
echo "<pre>$lines</pre>\r\n";

?>
9281:02/09/26 09:41 ID:???
>>78
>>82でも書きましたがsafe modeがOnならmkdirは使い物になりません。
93hmk(元プロ):02/09/27 00:46 ID:QE9TB9SP
>>66
> $host= @gethostbyaddr(getenv("REMOTE_ADDR"));
@は確かエラー制御演算子という名前で、
エラーメッセージを出力させないようにするためのものだ。
上記の場合は、gethostbyaddr()がエラーを起こした場合のワーニング
を出なくする働きがあると思われ。

でいいんですよね、プロの皆さん?
94hmk:02/09/27 01:08 ID:QE9TB9SP
>>88
<table>
<?php
for (reset($array); list(, $value) = each($array);) {
?>
<tr><td><?php echo $value; ?></td></tr>
<?php
}
?>
</table>
95 :02/09/27 04:31 ID:2RREwo6L
$str[0],str2[0]...と表示させたいのですが、

<?php
$str = array('1','2','3');
$str2 = array('10','20','30');
$num = count($str);

for($i=0;$i<$num;$i++){
$val = array($str[$i],$str2[$i]);
$val = implode(" ",$val);
echo $val;
}
?>
だと、1 102 203 30
という表示になってしまいます。
110 220 330と表示させるにはどうしたらいいでしょうか?
よろしくお願いします。
96hmk:02/09/27 04:45 ID:???
>>96
<?php
$str = array('1','2','3');
$str2 = array('10','20','30');

for (reset($str), reset($str2); list($i,) = each($str);) {
echo $str[$i] . $str2[$i] . ' ';
}
?>
97nobodyさん:02/09/27 12:02 ID:???
<?php
$str = array('1','2','3');
$str2 = array('10','20','30');
$num = count($str);

for($i=0;$i<$num;$i++){
echo $str[$i].$str2[$i].' ';
}
?>
98hmk:02/09/27 15:33 ID:???
<?php

$str = array('1','2','3');
$str2 = array('10','20','30');

for (reset($str), reset($str2); list($i,) = each($str);) {
$str3[] = $str[$i] . $str2[$i];
}

echo implode(' ', $str3);

?>
99nobodyさん:02/09/27 21:10 ID:???
<?php
$str = array('1','2','3');
$str2 = array('10','20','30');
$num = count($str);

for($i=0;$i<$num;$i++){
$val .= $str[$i].$str2[$i].' ';
}
echo"$val";
?>
100hmk:02/09/27 21:57 ID:???
100geto...

>>95よ、なにが原因か分かったかね?
101nobodyさん:02/09/27 22:13 ID:ShlRmfg7
バージョンが4.0.6の物をバージョンアップさせる場合。どうすればいい?
http://www.php.net/downloads.php
ここには4.2.3があるけど4.2.2がいいんで、教えて偉い人。
102101:02/09/27 22:15 ID:ShlRmfg7
なんか変な文章だ・・・
103nobodyさん:02/09/27 23:21 ID:???
下に4.2.2あるよ。
104101:02/09/28 00:19 ID:uj+xgRhi
確認不足で申し訳ない。
105nobodyさん:02/10/11 01:12 ID:1pjL9YYa
質問です。
test.phpの中で$emailにデータベースから取り出したメールアドレスを
格納し、
<form method="post" action="./mail.php">
<input type="hidden" name="mail" value=$email>
・・・・</form>
というふうに、inputでアドレスをメール関数に渡しているのですが、
これだとソースにメールアドレスが表示されてしまうため、
ソースに表示されない別の渡し方があれば教えてください。

106nobodyさん:02/10/11 01:26 ID:ZQEK3Po2
test.php
$_SESSION[mail]=データベースから取り出したメールアドレス

mail.php
メール関数に$_SESSION[mail]を渡す
107nobodyさん:02/10/11 09:33 ID:abgKHNAE
$ip = getenv("REMOTE_ADDR");

$ipのIPを(例:211.126.27.101→211.126.27.*に)置換するには
どうやればいいのでしょう?
108107:02/10/11 09:47 ID:abgKHNAE
$y = substr($myip,12,3);
$x = substr($myip,0,12);
$z = ereg_replace("[0-9]{1,3}","*", $y);
$w = $x.$z;

一応、↑でできたのですが、もっといい方法はありますか?
109107:02/10/11 09:49 ID:???
訂正です。
$x = substr($ip,0,12);
$y = substr($ip,12,3);
$z = ereg_replace("[0-9]{1,3}","*", $y);
$w = $x.$z;
110nobodyさん:02/10/11 09:54 ID:???
$ip = split('\.', getenv("REMOTE_ADDR"));
$x = "$ip[0].$ip[1].$ip[2].*";
111107:02/10/11 10:07 ID:???
>>110
すごい!こんなに簡単にできるんですね
ありがとうございます!
112nobodyさん:02/10/11 10:17 ID:???
正規表現一発で済ませろ。
$ip = ereg_replace("[[:digit:]]+$", "*", getenv("REMOTE_ADDR"));
113105:02/10/11 18:19 ID:nZwz8aye
>106
返答ありがとうございます。
とりあえずsessionを使ってみたところ

test.php
<?
session_start();
$_session[email]=メールアドレス;
<form method="post" action="./mail.php">
<input type="hidden" name="mail" value=$email>
・・・・</form>
?>
ここで$_session[email]に正しいアドレスが入ってる事を確認。

mail.php
<?
session_start();
echo "$_session[email]";
?>
しかしここでは何も値が入っていませんでした。
sessionはグローバル変数だと思っていたのですが、違うのでしょうか?
使い方が誤っていたらご指摘お願いします。
114bloom:02/10/11 18:21 ID:zzYfW1z9
115106:02/10/11 18:40 ID:???
hellosessionfrom.php
<?php
session_start();
$_SESSION[hell]="Hello,HellWorld!\n";
$_session[heaven]="Hello,HeavenWorld!\n";
?>
<html><head><title></title></head><body>
<a href="hellosessionto.php">hellosession</a>
</body></html>

hellosessionto.php
<?php
session_start();
?>
<html><head><title></title></head><body>
<?php
echo $_SESSION[hell];
echo $_session[heaven];
?>
</body></html>

どうやれば天国にいけるでしょう。
116105:02/10/11 19:44 ID:???
>106
神よ、有難うございます。
$_SESSIONは大文字でないといけないのですね。
あなたの未来に幸多からんことを…
117nobodyさん:02/10/12 15:01 ID:SMl4F7k6
全くのショッシーでスマソ。
JacaScriptに慣れてる人、ちょっとJavaをかじった人が、そんなに難しく
ないCGIをやる場合、Perlでしょうか?PHPでしょうか?
118nobodyさん:02/10/12 15:43 ID:???
>>117
JSP&Servletが良いのでは
じゃなくて、使ったことが無い言語を覚えるのが
 苦痛でなければ、どっちでも良いと思う。
 あとは、コーディングしてみて自分に合ってる方を
 選べばいい
119nobodyさん:02/10/12 18:05 ID:???
>>117
何でも問題ないと思うがphpスレッツウ事でPHPをおすすめしとく。
120nobodyさん :02/10/13 00:40 ID:LvGYJMzQ
PHPファイルにJavaScriptは使えないですか?
どうも失敗するのですが。
121nobodyさん:02/10/13 00:52 ID:???
出来ますた。
コードミスだったです。
お騒がせしてスミマセン
122nobodyさん:02/10/13 09:03 ID:i/uPn3q6
php 4.0.6 WinXP です。

<?
session_start();
session_register("data1");
$data1 = 1;
?>
<html><body><a href="./test2.php">表示</a></body></html>

結果
Warning: open(/tmp\sess_cd8624e6e06d93e2625bddd88f204896, O_RDWR) failed: m (2) in c:\phpdev\www\phpdev4\q.php on line 2
表示

php.int設定
session.save_path = "c:\windows\temp\"

どなたか教えて下さい。
123nobodyさん:02/10/13 22:21 ID:???
session_start();
session_register("data1");
$data1++;
echo "$data1";
124nobodyさん:02/10/21 23:06 ID:???
なんだ、PHPにも初心者スレがあったのね。
つーわけでage.
125nobodyさん:02/10/21 23:33 ID:???
おうよ。アホみたい質問はこっちでよろしく。
126nobodyさん:02/10/22 07:43 ID:ZX80GK7s
PHPマニュアルにdisk_free_spaceの例文が載ってるんですが、使い方がわかりません。
アフォでスマソ
127nobodyさん:02/10/22 08:20 ID:???
>>126
ディスクのパーティションの空き容量がわかる。
128nobodyさん:02/10/22 09:02 ID:???
>>125

ホント「アホみたいな質問」ですね。
例文見て使い方が分からないなんて。(w
129nobodyさん:02/10/22 09:40 ID:???
>>128
PHPの事なら何でもいいじょ。


【PHP】初心者コーナー
http://pc.2ch.net/test/read.cgi/php/1011550860/l50


130nobodyさん:02/10/22 11:29 ID:nuvCZH1t
超初心者な質問ですみません。
バイナリデータをファイルに書き出す方法がわかりません。
たとえば単純に「ゼロが10バイト並んだファイル」を作るために
$fp = fopen ("test.bin", "w");
for ($n = 0; n < 10; $n++) {
fwrite($fp, 0, 1);
}
fclose($fp);
としてみたら「ゼロ」ではなく「0x30」つまり「ゼロの文字コード」が
10個並んだファイルができてしまいました。
「ゼロが10バイト並んだファイル」はどうやって作ればいいのでしょうか?
どなたか教えてください。
131nobodyさん:02/10/22 11:59 ID:???
n < 10 を $n < 10 で、0000000000できたよ。
そのtest.bin削除して、メモ帳で書いてもういっぺんやってみ。
132nobodyさん:02/10/22 12:06 ID:???
バイナリかー。
133nobodyさん:02/10/22 12:26 ID:???
>>130
<?php
$fp = fopen ("test.bin", "wb");
for ($n = 0; $n < 10; $n++) {
fwrite($fp, "\x00", 1);
}
fclose ($fp);
?>
134nobodyさん:02/10/22 21:31 ID:n3viipFn
PerlからPHPに移ったんですが、データベースのことがよく分かりません。
データを保存する際、普通のファイルよりもデータベースファイルの方が良いのでしょうか。
またその場合データベースを扱ってみたいんですが、分かり易いサイトなど紹介してもらえないでしょうか。
よろしくお願いします。
135hmk:02/10/22 21:45 ID:???
>>134 スレ違い。PHP + PostgresSQLスレあたりに逝け。
136nobodyさん:02/10/22 22:06 ID:???
>>134
【PHP】初心者コーナー では、
PHPの初心者クラスのアホな質問を受け付けております。

PHP + MySQL
http://pc.2ch.net/test/read.cgi/php/983250751/l50

PHP + PostgreSQL
http://pc.2ch.net/test/read.cgi/php/983128806/l50
137nobodyさん:02/10/23 19:59 ID:???
例えば

$count = 動的パラメタ...として


for($i;$i<=$count;$i++){
print '<input type=text name=count_'.$i.'>input_'.'$i.'<br>';
}

...で複数のテキストフィールドを動的に作った場合
このテキストフィールドのパラメタを全て回収するには
どすればよいでしょうか?
138nobodyさん:02/10/23 20:48 ID:???
動的パラメタって数値なんすか?
forで回してるから$countは123・・・順の最高値なんすか?
<input type=hidden name=count value=$count>で渡して、
受けたら$count以下のを扱うとかいうのは違うすか?
つか、何がしたいのかさっぱりわかりませんずら。詳細キボンヌ
139hmk:02/10/24 00:38 ID:???
>>137
私なら、配列を使います。例えば、

<?php for ($i = 1; $i <= $count; $i++) { ?>
<input type="text" name="cnt[<?php echo $i; ?>]">input_<?php echo $i; ?><br>
<?php } ?>

このようなフォームにしておけば、

<?php
for (reset($cnt); list($k, $v) = each($cnt);) {
// このようにして後で回収できます。
}
?>

138の言うようにhiddenで最大値を渡してもできる。
用途に応じて、使いやすい方法でいくのがよいでしょうかね。
140137:02/10/24 10:40 ID:???
>>137-138
レスどもです。
わたしの意図するところは伝わったようですが
自分なりの常識を押し付けるような書き方になってしまいました。
反省してます。

念のため
php のversion は4.2.3
php.ini のregister_grobals=Off
そのため、フォームから渡されたパラメタは
$param_name=$HTTP_GET_VARS['param_name']
で回収する必要があります。
当初、これをfor でまわして

for($i=1;$i<=$count;$i++){
$param_name[$i]=$HTTP_GET_VARS['param_name[$i]']
}

とできると思ったのですがダメでした。
外部フォームからの変数が格納されている配列
また、その配列から要素を抜き出す方法を教えてください。
141nobodyさん:02/10/24 11:10 ID:???
PHPはFORMのnameに配列が使えます。
<form action="<?=$_SERVER[PHP_SELF]?>">
<?php
$count = 10;
for($i = 0;$i<=$count;$i++){
print "<input type=text name=param[]>input_".$i."<br>\n";
}
print '<input type="submit"><br>'
for($i = 0;$i<=$count;$i++){
print "param".$i."=".$_GET[param][$i]."<br>\n";
}
142nobodyさん:02/10/26 20:59 ID:???
PHPでBBSを作ろうと思い、
勉強するために本を買おうと思ってるのですがPHP3なんです。
「プロフェッショナルPHPプログラミング」という本なのですが。
しかしサーバーがPHP4なので大丈夫かな?と思い質問させていただきました。
143nobodyさん:02/10/27 09:48 ID:???
>>142
その本PHP4.0.4で動作確認してるって書いてるよ。おすすめかも。
おれならマンモンス本の赤と青を買うな。
詳しくしりたいなら -> PHP関連の書籍(但しPHP出版系お断り)
http://pc.2ch.net/test/read.cgi/php/985315574/l50
144nobodyさん:02/10/28 15:24 ID:uGqL/qit
PHPでデータをファイルに保存するとき、
普通のテキストファイルよりもデータベースファイルに保存した方がいいんでしょか。
管理し易いとか速いとか。。。
145nobodyさん:02/10/28 18:42 ID:b7KIhGgz
>>144
データの出し入れはデータベースの方が圧倒的に便利です。
146144:02/10/28 18:47 ID:uGqL/qit
厨な質問でスマソ
データベースファイルを扱う場合、
やっぱりMySQLとかインストールしないと無理なんですか。
147nobodyさん:02/10/28 19:02 ID:???
当 た り 前 だ の ク ラ ッ カ ー
148nobodyさん:02/10/28 22:02 ID:???
お そ れ 入 谷 の 鬼 子 母 神
149nobodyさん:02/10/28 22:03 ID:???
>>146
PHPが無くてもPHPは動きますでしょうか?無理なんですか。


        当 た り 前 だ の ク ラ ッ カ ー

150nobodyさん:02/10/28 22:28 ID:???
厨な質問でスマソ
ホワイトベースを扱う場合、
やっぱりブライト艦長とかインストールしないと無理なんですか。
151nobodyさん:02/10/29 02:21 ID:???
>>150
さむっ。
152:02/11/02 16:40 ID:sGSys/RS
PHPメールで受信したデータをオートで送信するのは可能ですか?
153nobodyさん:02/11/02 18:08 ID:KWT88uG8
>>152
「PHPメール」って、何?
154名無し募集中。。。:02/11/03 01:13 ID:dBGKbheQ
リア厨ですいません。
「if」をつかって、日ごとに違う文章を表示させたいのです。

もし「11/03」ならば「今日は11月3日なわかけだが」
もし「11/04」ならば「今日もお休みで(・∀・)イイ!!」
もし「11/05」(略


表示させる文章は自分で適当に書くだけです。
ようは、日付を使ってどうやって「if」を使えばいいかを知りたいのです。

よろしくおねがいします☆ミ
155nobodyさん:02/11/03 02:18 ID:pFxZ0WjN
PHPのソースを秘密にして、配付する方法はありますか?
156nobodyさん:02/11/03 02:55 ID:???
>>155
Zend Encoder 使えばできるよ。
ただし $2400
初心者と言うか貧乏人には無理です。
157nobodyさん:02/11/03 03:04 ID:???
>>156
教えてくれて、ありがとう。お金持ちになりたい…。
158nobodyさん:02/11/03 03:43 ID:???
>>155

秘密にする必要があるくらいスンゴイのが作れるなら
キミはきっと金持ちになれるよ。
159nobodyさん:02/11/03 03:53 ID:???
>>158
別にすごいから秘密にしたいってわけじゃないよ。
2chに書き込みをするスクリプトなんだけど
いたづらで悪用されたら、こまるから、
秘密にできたらいいなって思ってん。
160nobodyさん:02/11/03 04:17 ID:???
>>159
> 2chに書き込みをするスクリプトなんだけど

悪用以外に用途が思い浮かばない。
161nobodyさん:02/11/03 04:19 ID:???
>>160
えー嘘やん。そんなん、もう公開してるし、どうしよう。
162nobodyさん:02/11/03 04:20 ID:???
フリーでエンコード出来るやつがあった気がする
ただZend Encoderと違って速くはならないらしいけど
163nobodyさん:02/11/03 04:53 ID:???
>>162
APC (ALTERNATIVE PHP CACHE) というのかな?
でもこれって実行側で環境をインストールせやなあかんみたい。
これやと逆にユーザ対象が狭まれ過ぎて、配付する意味がなくなるわ…。
それに少し古いみたいで、惜しい。
164nobodyさん:02/11/04 22:59 ID:???
質問させていただきます〜bbsなスクリプトを作ってます。

./foo.php  (メインファイル)
./subject.txt  (現在存在するログファイル名が書いてある。 一行に一個。)
./dat/xxxxxxxx.dat  (subject.txtに書いてあるログファイル)

subjectのarray[i]を読んで、そこに書かれてるxxxxx.datてゆーのをdatディレクトリから探して表示、
を繰り返すわけなのですが、、、、

Warning: file("./dat/1036411589.dat ") - Invalid argument in 〜
とゆーような感じでdatのあとに半角スペースが入ってしまうんです。 よって読めないと。

ereg_replace()してもダメでした・・・
配列の仕様ってヤツなのでしょうか? そして回避法はあるんでしょうか?
お願いします。
165nobodyさん:02/11/05 10:20 ID:iexiejZJ
subject.txtの内容をfile()で配列にしているのなら、
もう一度、マニュアルを読んでみよう。
file()は、\nを除去しないと書いてあるよ。
よって、trim()でもつかうのがよろし。
166165:02/11/05 10:24 ID:iexiejZJ
>>164
あと、subject.txtに「表示させたいログファイル名」ではなくて、
「現在存在するログファイル名」だけがかいてあるのなら
./dat/を直接readdir()した方が楽でない?
167名無しさん:02/11/05 16:04 ID:???
>>163
CVSから最新版とってこれたような。
168nobodyさん:02/11/05 16:50 ID:???
>>167
pear/PECL/APCに最新版があるヨ

pear/PECL/APC Cache機能
pear/PECL/APD Debug機能というかプロファイラ
pear/PECL/OPC Optimizer機能(今日レポジトリが出来たみたい-まだ枠組みだけだけど)

これからが楽しみ :)
169nobodyさん:02/11/05 16:59 ID:???
>>165-166
ありがとうございます!

> 改行記号はついたままと なります。
て書いてましたね・・汗
ついでにtrim()の存在も知らなかったので大変勉強になりました〜! ありがとうございました!
170164:02/11/05 17:03 ID:???
レス漏れ
readdir()ってディレクトリの見えないディレクトリで使えるかどうか分からなかったので頭に入れてなかったっす。
あとでちょっち試してみます。
171nobodyさん:02/11/05 18:02 ID:WIPa8/Vj
文字列をPOSTで別のPHPスクリプトに送るとき
半角スペースや「"」などの文字が含まれているとそれ以降が消えてしまいます
addslashesを使って「\"」にエスケープしても「\\」と文字化けします
どうやってデータを渡せばよいのでしょうか?
172nobodyさん:02/11/05 20:25 ID:Dn6gflHK
>>171
php.iniでmagic_quotes_gpcがonになっていると、
COOKIE,POST,GETで渡された値の中の
これらの文はは勝手にエスケープされる。

ので、
php.ini でmagic_quotes_gpc = off
にするか、
.htaccessで
php_flag magic_quotes_gpc off
にする。

あと、stripslashes() という函数もあったような;
173nobodyさん:02/11/05 20:55 ID:WIPa8/Vj
>172
すみませんちょっと説明不足だったようですが
勝手にエスケープされたものをstripslashes()で取り除いても
正常に受け渡しができなくなります。
「aaa"bbb"」→POST→「aaa」
「aaa\"bbb\"」→POST→「aaa\\」
フォームからは正常にエスケープされた文字列が受信できます
環境がおかしいのでしょうか?
対策としては正常に受け渡しできる文字に置換して
受信側で元の文字に戻すということですけど・・・
174nobodyさん:02/11/05 21:28 ID:???
PHPのVerが4.2.3の場合はバグ
175nobodyさん:02/11/06 01:26 ID:EhYZ0bVt
PHPを1から始めたいのですが、何から始めればよいですか?
サーバースペースはまだ探していないので、local環境で始めてみたいです。

OSはWindows2000かLinux(Red Hat)です。

とりあえずwin2kでやってみようと思って、
phpdevやphpのインストーラ(win用)は落としてみたのですが、
使い方がいまいちわかりません。

初心者は何から始めればよいのでしょうか?
176nobodyさん:02/11/06 01:31 ID:???
>>175
ApacheかIISかAnHTTPD
177173:02/11/06 07:19 ID:yWgDH7Dp
>174
4.2.2に戻してみましたがかわりませんでした・・・
178PHP ◆DQN/AO/IPw :02/11/06 09:25 ID:???
>>175
PHPは1から始めるよりも4から始めた方がいい。
179173:02/11/06 17:19 ID:???
やっと自己解決
htmlspecialcharsで変換してPOSTすれば
消えずに送信できました
180nobodyさん:02/11/07 11:41 ID:QEt0uw4x
PHPでPerlのHTML::Templateみたいなライブラリってないでしょうか
単純な置き換えだけでなくてIFとかLOOPとかあるような・・・
181nobodyさん:02/11/07 11:59 ID:Go7yQUbZ
>>180
while (hoge) {
?>
aaaa
<?php
}
182nobodyさん:02/11/07 12:29 ID:???
>>180
Smarty
183nobodyさん:02/11/08 01:14 ID:Veqht0/Q
>>175
PHPを始めたいとのことですが、やはり「なぜPHPを始めるの?」
という質問に答えられるかどうかがポイントではないでしょうか?
その答えがご自分の中にあるのであれば、それに必要な処理や道筋を
立てて、そのプロセスに必要な関数や仕組みを試行錯誤でやることです。
そうすれば、徐々に覚えることができます。
184nobodyさん:02/11/09 07:47 ID:???
Webサイト制作初心者スレで質問したところ、こちらで聞いてみろと
促されたので質問させて下さい。↓は初心者スレからのコピペです。

現在、XHTMLで表示部分を記述しているCGIスクリプトが少ないので
自分でスクリプトを作ってみようと思っています。しかし、色々と
検索しているとPerlよりもPHPの方が動作も軽くていいようなので
PHPでスクリプトを作ろうかと思ったのですが、HTML(XHTML)以外
知らない人間がいきなりPerlではなくPHPを覚えようというのは
無謀なのでしょうか?下らない質問ですみませんが教えて下さい。

#Jsは多少知っています。
185nobodyさん:02/11/09 10:59 ID:X+rmQU/4
>>184
こういう本で勉強
http://www.gihyo.co.jp/books/syoseki.php/4-7741-1321-2

そのあとはPHPのオンラインマニュアルを見れば簡単に書ける

何事も基礎が大事
186nobodyさん:02/11/09 11:14 ID:E2/H+5gT
>>184
PHPとても簡単
187nobodyさん:02/11/09 11:24 ID:???
>>185
>何事も基礎が大事
言われて納得。確かにそうですよね。ありがとう御座います。
PHPやPerlの前に基礎の基礎をしっかり固めたいと思います。
188連続ですみません:02/11/09 11:26 ID:???
>>187
そう言えるように頑張ります。
189nobodyさん:02/11/09 11:39 ID:rznkVAE5
どこで訊いて良いのか判らないので取り敢えずここに来ました。
サイトを見るのにパスワードとユーザ名を要求されるようになってしまいました。
知らないうちに会員制に移行してたらしいのです。
こうなった以上、もう見るのは不可能なんでしょうか?
190nobodyさん:02/11/09 12:14 ID:???
会員になれば閲覧できるでせう。
191nobodyさん:02/11/10 11:26 ID:QiAM6QEO
if(eregi("(サポート)", $name)){
echo '管理人の名前は使用できません。';
}

サポートと言う文字を入れると
Warning: REG_EBRACK: in C:\test.php on line 296
みたいなエラーが出るのですがなんででしょうか?
管理人やWebmasterではちゃんと表示されるんですが。
192nobodyさん:02/11/10 11:29 ID:???
Shift_JISだと「ー」でひっかかったりするけど
193191:02/11/10 12:27 ID:???
>>192
どうやら長音記号「ー」のせいみたいですね。
メーリングリストに同じような話題が出ていました。
http://ns1.php.gr.jp/pipermail/php-users/2001-December/004497.html
194191:02/11/11 05:10 ID:???
stristr関数を使えばとりあえずOKだって事にさっき気が付きました。
195nobodyさん:02/11/22 03:31 ID:klMrTIO/
質問です。例えば
SELECT CODE, NAME FROM TABLE1 ORDER BY CODE
とポスグレに流したら、100件帰ってきます。

PHP3で pg_Result($rtn, 80, name)ってすると、80番目が帰ってきますよね。
この時、ポスグレのカーソルは先頭から80回フェッチしているんですか?
196nobodyさん:02/11/22 11:25 ID:???
perlから移行中なんですが、ちょっと疑問があります。
print と echo は、まったく同じものでしょうか?
ちょっと違うのかな? 
どっちでもいい事かもしれませんが気になりまして
197nobodyさん:02/11/22 12:31 ID:???
>>196

激しく既出。
198nobodyさん:02/11/22 12:55 ID:???
>>197
おい、既出みたけど答えになってないぞ。
気になるな。
199nobodyさん:02/11/22 13:01 ID:???
だって、このスレは初心者が答えてるんだもん。
200nobodyさん:02/11/22 14:15 ID:???
>>196
echo がいいと思う。
たぶんprintとechoの挙動が違うのは連結の時違うと思います。
201nobodyさん:02/11/22 14:46 ID:2PtBJ1DA
>>196
printは関数。echoは文
echoは()がいらないので多用している。
202nobodyさん:02/11/22 16:22 ID:???
printも()いらんでしょ?
203nobodyさん:02/11/22 16:25 ID:???
> print()は実際には関数では(言語構造です)ありません。
> このため、引数を括弧で括る必要はありません。
http://www.php.net/manual/ja/function.print.php
204nobodyさん:02/11/22 16:30 ID:2PtBJ1DA
>>202-203
そうだったのか。そうしたら ますます両者の違い側下欄。
205bloom:02/11/22 16:30 ID:ouswKb0x
206nobodyさん:02/11/22 16:35 ID:???
Perlから移行する人もいるし、いろいろな方法を提供しているだけでは?
Cのprintfも使って良いわけだし。
207nobodyさん:02/11/22 16:38 ID:???
内部レベルまで考えると違うのかもしれんが
このスレタイのようにいわゆる初心者ならば
どれを使っても変わらないだろう。
208nobodyさん:02/11/22 16:44 ID:???
>>204
echo print "test data\n";
してみ。
echo echo "test data\n";
も試してみれ。

if(!print("stdout check OK!")) die();

209nobodyさん:02/11/22 18:28 ID:???
System.out.println("stdout check OK");
210version:02/11/22 21:56 ID:+Mj4l0eA
PHP4.2.3をPHP4.2.2にバージョンダウンさせたいのですが、
どうすればよいか分かりません。
Red Hat Linux 7.2にPHP4.2.3をソースからコンパイルして
インストールしました。それで、本を買って、さぁ勉強しよう
と思ったら、その本がPHP4.2.2の本だったので、
同じバージョンにさせたいのです。
この場合ってどうすればよいのでしょうか?インストールされた
ファイルを探し出して、全部削除とかしてから4.2.2をインストール
するのですか?教えてください。
211PHP ◆DQN/AO/IPw :02/11/23 00:15 ID:???
<?php
/* echo の方が早いね */

function getmicrotime(){
list($usec, $sec) = explode(" ",microtime());
return ((float)$usec + (float)$sec);
}
$str = "De man cyaan seh dat, aya.\n";

$start = getmicrotime();
echo "<span style=\"display: none\">";
$i = 0;
while ($i < 50000) {
echo $str;
$i++;
}
echo "</span>";
echo "echo: <b>". (getmicrotime() - $start) ."</b><br>\n";

$start = getmicrotime();
echo "<span style=\"display: none\">";
$i = 0;
while ($i < 50000) {
print $str;
$i++;
}
echo "</span>";
echo "print: <b>". (getmicrotime() - $start) ."</b><br>\n";

/* ローカルでテストしてね*/
?>
212マニュアル嫁 君:02/11/23 00:22 ID:eY1CU9cS
213nobodyさん:02/11/23 13:54 ID:???
どうもPerlの癖でついついPrint書いちゃいますね。
echoのほうが良さそうなのでecho使うようにします。
214nobodyさん:02/11/23 16:53 ID:dkREGMIE
FORMタグを使ってPOSTメソッドで通信

PHP では入力された値は直接変数に格納されます。これはPOSTデータも
GETデータも、Cookie データも、FORMも同じです。

その変数は連想配列です。
$HTTP_POST_VARS
$HTTP_GET_VARS
$HTTP_COOKIE_VARS
215nobodyさん:02/11/23 18:44 ID:???
何が言いたいのか。
216nobodyさん:02/11/23 20:33 ID:UbdTqBEx
PHP触ったことないです。
これから触ってみようと思うのですが
個人でPHP学ぼうと思ったらWEBサーバーが必要なんでしょ?
みんなレンタルサーバーとか使ってんの?
それともインターネットのプロバイダがPHPサポートしてんですか?
スタンドアローンでうごかしてるとか・・・
217nobodyさん:02/11/23 20:53 ID:???
>>216
初心者スレだから答えてあげると、
・apacheをインストール
・PHPをインストール
これでローカルで動かせる。
具体的な設定方法は検索すればわかるでしょう。
218216:02/11/23 21:02 ID:UbdTqBEx
>>217
やっぱりそうですか
実は私もServletをスタンドアローンで動かしてる・・・
219nobodyさん:02/11/23 21:03 ID:u57L3WN3
「PHPをCGIモードでインストール」ってどういう意味なんでしょうか?
220nobodyさん:02/11/23 21:40 ID:???
>>219
そのまんまでしょ。
意味がわからないならCGIとは何かを勉強する必要がある。
mod_phpとかmod_perlも一緒に調べるとよくわかると思う。
221nobodyさん:02/11/23 22:09 ID:dkREGMIE
PHPでgetメソッドを使って通信したい
222nobodyさん:02/11/23 22:10 ID:???
初心者さんでもマニュアルすら読まない人は助けてもらえませんよ♪
223nobodyさん:02/11/23 22:27 ID:???
PHP日本語マニュアル
http://jp.php.net/manual/ja/
224nobodyさん:02/11/23 23:13 ID:???
phpは、HTMLに埋め込んでだいたいは使いますよね。
また、完全CGI(HTMLへの送受信をしない?)として使えますよね。
何が言いたいんだ?

普通は
HTML+php (掲示板などへの書き込み)→php鯖で処理してその結果を→HTML+phpに表示

postメソッドなどの通信
post/getで通信 →php鯖で処理してその結果を →post/get?で通信
225nobodyさん:02/11/23 23:19 ID:???
アタマ整理してから書き込んでね♪
226nobodyさん:02/11/24 00:10 ID:???
初心者が質問し、初心者が解答する
227nobodyさん:02/11/24 00:20 ID:???
formを受け取るかどうかはphp.iniで設定出来るんですよね?

php.iniの設定が書いてるWebサイトキボンヌなのです
228nobodyさん:02/11/24 00:34 ID:???
formを受け取んないのか?
229nobodyさん:02/11/24 00:43 ID:???
ついでなのれす

グローバルレジスターくらいいじれりゃ十分やけど。。
230nobodyさん:02/11/24 00:45 ID:???
>>229
は?
231nobodyさん:02/11/24 00:55 ID:???
register_glovals = On
232nobodyさん:02/11/24 02:32 ID:???
電波が棲みついたな。
233nobodyさん:02/11/24 09:20 ID:???
は?には(゚д゚)ハァ?を
234nobodyさん:02/11/24 13:28 ID:???
PHPって演算子のオーバーロードとか出来る?
無くても別に困らないんだけど、気になったので・・・
235nobodyさん:02/11/25 00:32 ID:???
>>234
困らないんだったらマニュアルみ。
http://jp.php.net/manual/ja/
236nobodyさん:02/11/25 05:45 ID:???
元質者じゃないが、
いつのまにオーバーロードをサポートしてたんだ・・・・?
つかサンクス>>235 & マニュアル嫁>>オレ
エセOOつかえねーと思ってたが、PHP5も楽しみだな
23723:02/11/25 18:50 ID:???
>>235
オンランのソースは一通り目を通したはずなんだけどなぁ・・
結局、見つかりませんでした。

>>236 の言ってるのは、オブジェクトのオーバーロード?
238nobodyさん:02/11/26 13:14 ID:???
まともなPHPの質問は【PHP】質問スレッド でお願いします。
Part5 http://pc.2ch.net/test/read.cgi/php/1031721334/l50

【PHP】初心者コーナー では初心者のアホっぽい質問を受け付けております。
初心者の人はマニュアルをざっとご参照のうえで質問してみてください。
http://jp.php.net/manual/ja/
239nobodyさん:02/11/26 16:56 ID:???
どの程度がアホっぽいのでしょうか?
マニュアル以上まとも未満の質問の例を教えてください。
240nobodyさん:02/11/26 17:51 ID:???
register_globalsはおやつに入りますか?
241nobodyさん:02/11/26 19:16 ID:???
>>239
アホッぽさの条件
1)変数とか制御構造とか基本的なことを理解していない
2)マニュアルにズバリ書いてあることを、独特の言い回しで質問。
3)HTMLとJavaScriptとPHPの区別が付かない
242nobodyさん:02/11/26 20:12 ID:???
>>240
register_globals もちろんおやつです。

>>241
だいたいそんな感じですが、
初歩的な質問なのである程度理解しててもいいです。

高度な質問が入った場合は【PHP】質問スレッド 誘導してください。
http://pc.2ch.net/test/read.cgi/php/1031721334/l50
243nobodyさん:02/11/26 21:16 ID:???
>>241

それは厳しくない?
マニュアル読める力があれば、2chでわざわざ質問しなくても自己解決出来るでしょ。

このスレはこれから始める人用だと思うな。
CGIって何?
phpって何?
モジュールphpって何?
インストール時のトラブル
phpでこれをやりたいんだけど出来る?
244nobodyさん:02/11/26 22:03 ID:???
質問させてくださひ…。

あるSJIS文字列(1バイト2バイト文字混合)を受け取った際に、数字とアルファベット以外を
1バイトずつ区切って、HTML数値エンティティ形式に変換して出力するXMLサーパントがあります。
たとえば、

私はPHPが好き(かも)です

という文字列は、

?E;???CD;PHP;??AA;?D;???AB;???A9;??E0;???C5;??B7

と返されます。
この返された文字列を元のSJISに戻したいのですが、何かスマートな方法はありますでしょうか?
245244:02/11/26 22:08 ID:???
すみません、吐き出される文字列は

?x8E;?x84;?x82;?xCD;PHP;?x82;?xAA;?x8D;?x44;?x82;?xAB;?x28;?x82;?xA9;?x82;?xE0;?x29;?x82;?xC5;?x82;?xB7

でした…。
246nobodyさん:02/11/26 22:08 ID:???
>>244
ヒント: XMLのはエンコーディングはUTF-8と決められているらしい
247nobodyさん:02/11/26 22:17 ID:???
if($flag){
  register_globals='おやつ';
}
248nobodyさん:02/11/26 22:50 ID:???
if(register_globals=="おやつ";){
print "
    ,――、
   / ̄ ̄l|
   ■■-っ
    ∀`/
 __/|X/\
Ё|__ | / |
   | У  |
ンナコターナイ
";
}
249244:02/11/27 00:05 ID:???
あぁっ、もう、激しく化けちゃっててスミマセン。

>>246
ありがとうございます。一筋の光が遠くの方に見えてきました。

$str = "¥x8E¥x84";
echo $str;

の場合はちゃんと「私」と表示されるのに、&#x8E;&#x84;から
preg_replaceで置換した文字列だと表示されないのはなんででしょう…?
250nobodyさん:02/11/27 01:23 ID:???
>>248
必死だなw
251nobodyさん:02/11/27 01:39 ID:???
>>248
タモさん必死だな
252nobodyさん:02/11/27 11:53 ID:???
>>249
ereg_replace はダメか?
253244:02/11/27 21:16 ID:???
>>249
ereg_replaceでもうまくいきませんでした…

$str1 = "\x8E\x84";
$str1 = mb_convert_encoding($str1, "EUC-JP", "Shift_JIS");
echo "str1= " . $str1 . "<br>\n";

$str2 = "&#x8E;&#x84;";
$str2 = ereg_replace (";", "", $str2);
$str2 = ereg_replace ("(&#)", "\\", $str2);
$str2 = mb_convert_encoding($str2, "EUC-JP", "Shift_JIS");
echo "str2= " . $str2 . "<br>\n";

とした場合、出力結果(EUC-JPのhtml)は

str1= 私
str2= \x8E\x84

となります。どこがおかしいのでしょうか…サッパリわかりません。・゚・(ノД`)・゚・。
254nobodyさん:02/11/27 22:31 ID:wgGugnNo
$str2 = preg_replace('/?x/','%',$str2);
$str2 = urldecode($str2);
255nobodyさん:02/11/27 22:32 ID:wgGugnNo
↑?=&#
256244:02/11/27 23:22 ID:???
>>255
アドバイスありがとうございます。実は

$str2 = preg_replace ("/&#x([0-9a-fA-F]{2});/", "%$1", $str2);
$str2 = urldecode($str2);

とかでも試していて、正しく表示されることは確認しています。
これが一番スマートなカンジでしょうか?

ところで、>>253の$str1はナゼそのままで正しく表示されるのでしょう?
そーゆーもの?
257nobodyさん:02/11/27 23:57 ID:iBP1PmSK
このスレの住人では対応出来ない!!
258nobodyさん:02/11/28 00:07 ID:???
"\x84\x8E"は2バイトです。'\x84\x8E'だと8バイトです。
そんなもんです。
259nobodyさん:02/12/05 11:25 ID:???
for(10){echo="10回";}
単に10回まわしたいのですがどうしたらいいですか?
260nobodyさん:02/12/05 12:18 ID:???
eqが無いと聞いたんですが、文字列を比較したい場合はどうすれば…
非常に困ってます。
261nobodyさん:02/12/05 12:39 ID:???
>>261
===
262nobodyさん:02/12/05 12:53 ID:???
一度ぐらいマニュアルに目を通しても罰は当たらんと思うのだが。
263nobodyさん:02/12/05 14:58 ID:???
今見に行ってきました。
pdf版しか無いと思い込んでたので敬遠してしまっていてw;

感謝。
264nobodyさん:02/12/05 19:55 ID:???
>>259

<?php

for($i=1;$i<11;$i++) echo $i."回目のループですが何か?<br>\n";

?>
265nobodyさん:02/12/06 23:59 ID:???
perlをPHPに直すときの弊害はやはり
global変数なんですが、どっちのやり方がいいでしょう?

Perlにおいて

sub a{
$x=1;
&b;
}
sub b{ x++; }
266nobodyさん:02/12/07 00:00 ID:ahw/ygQO
PHPにおいて
1、
function a(){
$x=1;
b($x);
}
function b($x) { x++;}

2,
function a(){
global $x;
$x=1;
b();
}
function b(){
global $x;
$x++;
}
267nobodyさん:02/12/07 00:01 ID:ahw/ygQO
xの前の$が抜けてるところがありました…
それとも上の2案以外にもっと(・∀・)イイ!やり方があるでしょうか?
268nobodyさん:02/12/07 00:02 ID:ahw/ygQO
言い忘れてましたが因みに
b()内で$xの値は画面に出力する予定です。
print $x;って。
269nobodyさん:02/12/07 04:20 ID:???
>>264
$i = 0;
while (i < 10);
echo $i;
270nobodyさん:02/12/07 11:03 ID:???
echo"gigi";
271nobodyさん:02/12/07 16:18 ID:7eULV5Qv
2chの書き込み時のようにポートつついてプロクシ制限するときは
どうやってコードを書けばよいですか?
272nobodyさん:02/12/08 10:45 ID:???
>>268
perlでも
sub a {
my $x = 1;
&b( $x );
}
sub b {
my $x = shift;
%x++;
}
って俺はやるけど。
273nobodyさん:02/12/08 10:47 ID:???
>>271
Socketを使う。
使い方は perldoc Socket を参照されたし。
274273:02/12/08 10:51 ID:???
ってココPHPスレかw。

>>271
socket_connect で $_SERVER["REMOTE_ADDR"] のチェックしたいポートに
接続できるか試してみれ。
接続できたらエラー返せばいい。
275nobodyさん:02/12/08 12:21 ID:???
>>274
ありがとうございます。
やってみます。
276nobodyさん:02/12/08 12:59 ID:???
socket_connectは、コン パイルやり直さないとだめみたいでした。
fsockopenでやってみます。
277nobodyさん:02/12/08 13:23 ID:???
>>265
クラス使えば?
$this->x って感じで関数内で扱えるし。
とクラス化を推進してみるテスト
278nobodyさん:02/12/09 14:44 ID:7JN9kr7j
jpgraphで日本語扱う方法ありませんか?

動作環境
FreeBSD 4.4
PHP 4.2.3
gd 2.0 or higher
279nobodyさん:02/12/09 15:55 ID:W+Y68UCp
ttp://www.softinn.jp/doc/lib/index.html
このページにあるライブラリの「メール受信・分解」というクラスを使いたいんですが、
使い方が全く解りません。

クラスとか、オブジェクト指向?ってのが、全く解らないんです。
この「メール受信・分解」クラスを使って、
メールを読み込むには、どのようなコードを書いたら良いんでしょうか?

もしよろしければ、サンプルコードを教えてもらえれば幸いです。
280nobodyさん:02/12/12 10:24 ID:YConQHPT
メモリを節約したいと思ってます。

$_SESSION に登録する変数の内容が小さいほうが、ウェブサーバのメモリの節約になりますか。

281nobodyさん:02/12/12 10:31 ID:???
そら$_SESSIONに限らず何でも変数のサイズが小さい方がメモリ食わんわな。
282nobodyさん:02/12/12 10:47 ID:???
>>279
まずクラスの使い方を勉強するなり質問するなりしたほうが良いのでは?
283nobodyさん:02/12/12 13:02 ID:qs26Iqx3
PHP初心者です。質問させてください。
当方、Java畑出身なのですが、
a.php→b.php
という感じで別のPHPプログラムに、オブジェクト渡しを行う事は可能でしょうか?
a.phpで使われたクラスのインスタンスをb.phpに渡したいのですが。

MVC設計が染み付いてしまって・・・。

すいませんが、教えてください。m(_)m
284nobodyさん:02/12/12 13:20 ID:???
>>283
includeじゃだめ?

b.php内で

include "a.php";
でいけるとおもた。
285nobodyさん:02/12/12 15:37 ID:???
>>284
そういう事だと思います。
286283:02/12/12 16:21 ID:qs26Iqx3
>>284-285
レスありがとうございます。
こちらの思い描いてたやりかたは

index.html→a.phpに変数$valueをpost
a.php内部でclass hogeをnewして、オブジェクト$fooを生成。
$foo->setValue($value)とかして、値をセット。
a.php→b.phpに$foo(値のセットされた)を渡す。
b.phpで処理して動的にhtmlを生成

というものだったのですが。
includeを使うということは
index.html→b.php(include a.php)へpost
というイメージになるのでしょうか?

何がやりたかったかと言うと、
b.phpでヒアドキュメント形式でhtmlにより近い形で表示部のみ書いておき。
前段階のロジック処理部をa.phpで済ませ、表示要件のみをb.phpへ渡す
といった事ができないかなぁ、と思いまして。
a.phpの内部処理によって、b.phpとc.php(bと同じくview担当)のどちらに
オブジェクトを渡すかを、判断させたりできたら良いなと。

htmlソースの中に<?php〜?>を埋め込むのを極力避けてみたかったんです。
デザイナーさんから貰ったHTMLソースの先頭と末尾にチョコっとつけたし、
変数の相当する部分に、渡されたオブジェクトから値をgetする処理を
書き込むだけですめば理想かな・・・などど。

現実には、こう簡単にいかないのは重々解っておりますが、近い形が出来ないかと
思いまして、質問させていただきました。

なにぶん、PHPはまだ触れ始めたばかりなので、長文乱文、失礼しました。
287nobodyさん:02/12/12 19:22 ID:???
>>286
if($value){include "b.php";}
else{include "c.php";}
288nobodyさん:02/12/12 20:32 ID:???
>>286
とするとテンプレートを採用しているBBSみたいなのを実装したいって事?
つか、無理にOOPでやらなくても良いと思われ。

ちなみに漏れはテンプレートタイプのBBSを作ろうとしてるけど未だに仕様を固められない。

1. デザインファイルを別のHTMLFileとして生成し特定のキーワードを入れておく
で、そのHTMLFileをPHPに放り込んでキーワードを変数や処理に置き換えて新たに動的生成用のPHPを作る。
2. HTMLとPHPが混在している(まぁ普通そうだわな)FileでできるだけPHPを見えないようにしたものを作る。
のどっちにしようかで迷ってる。
前者のがデザイナに喜ばれるけど性に合わないし(なんか無駄な冗長っぽくて嫌)、後者はプログラム嫌いなデザイナが居ると
ヒステリーパニックが発生する。

まぁ1. だと常に動的生成するのと一端処理して静的なFileとして書き出してそれを送るって言う二通りの手段がとれる。
が、デザインを変更する際に動的は負荷がかかるし、静的はヒューマンエラーの恐れがあるしなぁ・・・

程よい中間点は無い物か。
289nobodyさん:02/12/12 20:40 ID:LCTnjWgM
意識する必要はないと思うよ。漏れは30kbくらいの文字列をsessionでやりとりしてる。
百人同時にアクセスしたところでせいぜい3M。安いもんだろ。
290nobodyさん:02/12/12 20:48 ID:???
>>289
参考サンクス。

なんつーか、Sourceを1文字2文字でも小さくすることに悦びを感じる性質なもんでして(^^;;;

それさえなけりゃ既に前者で・・・

縮小最適化まんせー!
291nobodyさん:02/12/12 23:56 ID:???
> a.php→b.php
> という感じで別のPHPプログラムに、オブジェクト渡しを行う事は可能でしょうか?
> a.phpで使われたクラスのインスタンスをb.phpに渡したいのですが。

include を使わないなら・・
_SESSION にオブジェクトのインスタンスを格納出来るけど・・・そういう事ではなくて?
292nobodyさん:02/12/13 00:41 ID:???
>>291
オブジェクトのセッションはれたんだ・・・
無知鬱吊ってきま。

・・・の前に先生んとこいってこよ。
293nobodyさん:02/12/13 02:24 ID:g6K/HTZ1
PHPマニュアルのロゴに雪が積もったのはいつからですか?
294nobodyさん:02/12/13 10:54 ID:???
>>293
11月27日 ぷ。
295283:02/12/13 11:42 ID:eyNFb0nZ
>>287
>>288
>>291

レスありがとうございましたー。
やはりPHP風の思想が理解できてなかったようで、みなさんのレスで目から鱗
がポロポロでした。

今まで、OOPのみの世界にいたので、どうも頭が凝り固まっていた様です。
文法や記号等は、調べれば一発なのですが、思想となると、なかなか本読んでも
理解しにくいですね・・・修行せねば。

ありがとうございました。また何かあればよろしくおねがいします。
296nobodyさん:02/12/13 13:06 ID:???
PHPでオブジェクトを使うメリットは?
297nobodyさん:02/12/13 17:17 ID:???
>>296
それは他の言語でのオブジェクトを使うメリットと合致すると思うがどうか。
298nobodyさん:02/12/13 18:40 ID:???
>>297
おそらく>>296の言いたかったことは、PHPでオブジェクトを本当に有効に
使えるだけの仕組みが存在するのか、という事ではないかと。

PHPはあくまでオブジェクトに対応した、という形で出来ているので
言語仕様からオブジェクトありき、で設計された他の言語と比べて
オブジェクトを使うメリットは必ずしも一致しない、というのが今の感想です。

だからといって、良い悪いじゃなくて、思想がそもそも違うと言う事で・・・。
299nobodyさん:02/12/13 19:16 ID:???
漠然とした質問なのですが
PHPとPerlならどちらが将来性がありますか?
また、WEB製作・運営に有利なのでしょうか?
300nobodyさん:02/12/14 00:20 ID:???
>>229
将来性があるのはPHPで有利なのもPHP。
でもなPerlを知ることも大事だと思うぞ。
まずしっかりPerlやってみ。それからPHPやってみ。
アホくさくて、もうPerlには戻れなくなるから。(w
Perlにハマッチャー仕方ないけどな。これでいいか?
301nobodyさん:02/12/14 00:42 ID:p2nwe6Xb
test
302nobodyさん:02/12/14 02:49 ID:6HjHDV03
偶然、拡張子がなくてもphpファイルが表示されることに気づきますた。
これはデフォルトの設定なのでしょうか?
またApacheの設定のおかげなのか、
PHPの設定のおかげなのか、
どっちでしょうか?
303nobodyさん:02/12/14 03:11 ID:???
俺のおかげだ、ひれ伏せ。
304nobodyさん:02/12/14 13:54 ID:???
>>298
そういう意味ではJSPへGoって感じですな。
漏れの場合だとDBへの接続処理等を一まとめにする等のそんなにきちんとしてない使い方しかしてなかったら
気付かなかった。

まぁOOPを活かしたいならPHPは向かないわな。
もっとも楽をするために簡易OOPを使えるのがPHPだとは思うが。

# 個人的にはOOPを活かす為のプログラムってのは主従逆転だと思ってたりするが。

>> 299
将来性についてはどっちにしろ微妙だと思われ。
現状は戦国時代だから。
しくみや言語をごっちゃにして言うなら、ASP、PHP、JSP、Perl、C等様々な選択肢がある。
正直、これが一番ってのは判らない。

で、有利不利だけど何を作り、どれくらいの規模になるかによる。
殆どどこでも動かしたいのならPerl
環境が整ってるならPHP、ASP、JSP
ひたすら速度を求めたり、なんでもしたかったらC
などいろんな条件があるからな。(条件は他にももっと沢山あるが)

なんにしろ、広範な知識をつけるために色々遊んだほうが有利になると思われ。
# 仕事の有利不利は使用言語の有利不利ではなく製作者の能力に依存する。
305nobodyさん:02/12/14 14:43 ID:???
>>304
正しくはPHP以外が戦国時代だな。(w
306nobodyさん:02/12/14 16:10 ID:???
>>305
Server Side Languageの戦国時代な訳だが。
307nobodyさん:02/12/14 18:02 ID:???
>>304
OOPってのはOOAやOODを生かすためにあるものなので。
OOA・OODの否定はOO自体の否定な訳で。

書きなぐり個人作業ではまかない切れない世界から出てきた手法ですから。
道具を状況に応じて上手く使うってだけの問題かと思われ。

ソースの可読性と冗長性を計りにかけりゃ、可読性がめっぽう重いのがOOの世界。
これ以上はスレ違いにつきsage
308nobodyさん:02/12/14 18:44 ID:???
>>306
おまえ厨だろ?(w
309nobodyさん:02/12/14 21:05 ID:???
>>308
オマエモナーw
310nobodyさん:02/12/16 01:36 ID:hCx9IPwF
携帯とPCでの振り分けをしたいのですがうまくいきません。
最初

header("Location: ez.php");
exit;

↑にしたらezwebで動いてくれませんでした。
(これ自体が間違ってますか?)

そこで↓のようにしてみたのですがやっぱり上手く動きません。

<?
$visitor_host = gethostbyaddr($REMOTE_ADDR);
$visitor_refe = $HTTP_REFERER;

$visitor_host= explode( "/", $REMOTE_ADDR );
switch( $visitor_host[0] ){
case "ezweb" : $file = "ez.php"; break;

default : $file = "index.php"; break;
}
include $file;
?>

申し訳ありませんがどなたか力を貸してください…。
311404.HDML ◆StMXML.EXE :02/12/16 02:08 ID:???
記念カキコ
312nobodyさん:02/12/16 02:46 ID:???
ezwebを扱ったことないけど、暇なのでカキコ。
$REMOTE_ADDRにちゃんと値入ってる?
User-Agent使わないのは何故?
Locationは http://で始めるのが常識
313310:02/12/16 03:12 ID:???
お返事ありがとうございます。
今FTPがつながらないのでまた報告しに来ますね。

>Locationは http://で始めるのが常識

そうなんですか…。
今までHTMLしか書いたことがなくてPHPが使える鯖に移って
はじめたばっかりなんです…。
というかプログラム自体がはじめてでさっぱりです。

>User-Agent使わないのは何故?

USER_AGENTは偽装できちゃうんでPCからでも見れちゃうからです。
ちなみに今はこれを使っています。

$user_agent= explode( "/", $_SERVER['HTTP_USER_AGENT']);
switch( $user_agent[0] ){
case "DoCoMo" : include("k.php"); exit;
case "L-mode" : include("k.php"); exit;
case "ASTEL" : include("k.php"); exit;
case "UP.Browser" : include("k.php"); exit;
case "PDXGW" : include("k.php"); exit;
case "J-PHONE" : include("k.php"); exit;
}

これなら問題なく動いているんですが偽装をはじきたかったので…
include("k.php")ってなってるんでLocationもファイル名だけでいいんだと思ってました。
314310:02/12/16 03:15 ID:???
k.phpはテスト用ファイルでした…。
各社対応phpファイルに振り分けにしてます。
315nobodyさん:02/12/16 08:21 ID:???
"text/x-hdml; charset=Shift_JIS hdml"
316名無しさん:02/12/16 20:09 ID:eEnVcco/
すいません
マルチバイトで正規表現の.← 
これって日本語一文字(2byte)を意味するのでしょうか、

それとも .. で一文字?
317310:02/12/16 21:24 ID:???
>>312さん

>Locationは http://で始めるのが常識
なんかこれを直すだけでうまくいきました。
どうもありがとうございました。
318nobodyさん:02/12/16 21:27 ID:???
>>317
http://www.studyinghttp.net/rfc_ja/2616/sec14.html#sec14.30
これも一度は見とけよ。

Location = "Location" ":" absoluteURI
                   ~~~~~~~~~~~~
319yani ◆saNSktNEdQ :02/12/16 22:28 ID:8G3Bnajs
wget の FTP mirroring がLIST発酵するところでこけるもんだから、
(根助ならうまくいくもんだから)FTPサーバのほうが設定変えたのかと思って自作スクリプトを
書きはじめて、途中で一応RFCのFTPのコマンド一覧くらい見とくべえと思って
RFC読んでみたらPASVなんてコマンドがあるんで、何気無しにpassive FTPオプション
つけてwget起動したら、スカっとうまく逝ってヤンの。
ルータの設定きつくしたの忘れてたぜ。
しかし、LISTなんてコマンドをFTPサーバからのコネクションで実装しているとは. RFC恐るべし。
320310:02/12/16 23:25 ID:???
>>318さん
かさねがさねありがとうございます。
プログラムは全くの初心者なので実は読んでもあんまり意味はわからなかったんですが…。
これからがんばって勉強します。
321nobodyさん:02/12/17 16:01 ID:luHNSdPO
すいません、教えてください
PHPで配列の配列をつくり、ネストしたループでどんどん値を取り出す場合
どんな書き方が一般的ですか?
322nobodyさん:02/12/17 20:24 ID:???
>>321
多次元配列?
一番安直なやり方で

$a = array(/*メンドイから略*/);
$b = array(/*同上*/);
for ($i = 0;$i <= count($a);$i++){
for ($i = 0;$i <= count($b);$i++)){
/*処理*/
}
}

で、どうよ?
323322:02/12/17 20:25 ID:???
上の2行忘れてw
多次元配列として生成してねぇw
324nobodyさん:02/12/17 20:38 ID:???
てか、i を両方で使っちゃマズイだろ(w
325nobodyさん:02/12/17 20:57 ID:???
$hoge[$i][$j]
326nobodyさん:02/12/18 21:55 ID:cw9jSdt5
PHPであるディレクトリにあるファイルの一覧を取得するのはどうしたらいいでしょうか?
リファレンスにあるglob()は

Fatal error: Call to undefined function: glob()

とのことです。
327nobodyさん:02/12/18 22:05 ID:FF8U3rzW
http://www.abcoroti.com/gamecenter/cgi/ffa.html
http://www.redbit.ne.jp/~yasu/br/brlist.cgi

こんなのをPHPで作るときにデータはテキストかデータベースか
どちらにしたらサーバにはよいのでしょうか?
328nobodyさん:02/12/18 22:15 ID:???
>>327
データベース
329nobodyさん:02/12/18 22:16 ID:FF8U3rzW
>>328
ありがとございました
330nobodyさん:02/12/18 22:16 ID:3yzKjqMG

http://petitmomo.com/mm/

ここがちょっぴりエッチ系のめぐが運営している出会いサイトです。
もしよかったら使ってみて、、、
ヨロシクです。

めぐ(^o^)-☆
331nobodyさん:02/12/18 23:03 ID:???
>>326
readdir
332nobodyさん:02/12/19 01:00 ID:XTsygYiy
ファイルのアップロード(基本的なヤツ)にアップできるファイルの制限を付けるのって
$image_type = array("image/gif","image/jpeg");
でいいんっすか?
333nobodyさん:02/12/19 01:09 ID:???
教えてくださいませ。

$st="ギコ モナー";
echo "<FORM>";
echo "<input type=text value=".$st.">";
echo "</FORM>";

と、変数にスペースやタブが入っていると、テキストボックスでは
スペース以降が消えてギコだけになってしまいます。
スペースが入ったまま、全体を表示させる方法をお教えください。
334rwxr---wx ◆jTWOZwTY1g :02/12/19 01:55 ID:???
雑談だが、自分で組んだスクリプトをphp3でも動くようにしようと思ったが大変だ。
全然動かん。大幅な改修が必要な予感。あらためてphp4の便利さがわかった。

>>333
echo "<input type=text value='".$st."'>";
335nobodyさん:02/12/19 09:06 ID:???
>>332
jpegのMIMEタイプは数種類ある。
IEはimage/pjpegを送る。
336333:02/12/19 09:33 ID:???
>>334
> echo "<input type=text value='".$st."'>";

うまくいきました。多謝です。
'と"は同じモノに解釈されると思いこんでました……。
337nobodyさん:02/12/19 12:45 ID:4OgtOoSu
↓ここのゲストブックにアクセス制限をかけたいんですが
 どうすればよいのでしょう。

http://php.s3.to/tt/tt5.php
338nobodyさん:02/12/19 16:57 ID:???
>>336
ちょっと見る場所が違う。
$st=' mona '; だと
value=".$st." -> value= mona
value='".$st."' -> value=' mona '
339nobodyさん:02/12/19 17:59 ID:???
「こんなPHPってありますか?」スレはどこでしょう・・・
340nobodyさん:02/12/19 19:52 ID:???
>>339
こんなcgiスレで「…なphp」と聞けばよい。
341nobodyさん:02/12/19 19:58 ID:???
>>332
MIMEも拡張子も当てにならない。
画像に限ればGetImageSize()で画像種別を得る。
342nobodyさん:03/01/07 00:49 ID:28f9Hhaj
age
343nobodyさん:03/01/08 11:33 ID:???
>>338
>$st=' mona '; だと
>value=".$st." -> value= mona

ずっと気になってたんだけど、
>value=".$st."
の$stの前にある文字列連結の演算子(.)は何故必要なんですか?
無くてもまったく平気ですが・・
344nobodyさん:03/01/12 17:38 ID:bYSvbPAu
ランダムバナー作りたいんですが、data.txtに書いてあるバナーURL、URL、サイト名などを
PHP内で$bnr,$url,$siteという風に認識させるにはどうすればいいんでしょうか。
345nobodyさん:03/01/12 21:36 ID:???
>>344
data.txt内のformatは?
346nobodyさん:03/01/12 21:43 ID:???
http://search.net-newbie.com/php/
このあたりから必要そうな関数を探したらいかが?

仮にdata.txtが
バナーURL,URL,サイト名
バナーURL,URL,サイト名
って感じのフォーマットだったと仮定するならば

fopenでファイルを開いて
fgetsあたりで一行ごとにデータを読んで
strtokあたりで,をトークンとして文字列を分解して変数なり配列に入れる。と。
あぁ、ちゃんとファイルは閉じろよ?
347nobodyさん:03/01/12 22:50 ID:???
>>345
フォーマットは>>346さんが書いているような感じです。

>>346
具体的に教えてくださってどうもありがとうございます。
たとえばこんな感じでしょうか?
$fp = fopen ("./data.txt","r");
while($buffer = fgets($fp, 4096)){
  list($bnr,$url,$site) = explode(",", $buffer);
}
fclose($fp);

何かおかしいところがあればご教授ください。(explodeの使い方違ってるかも…
348nobodyさん:03/01/12 23:36 ID:???
>>347
fgetcsv使え。
349nobodyさん:03/01/12 23:53 ID:???
>>347
今日び珍しいな。
キチンと自分で組んでから質問する奴は。
おじさん嬉しいぞ。
ところでそれ動かした?
まずはそれから。

>>348の言う通りfgetcsvを使うのも手だが勉強の為にfgetsを使うのも手。
350344:03/01/13 02:28 ID:???
一応上記のソースで動かしてみましたが、一番最初のデータしか
入ってきてないようでした。そんなわけで
  list($bnr,$url,$site) = explode(",", $buffer);
ここの$bnr,$url,$siteを配列にしてみたらうまくできました。

付け加えたソースはこれ。
  srand((double)microtime()*1000000);
  $num = array_rand($bnr);
  echo ("$bnr[$num]\n");

そしてもうひとつ問題があって、data.txtに相互のデータを追加して、
相互だったらバナー表示という風にしたいんです。
listのところでif文を入れたいのですが、具体的にどうしたらいいか
わかりません。ご教授いただけると嬉しいです。
351nobodyさん:03/01/13 03:54 ID:???
ぱっと思いつくのは
data.txt
内でケツにフラグをつけるってとこだがどうよ?
バナー, URI, site, flg
ってな感じに。
で、flgがあれば表示にしてなければ表示しないとか。

あー相互ってのは相互Linkの事だよね?
352344:03/01/13 10:15 ID:NmVahH2Q
>>351
相互リンクのフラグはdata.txt内に入ってます。
常にバナーを表示していたいので、データを取り出すときに
相互リンクだったらデータ格納という感じにしたいのですが。
list〜のあとにバッファを開放してやればいいんでしょうか?
353nobodyさん:03/01/13 20:15 ID:???
ifなりなんなりで判別したら?
ていうか何をしたいのかがいまいちわからん。
354nobodyさん:03/01/14 15:59 ID:nziy2bwN
かなり初歩的ですいません。
PHP4.3.0をいれて、ApacheをいれてPHPの勉強をはじめました。
で、色々と初歩的なプログラムを作ってみてたんですが
どうしても、POSTができません。
Method Not Allowed となります。
googleで検索して、どこかの設定を変えないとだめだという
のは見つけたんですが、具体的にどこをどうかえていいのやら・・・

355nobodyさん:03/01/14 16:37 ID:???
>>354
OS書かないで優雅ですね。
356354:03/01/14 16:46 ID:nziy2bwN
すいません、window2000 Proです。
357nobodyさん:03/01/14 16:49 ID:???
358354:03/01/14 17:29 ID:nziy2bwN
>>357
ありがとうございます。
しかしそれをみても、わからない・・・
The requested method POST is not allowed for the URL ***.php3
となってます。
もうちょっと勉強します。

359nobodyさん:03/01/14 22:49 ID:???
>>358
PHP-4.3.0なのにphp3??
*.php3→*.phpにすればなおるかも。
360nobodyさん:03/01/15 05:20 ID:RBRicbNg
PHPとSSIを一緒に動かすにはどうしたらいいですか?
教えて下さい
361nobodyさん:03/01/15 06:39 ID:???
>>360
httpd.confをちゃんと書け。以上。
362nobodyさん:03/01/15 07:05 ID:RBRicbNg
調べたんですけど意味が分からないんです・・・
363362:03/01/15 08:03 ID:RBRicbNg
例えば*.phpを鯖にあげて、その*.phpの中にssiを埋め込みたい
って事です
アドバイスおながいします
364126:03/01/15 08:10 ID:pIr+HNI+
アップローダーはじめました
http://www6.ocn.ne.jp/~endou/ten.html
365nobodyさん:03/01/15 08:10 ID:???
>>363
phpでやった方が高機能だと思うのだけれど。
366nobodyさん:03/01/15 08:21 ID:???
>>363
意味無いじゃん
367nobodyさん:03/01/15 08:42 ID:4Y/f41Yb
使いたいスクリプトがperl+SSIしかないんです。PHPの知識無いので…すいません
368nobodyさん:03/01/15 08:44 ID:???
ちょっとまて...perlかYO!!
369nobodyさん:03/01/15 08:51 ID:???
>>367
一応言っとくけどここは作る人の板。
370ほげ:03/01/15 11:57 ID:UyCbGV3A
>>362
いみわからんが。とりあえず、PHPで書いたページにPerlのアクセスログをのせたいと
いう過程でよいか?
371nobodyさん:03/01/15 12:34 ID:lod7zukU
文字コードについて教えて下さい。

通常、UNIX系OS+Apache+PHPモジュール+MySQLという環境での2バイト文字は、
EUC-JPで記述して、表示もEUC-JPですよね?

携帯でも見られるページがつくりたいので、表示はSJISにしたいのですが、
そのときは、どうするのが最良なのでしょうか?
PHPの記述も、MySQLに格納する文字データも全てEUC-JPに統一して、
表示の際に、表示するページをバッファしてSJISに変換するのでしょうか?
それとも、プログラム内も表示も全てSJISに統一する方法があるのでしょうか?

安価な共有レンタルサーバで運用することを前提に考えていて、
PHPのバージョンは国際化対応(4.0.4以上でしたっけ??)を前提に考えています。
よろしくご教授ねがいますm(..)mペコ
372nobodyさん:03/01/15 13:29 ID:???
>>371
mb_string
373山崎渉:03/01/15 13:30 ID:???
(^^)
374nobodyさん:03/01/15 16:22 ID:H6Vl99xR
>>370
そうです
何か方法はありますか?スレ違いだったらすみません
375nobodyさん:03/01/15 16:41 ID:???
>>374
PHPからPerlのプログラムを実行すれば良いだけでは?
376nobodyさん:03/01/15 16:49 ID:???
>>375
system禁止されてたら悲惨だな。
377nobodyさん:03/01/15 17:26 ID:RBRicbNg
>>375
どうやってやるんですか?
includeってやってもスクリプトそのものが出てしまうので

http://www.azworks.org/~az/
ここのunico diary systemとunico includerを使って
PHPページで表示させたいのです
無理でつか・・・?おねがいします
378nobodyさん:03/01/15 17:58 ID:???
>>371
国際化版なら
ttp://nxweb.dyndns.org:8080/php-i18n-using.html
のサイトを参考にするといいかも
379nobodyさん:03/01/16 00:40 ID:???
>>373
unico includerのPHP版を使おう。
380nobodyさん:03/01/16 00:57 ID:???
for($i=1;$i<=3;$i++){
これで1〜3件の記事を表示させることはできたのですが
4〜10件の記事を表示させることが出来ません。

for($i=4;$i<=10;$i++){
だと1〜10件表示されてしまいます。
どうすればいいんでしょうか?
また 10〜4と逆に表示させるにはどうすればよいでしょうか?
381380:03/01/16 00:58 ID:OzytJsyY
あげ忘れました… お願いします。
382380:03/01/16 01:17 ID:OzytJsyY
すいません。

for($i=4;$i<=10;$i++){
だと4〜10件表示されてしまいます。

の間違いでした。
383nobodyさん:03/01/16 01:18 ID:???
>>380
>for($i=4;$i<=10;$i++){だと1〜10件表示されてしまいます。

forブロックの中身をまともに書いているならあり得ません。
晒すべし。

後、for($i = 9;$i > 4;$i--)。
384380:03/01/16 01:18 ID:???
たびたびすいません…

for($i=4;$i<=10;$i++){
だと1〜7件表示されてしまいます。

の間違いでした。
385nobodyさん:03/01/16 01:19 ID:???
for($i=1;$i<=3;$i++){
これで1〜3件の記事を表示させることはできたのですが
4〜10件の記事を表示させることが出来ません。

for($i=4;$i<=10;$i++){
だと4〜10件表示されてしまいます。

でいいのか?
答えはお前何言ってんの?だけど。
386380:03/01/16 01:22 ID:???
>>383

間抜けなことをしてる間にお返事ありがとうございます。
forブロックの中身…というのも実はよくわからないのですが
ここまででいいのかな…?

for($i=1;$i<=10;$++){
$line = fgets($fp, 8192);
if (feof($fp)){break;}
$tmpline = explode('<>',$line);
unset($log,$data);
while($key = array_shift($tmpline)){
$log[$key] = array_shift($tmpline);
}
387nobodyさん:03/01/16 01:23 ID:???
何度訂正が入るか気になってF5してるのはオレだけじゃないはずだ
388380:03/01/16 01:24 ID:???
>>385
書き間違えてる!とてんぱって さらにわけわかんないこと書きました。
ほんとすいません。
1〜7が表示されてしまうの間違いです。
389380:03/01/16 01:25 ID:???
>>387
わたしは書くたびに突っ込みが入っててむちゃむちゃ動悸が早くなりました。
390nobodyさん:03/01/16 01:25 ID:???
>>386
どこにも$iが使われてないんだけれど。
もう一度フローチャートなり何なりを書いて頭の整理をすることを激しくお勧めするけど。

俺は寝る。
391380:03/01/16 01:32 ID:???
>>390
うーん全部書くとこんな感じなんですけど
これ自体がおかしいってことですかね…

<?
$logfile = 'xxx.dat';
$fp = fopen ($logfile, "r");
for($i=1;$i<=3;$i++){
$line = fgets($fp, 8192);
if (feof($fp)){break;}
$tmpline = explode('<>',$line);
unset($log,$data);
while($key = array_shift($tmpline)){
$log[$key] = array_shift($tmpline);
}
if($log[date]){
list($date[tm_mon], $date[tm_mday], $date[tm_hour], $date[tm_min]) = explode(',',$log[date]);
}else{
$date = localtime($log[Write_Time],1);
}
$log[date] = sprintf("%02d/%02d %02d:%02d", $date[tm_mon] +1, $date[tm_mday], $date[tm_hour], $date[tm_min]);

echo "$log[date]<br>\n";
echo "$log[note]<hr>\n";
}
fclose ($fp);
?>

おやすみなさい。
392nobodyさん:03/01/16 01:34 ID:???
世に出てるfor文をいろいろまねしてみたほうがいい。
答えはこの板の住人ほぼ全員が答えられるだろうけど
それではきみはまたすぐにつまづくことになる。
マニュアル読め!ってのはややオニなので
入門書を買うことをすすめます。
3000円より無駄にハマっている時間のほうがもったいないです。
393380:03/01/16 01:51 ID:???
>>392
やさしいお返事ありがとうございます。
ぶっちゃけ ttp://www.php.net/manual/ja/ こことか見ても書いてある意味がわからないです。

PHPに触れるまで他のプログラムも触ったことがなかったし(HTMLオンリーで)
PHPは自分で全部書けるようになろうとは思ってないんです…。
自分でもわかるようになればいいなとは思うんですけど
勉強しないとできないならば1件から10件の表示でいいや…と思うようなへたれです。
ごめんなさい。
つきあってくれてどうもでした。
394ほげ:03/01/16 09:42 ID:EjAVyOLA
>>362
おそくなってすまんですたぃ。
えっと。実行させるだけなら簡単
passthru ("./hoge/hoge.pl" );
でできるとおもうけど。
環境変数は渡らない。
だーかーらららん
Remote_AddrとHTTP_USER_AGENTをつけたいのであれば
putenv("REMOTE_ADDR=" . getenv("REMOTE_ADDR"));
putenv("HTTP_USER_AGENT=".getenv("HTTP_USER_AGENT"));
をつけると良いヨイ
結果。
putenv("REMOTE_ADDR=" . getenv("REMOTE_ADDR"));
putenv("HTTP_USER_AGENT=".getenv("HTTP_USER_AGENT"));
passthru ("./hoge/hoge.pl" );//相対パスで。
でいけると思う。まちがってたら。ゴメシ

395nobodyさん:03/01/16 16:43 ID:???
>>380
for($1=4;$1<=10;$1++){echo("こんばんわ");}
for($1=1;$1<=7;$1++){echo("こんばんわ");}
は同じ動きをします
ともに7回「こんばんわ」と表示します
「始まりの値」をいくつに設定しようと「終わりの値」との差分の回数だけ繰り返し処理をします
396nobodyさん:03/01/16 16:57 ID:???
>>395
$1て・・・。
397nobodyさん:03/01/16 17:15 ID:???
forループの変数に"i","j"を使うのはなぜだろう。
398nobodyさん:03/01/16 17:27 ID:???
後付けの理由かも知れないが、integerやindexの意味があるらしいよ。
個人的には、i,j,k.. や l,m,n、x,y,zも良く使うなぁ。
399nobodyさん:03/01/16 22:09 ID:???
>>397
Fortranがi以降のアルファベットで始まる変数を整数と認識するからです。
#あれ?一文字の場合だっけ?
400nobodyさん:03/01/18 00:17 ID:???
iがint(整数型)の宣言しなくても 整数型で初期化されてたって故事でしょ?

微妙に年末どこかのスレで話題になっていた記憶が……

401nobodyさん:03/01/21 12:11 ID:4zwnocSK
すいません、初歩的な質問かと思いますがお助け下さい。
環境は RedHat7.3+Apache1.3.27+PHP4.3.0 なんですが
PHP4.2.3等で動いていたソースが警告を受けるようになってしまいました。
ソース先頭で
$name_ = $_REQUEST['name'];
として、グローバル変数をローカル変数に取得して、操作しているのですが
Notice: Undefined indexのエラーが出力されるようになってしまいました。
4.2.3で動作していたソースを4.3.0にそのまま持ってきただけなのですが・・・。

どこか設定をいじらなければいけないのでしょうか?すいませんが、よろしくお願いします。
402nobodyさん:03/01/21 12:33 ID:???
>>401
Noticeを表示しないように設定すればいい。
403nobodyさん:03/01/21 12:58 ID:???
>>402
あ、それで良かったんですね・・・。ありがとうございました。
404nobodyさん:03/01/21 12:59 ID:PC/WMbRD
php 4.0.6 Win2000 です。

入力した text の値(value)を POST送信しないで取得する方法をご教示ください。
405nobodyさん:03/01/21 13:29 ID:???
>>404 Not Found
getは?
406nobodyさん:03/01/21 14:22 ID:xJNj/yik
xmlの使い方がいまいちわかりません。
シーラカンス本見てもいまいち・・・
どうやってデータ取り出すんでしょう?
本の通りにやると多次元配列に入ってしまうのですが
私の頭では二次元くらいまでしかわかりません
おたすけ
407nobodyさん:03/01/21 15:08 ID:Y93UfzJD
php 4.2.3 windows98seです。

フォームからPOST送信したデータを$_POST["name属性"]で参照できる
と書いてありましたが、どうしてもうまく参照することができないみたいです。
よければアドバイスお願いします。
408nobodyさん:03/01/21 16:32 ID:???
>>405
マルチに回答するときは質問しても無駄。
ずばり答えを書かないと無視されるよ(藁
409408:03/01/21 16:34 ID:???
×マルチに回答するときは質問しても無駄。
○マルチに回答するときは質問形で書いても無駄。
 「GETを使ってください」とか書かないと。
410hmk:03/01/23 00:27 ID:1086D/Be
>>407
そんな質問のしかたじゃ誰も答えられません。状況がみえてきません。
ソースなりエラーメッセージなりを晒せ。
------
[PR] w-inds慶太の○○飲みたいプログラマ hmk をよろしく
411ほげ:03/01/23 10:34 ID:Vttepi7g
>407
.htaccessが使えるなら、
ほにゃららっと呪文を書いておけば、前バージョンと同じ方法で
ゲトでけるよ。
同じ方法とは・・・(略)
412nobodyさん:03/01/23 15:33 ID:???
$value = $_POST["hoge"];
if ($value > 600){
なんちゃらかんちゃら;
}

ユーザーから入力された文字列をチェックして、
指定したサイズを越えるようなら末尾をカット
したいんですが、そういう関数を見付けられま
せんでした。どうしたら実現できますか?
413nobodyさん:03/01/23 15:52 ID:???
414nobodyさん:03/01/23 19:33 ID:???
415nobodyさん:03/01/23 20:13 ID:bN+QNHMW
>>413>>414
そういうことがしたかったんです。
解決しました。ありがとう
416nobodyさん:03/01/25 19:54 ID:8WYgoXD5
Perlからphpに乗り換えようと思っているのですけど、
phpで圧縮通信はどのように行ってるのでしょうか?
417nobodyさん:03/01/25 20:35 ID:???
圧縮通信?
418nobodyさん:03/01/25 20:41 ID:???
gzip圧縮してブラウザに転送するやつのことなら、あるよ。
マニュアルでいうと「出力制御関数」のあたり。
419417:03/01/25 20:44 ID:???
>>418
それのことか。
C同様、popenだね。閉じるときはpclose。
420416:03/01/25 21:03 ID:???
>>418
string ob_gzhandler ( string buffer [, int mode])
でいいのでしょうか?
421nobodyさん:03/01/25 21:20 ID:???
質問させてください。

PHPに触れてみようと思い、レッツPHP! のぁぷろだをローカルPCに設置してみました。
ソースは一切修正せずに使ってみたところ、以下の問題が起こりました。
1. サイズが表示されない。そもそもログにサイズが書き込まれていない。
2. ファイルの削除ができない。ただしログから該当行は削除される。

ソースを修正していない以上、環境の問題だと思うのですが、
まず何から当たってみるべきでしょうか?

ローカルの環境は、FreeBSD 4-stable + Apache 2.0.44 + PHP 4.2.3 です。
422nobodyさん:03/01/25 21:27 ID:???
>>421
PHPの文法から学べ。

アップローダなんぞ10年早い。
423nobodyさん:03/01/25 22:28 ID:???
>>422
あれまごめんなさい。

とりあえず、サイズが書き込まれないのは、該当する $upfile_size という変数に
値を入力する処理が抜けているためであるようです、多分。
# $upfile_size という変数自体、検索しても1箇所(=ログの先頭行を作るところ)にしか現れないし

削除されないのは、その前の if(file_exists(... の条件で既に引っかかっていて、
unlink のところまで処理が来ていないためのようです、多分。

ということでそもそも環境が正しいのかどうかは判らずじまいですが、
忠告通り文法学んでから自作することにします。お邪魔しました。
424nobodyさん:03/01/25 22:28 ID:???
>>423
がんばれよ。
425nobodyさん:03/01/26 00:50 ID:???
>>424
ありがとございます。

間違ったこと書いてしまっていたのが解ったので今のうちに修正。
> $upfile_size という変数
ソースの方で、<input type="file" name="upfile" ...
となっているので、$upfile_size でいーんですね。
で、私の環境は 4.2.3 (>4.2.0)なのでそのままではこれが使えず、
その代わりに $_FILES['upfile']['size'] を使えと。

ふーん、PHP おもろいっスね。
426nobodyさん:03/01/28 21:07 ID:???
あげとく
427nobodyさん:03/01/29 15:42 ID:M6udjUCY
すいません、質問させてください。

PHPを使ってリダイレクト処理を行うにはどのようにすれば良いのでしょうか?

JAVAでのresponse.sendRedirectのようなものがあればと思うのですが
ご存知の方、おられまいたら、なにとぞご教授下さい。
428nobodyさん:03/01/29 15:59 ID:SzV4e5aw
>>427
header("Location: http://www.php.net/"); /* ブラウザをPHP Web サイトにリダイレクトする */
exit; /* リダイレクトを行う際に以下のコードが実行されないようにする */
429nobodyさん:03/01/29 16:14 ID:???
>>428
2行目のコメントに意義あり。
430nobodyさん:03/01/29 17:34 ID:???
>>429
異議じゃねーのか。
431nobodyさん:03/01/29 17:48 ID:???
最近PHP始めたのですが、私の回りではみんなemacsとか秀丸エディタとかで開発してるんですけど
VBみたいなツールはないんですか?ずっとVBだったのでなんか過去に戻ったような気分なんです。
それともエディタで開発してるのはうちの会社だけですか?
432nobodyさん:03/01/29 19:17 ID:???
>>431
エディタのカラーリング機能を使え。
あるいは eclipse か zend。
eclipse はまだ仕事にはきついぞ。
433nobodyさん:03/01/30 02:00 ID:???
>>432
zendはわかるけどeclipsってJAVAじゃないの?
434nobodyさん:03/01/30 08:01 ID:???
>>433
ちゃんと情報読みな。プラグインでどんな言語でも使える。
435nobodyさん:03/01/30 21:35 ID:???
そういや昔そんな名前のミッドシップカーがあったよね。
今も手に入るのかな?
436nobodyさん:03/01/30 21:56 ID:???
>>435
ジャントジョウホーオミナー

みたいな?
437nobodyさん:03/01/31 11:03 ID:???
デトマソパンティラっちゅー外車のこつかい?
438 :03/02/01 13:02 ID:???
すいません。
初心者なので教えて下さい。
マニュアルやリファレンス関係を探したのですが、見つけられなかったのです。
SQL実行失敗で:Column count doesn't match value count at row 11と出たんですが
これって11個カラムが多すぎるという事で良いんですよね? 辞書引いて多分そうだと思ったのですが…
ちなみに言うとprimary key でtext に設定して、合計で33個あるんですが、やっぱ多すぎですか?
439nobodyさん:03/02/01 13:24 ID:???
MySQLのエラーみたいだね。
insert into テーブル名 ( 項目名リスト ) values ( 値リスト ) としたとき、
項目名リストの数と 値リストの数が一致してないんじゃないかな。

MySQLは使ったことないんで間違ってたらスマソ
440nobodyさん:03/02/01 13:34 ID:???
>>438
11行目(row)において、カラムの数と値の数が一致していません。
441 :03/02/01 14:51 ID:???
どうもご親切にありがとうございました。そういう事でしたか。
英和辞典が古いせいもあるし、知識がないので全然見当違いの事を言ってました。
442nobodyさん:03/02/01 15:24 ID:h8yp1rmm
表示しているURLを取得して、
このURLは「aaaaaaaaaaa」とHTML出力、
それ以外のURLは「bbbbbbbbbbb」と出力したい。

どうすんの?
443nobodyさん:03/02/01 15:27 ID:???
>>442
>表示しているURLを取得して、

詳しく解説。
444nobodyさん:03/02/01 15:33 ID:???
>このURLは「aaaaaaaaaaa」とHTML出力、
>それ以外のURLは「bbbbbbbbbbb」と出力したい。

解説いらないのか・・・
445nobodyさん:03/02/01 15:34 ID:???
>>444
めんどいからな。

if(konoURL == aruURL)
print("aaaaaaaaaaa");
else
print("bbbbbbbbbbbbb");

と好意的に解釈した。
446nobodyさん:03/02/01 15:35 ID:???
 
447nobodyさん:03/02/01 15:43 ID:???
ブラウザのアドレス欄にあるURLの取得。
例えば、URLに「hogehoge」と含まれていたら、
HTMLで「HogeHoge Homepage」とか出力したいのですよ。
含まれていなかったら「No HogeHoge Homepage」とかな。
448nobodyさん:03/02/01 15:52 ID:???
>>447
でも、PHPが呼び出されるときのURLは間違いなく〜.phpだ。
449nobodyさん:03/02/01 15:54 ID:LEn5b6Sa
450:03/02/01 18:37 ID:/eR4kJXs
>>447
ほれ
$url = $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
echo (preg_match("/hogehoge/", $url)?"":"No ")."HogeHoge Homepage";
--
俺的ポータルサイトを作ろう
http://mysite.ddo.jp/
451nobodyさん:03/02/02 04:48 ID:???
http://timidmacer.s5.xrea.com/error_img/
http://timidmacer.s5.xrea.com/error_img/daghuiahiuga.swf
↑見たいに「制限してるファイル」や「ないファイル」
を参照したらエラーが出るようにできないでしょうか?
多分すれ違いだと思うのですが、わかる人がいたらぜひ教えてください
452nobodyさん:03/02/02 05:04 ID:???
Webサーバの機能。
ErrorDocumentで検索すれば設定の仕方は分かるよ。
2chでもおもしろいエラー画面を紹介しあってるスレがあったと思ったんだが、
ぱっと見たところ無くなったみたいだなぁ。
てか確実にスレ違いって分かるだろ(w くだ質で聞こうと思わなかったのか?
453nobodyさん:03/02/02 05:06 ID:???
>エラーが出るようにできないでしょうか

出るようになってるっしょ、普通。
リンクを押したらイベント発生で、URLをスクリプトに渡して
URL先のファイルを読んでヘッダみて404なり403なりを
判断するとかそういうことっスか?
454nobodyさん:03/02/02 06:06 ID:nv4brzgK
http://jsweb.muvc.net/index.html
★☆★幸福になりたーい!!★☆★
455447:03/02/02 10:26 ID:???
>>450
あなた神!神ついでに、
「hoge」というURLが含まれていたら「aaaaaaaa」と、
「unko」と含まれていたら「bbbbbbb」と、
何も含まれていなかったら「ccccccc」と出力する場合を教えてください。
456nobodyさん:03/02/02 10:27 ID:???
>>455

>>445




             お 前 は ア ホ か ?
457nobodyさん:03/02/07 12:25 ID:wF6GSoid
index.phpにnews.logをincludeさせて表示させています。
WWWCなど特定の条件で見ている人にはに更新日付のみ表示させたいのですがうまくいきません。

<?
if(ereg("WWWC", $HTTP_USER_AGENT )){
$lastmod = filemtime(__FILE__);
echo "最終更新日 " . gmdate("Y/m/d H:i:s (D)", $lastmod + 9*3600) . "";
exit;
}
?>
<html>〜

<?
$logfile = 'news.log';

>
〜<html>

index.phpが更新されると更新日付も新しくなるのですが
news.logが更新されても更新日付は変わりません。
http://www.php.net/manual/ja/function.clearstatcache.php
このキャッシュのせいなのかそれともincludeする分は反映されないのでしょうか。
458nobodyさん:03/02/07 12:47 ID:???
>>457
なぜincludeするファイルの更新時間を取得しないの。
459nobodyさん:03/02/07 12:58 ID:???
>>458
そうするとindex.phpだけ更新した時の更新時刻が取得できないと思うんですが…
どちらか新しい方を選ぶとかしたらいいということでしょうか。
460nobodyさん:03/02/07 21:10 ID:SVsAOO1i
例えば登録型リンク集みたいなやつでいいんですが、同じ処理をする場合、
次のどれが一番サーバに負担少ないでしょうか?
1. perl単独
2. perl + データベース(MySQL)
3. PHP
4. PHP + データベース(MySQL)
461nobodyさん:03/02/07 21:22 ID:???
>>460
正直、どれでもいい。
462nobodyさん:03/02/07 22:13 ID:???
>>459
単純に大小を比較すればいい。
463nobodyさん:03/02/07 22:39 ID:???
>>462
お返事ありがとうございます。
ということは結局index.phpとnew.logの両方の更新日付をとるしか方法がないということでしょうか。
キャッシュは関係なくてincludeする分は反映されないということなのかなあ…
464:03/02/08 02:21 ID:cJt+BkwC
> キャッシュは関係なくてincludeする分は反映されないということなのかなあ…
ファイルになったキャッシュなんてスクリプトからは見えないよ(そんな
の無いし)。両方の参照しないとダメ。
それと時間情報だけ返したいなら、$HTTP_USER_AGENT なんて参照せずに
$_SERVER["REQUEST_METHOD"]=="HEAD" で判定する方がプロトコルに沿っ
ていて吉。
--
http://mysite.ddo.jp/
465nobodyさん:03/02/08 08:53 ID:???
PHPを始めたいと思っているのですが、ネット上の解説を見ると皆ApacheかIISをインストールして
モジュールを設定して・・・という様な少々大げさなセッティング方法しかみつかりません。

テキストを吐き出す程度の機能でよいのですが、なにかいい方法ないですか?
466nobodyさん:03/02/08 10:56 ID:???
>>465
Anhttpd + php.exe
467nobodyさん:03/02/08 15:44 ID:???
>>466
Webサーバー機能が要らない、という意味だったのです。すみません。

でもphp.exe使えばいい(というかdllやiniだけじゃなくてexeファイルが存在するという事)
が分かったです。ありがとう。これでバッチリです。
468nobodyさん:03/02/08 18:20 ID:???
Apache2.0.44とphp-4.3.0のインストールに失敗して、
どうしたらいいか路頭に迷ってたどり着いたら、
モロに >>32 氏の事例でした。
32氏と戊寅氏にThanks.

RedHat逝ってよしいいぃぃぃ〜〜〜〜
469nobodyさん:03/02/08 18:24 ID:???
468の追記

同じくRedHat7.2だったですが、
うちはどちらもRPM使わずソースからいきました。
会社の環境がLinuxじゃないんでRPM禁止令…
470nobodyさん:03/02/08 19:31 ID:???
>>464
なるほど…
お返事ありがとうございました。やってみますー
471nobodyさん:03/02/09 15:10 ID:???
PHPでsedのy/やperlのtr/みたいな処理をしたいときはどうするの?
472nobodyさん:03/02/09 15:31 ID:???
PHPのstr_replaceみたいな処理とは違うの?
473nobodyさん:03/02/10 13:48 ID:rjSp0W7T
みんな心がさもしいね
474 :03/02/10 14:30 ID:???
471さんが、sedのy/やperlのtr/みたいな処理だって。
475nobodyさん:03/02/10 19:41 ID:???
PHP版トリップ計算スクリプトを教えてください。
ってはっきり言えよ。
476nobodyさん:03/02/10 21:36 ID:???
>>475
違うと思うぞ。
477nobodyさん:03/02/10 22:20 ID:GQ633UYY
単純なベンチマークで、ページの生成に0.2sec程かかるのって遅いですか?
for内でincludeしてるのがいけないのだろうか。
478nobodyさん:03/02/10 22:37 ID:???
>>472
??と思ったら、PHP4以降は置換文字列それぞれのところに配列で指定ができる!OK!
あーでも、この関数マルチバイト対応のが見当たらない。
対象となる文字によってはこれでいけるだろうけど。


>>475
トリップ生成の類のプログラムにはPHPはあまり向いてないと思う。
479nobodyさん:03/02/10 22:44 ID:???
>>477
スピードはともかくとして、
>for内でincludeしてるのがいけないのだろうか。
は穏やかじゃないなぁ。

>>478
>トリップ生成の類のプログラムにはPHPはあまり向いてないと思う。
そのこころは?
480nobodyさん:03/02/10 23:16 ID:???
include先の中の変数のパースってどうやったらいいものなんでしょう…。
変数の中身が決まるfor文内でincludeしないとうまくいかん。当たり前か。

配布されてるような、テンプレート用のクラスを使うほどのものでもないんですよねぇ。
481nobodyさん:03/02/11 12:50 ID:???
最近PHP始めたのですがみなさんテキストエディタで開発してるんですか?
プロっぽい(?)開発ツールとかあるんでしょうか(高くないやつ)
482nobodyさん:03/02/11 12:58 ID:???
>>481
完成度の高い物はあまり存在しない現状。

ちなみに俺、秀丸。
483nobodyさん:03/02/11 13:13 ID:???
>>481
俺も秀丸。

なんかJビルダーみたいなclass管理のできるエディタってないもんかね。
PHP5を見越してさ。
484nobodyさん:03/02/11 13:44 ID:???
webstudio(Eclipse)を使い始めたけど、クラス管理があるよ。
Visual.NETもいいって話を聞いたけど、使ったことないので分かんない。
前に調べた時は、PHPEdit、PhpIDEってのがあったけど、日本語通るかどうかちょっと不安。

でも普段は秀丸。
485nobodyさん:03/02/11 14:27 ID:???
VisualStudio.NETでもPHP使えるの?
486nobodyさん:03/02/11 15:09 ID:???
>>485
どんな言語用にも使える仕組みがあるみたいだけど。
487nobodyさん:03/02/11 15:25 ID:???
漏れもeclipse(webstudio)を使ってみているがメインは秀丸。>>484と一緒だね。
webstudioはどっちかってゆーとビューワーとしての使い方かな。

webstudioの開発元
http://www.xored.com

日本サイト
http://webstudio.japansite.org
488nobodyさん:03/02/11 15:28 ID:???
秀丸とPHPの関係を激しく追求したくなったw

俺、メインが秀丸ってだけで使ってるけど。
489nobodyさん:03/02/11 15:53 ID:wdU5WL5+
俺はサクラエディタとK2Editor
490nobodyさん:03/02/11 15:54 ID:???
thk!
webstudio使って見るYp!

>>488
ていうか
使いやすいエディタ == PHPで使うエディタ
になってるようなw

ほんとはね〜秀丸+EMエディタみたいなエディタが欲しいんだ〜
491nobodyさん:03/02/11 16:09 ID:???
いや一応表明しておこうかなと思うだけなんだが、
俺も秀丸なんだよ。。
Webstudioっていうのはちょっと見た感じではよさそうだな。
時間があったら使ってみるよ。使った人はレポよろしこ〜
492nobodyさん:03/02/11 16:16 ID:???
>>491
スレの流れ的にwebstudio使ってる人多いと思うよ。
自分も使ってる。
実行前に文法チェックしてくれるのはまぁ助かるからね。
でも、javacみたいなちゃんとしたコンパイラがないから
あくまで簡単な文法チェックだけなんだよね。
そんなクラスないからnewできません!とかは言ってくれない。
493nobodyさん:03/02/11 16:18 ID:???
>>492
それ考えるとJBuilderって良い子だな。
494nobodyさん:03/02/11 16:26 ID:???
で、たった今エクリプスからinstallしようとしているわけですが。

http://download.eclipse.org/downloads/index.php
陥落?

何時までたってもDownLoad pageに逝けねぇ。
495nobodyさん:03/02/11 16:35 ID:???
>>494
このスレで話題になったからだな。
さすが2ちゃん効果だ(藁
496nobodyさん:03/02/11 16:38 ID:???
>>495
プログラム板のエリクソスレも大騒ぎな訳だが。
497nobodyさん:03/02/11 21:40 ID:???
別に大騒ぎって程でも
498nobodyさん:03/02/11 21:42 ID:???
ていうかマジで逝くりぷすのmirrorがみつからねぇ。
鬱。

どなたかmirrorのURIご存知ありませんか?
499nobodyさん:03/02/11 21:56 ID:???
DBGのDLサイトにも繋がらないんだけど・・・
500nobodyさん:03/02/11 22:02 ID:???
>>498
ダウンロードページ復活しないねぃ。。。
ミラーは聞いたことない。ないんじゃないかな。。。
明日にしよう。
501nobodyさん:03/02/11 23:11 ID:???
DBGは繋がるな。逝く梨婦守はダメだね。
502nobodyさん:03/02/12 09:44 ID:???
>>494

これって関係ありますか?

■スラマー対策が原因でネット接続の障害も JPRS
http://www.mainichi.co.jp/digital/network/today/1.html
503nobodyさん:03/02/12 10:02 ID:???
>>492
1週間くらい使ってみてるわけですが、
文法チェックと言ってもちょっとまだ構文解析が弱いね。
書き方によってチェックしてくれたりokになってしまったりすることがある。
ツールを信頼しすぎるのは危険ですね。
今後に期待・KANA。
504nobodyさん:03/02/12 14:31 ID:???
>>494
ダウンロードページ復活したみたいだよ。
今落としてる途中。これからやってみよう。
わかりやすい日本語解説ページある?
505nobodyさん:03/02/12 14:49 ID:???
echo や print で生成したフォームからは値を受け取ることは出来ないですか?

506nobodyさん:03/02/12 14:57 ID:???
webstudio動かねえ・・・(泣
507nobodyさん:03/02/12 16:59 ID:???
>>506
eclipseを閉じる

eclipse再起動

webstudioを読み込んでくれる

(゚д゚)ウマー
508nobodyさん:03/02/12 17:24 ID:nLK1CfSF
すいません、先輩方質問させて下さい。
フォームからの入力をCSVで保存していくものを作ったのですが

$str = $str1.",".$str2.",".$str3.",\n";
fputs($fp , $str);//ロック処理してますけど省略

$str3の内容がマルチラインのテキストフィールドから取っているため、
改行が途中で入りCSVファイルが崩れてしまいました。

マルチラインテキストフィールドから取得した値から改行を抜き取るためには
どうすれば良いのでしょうか?すいませんが、ご教授下さいm(_)m
509nobodyさん:03/02/12 17:29 ID:vTGUnIYC
>>508
eregi_replace
510nobodyさん:03/02/12 17:29 ID:???
>>508
preg_replace("/\n/s","",$HTTP_GET_VARS["testfield1"]);
511nobodyさん:03/02/12 17:44 ID:???
>>509-510
ありがとうございますー!
さっそく試してみますです
512nobodyさん:03/02/12 18:19 ID:cvCvqBKN
先ほどPHPインスコしたばっかりのperl厨です。
PHPの場合どう書くのでしょうか?

--- unko.txt
123
456
うんこ
りんご
--------------

my @array=();
my $filename='unko.txt';
open (UNKO,"<$filename");
while (<UNKO>){
 chomp;
 push (@array,$_);
}
close (UNKO);

foreach (@array){
 処理・・・
}
513nobodyさん:03/02/12 18:41 ID:???
<?php
$array = file("unko.txt");
foreach($array as $tmp) {
$tmp = chop($tmp);
処理
}
?>
514506:03/02/12 18:46 ID:???
>>507
なんか再度立ち上げたら更新マネージャーっていうのが出てきたから
チェックつけてまた再起動したらwebstudio入ったよ!ありがd。
手持ちのスクリプトを読み込んでみたけど、表示がカラフルで、これだけでもメロメロだわ。
515512:03/02/12 18:58 ID:???
>>513
thanks
516nobodyさん:03/02/12 20:07 ID:???
>>514
それどこで手に入るのですか?無料?アングラ?商用?
517nobodyさん:03/02/12 21:08 ID:???
518nobodyさん:03/02/12 21:59 ID:???
>>517
スマソ. . . . .
519nobodyさん:03/02/12 22:20 ID:???
突然、お邪魔します。
phpをはじめたばかりの初心者ですが、
フォームリクエストの受取りができなくて困っています。
参考書に付いているサンプルプログラムも動きません。
なにか受取れない原因になるようなことがあれば御教えください。
520nobodyさん:03/02/12 22:22 ID:???
>>519
まずはソースだす!
(ブルドッグ不可)
521519:03/02/12 22:28 ID:???
<html>
<head>
<meta http-equiv="Content-Language" content="ja">
<meta http-equiv="Content-Type" content="text/html; charset=x-euc-jp">
<title>一行テキストボックス</title>
</head>
<body>
<form method="GET" action="15-2-1.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="<? echo $text1 ?>"></p>
</form>
</body>
</html>

ソースです。
522nobodyさん:03/02/12 22:36 ID:???
× $text1 , $text2
○ $_GET['text1'] , $_GET['text2']

は僕がかつて嵌ったところ。
523nobodyさん:03/02/12 22:37 ID:???
まぁ予想通りのソースですね
524519:03/02/12 22:43 ID:???
>>522
ありがとうございます!
フォームリクエストを取得できました。

>PHP でのフォームリクエスト取得は実に簡単である。
>name に指定した名前に $ を付けた変数として渡ってくる。

と説明しているサイトもあるのですが、
なぜ$text1では駄目だったのか、よろしければ御教えください。
525nobodyさん:03/02/12 22:49 ID:???
>>524
GET出来たhogeとPOSTで来たhogeとcookie出来たhoge

全部$hogeになるんですわ。困るでしょ?それに気付いて仕様変更。
526519:03/02/12 23:31 ID:???
>>525
納得しました。ありがとうございました。
527nobodyさん:03/02/13 00:05 ID:???
>>524
ていうかそれ、securityhallになるから・・・
528nobodyさん:03/02/13 00:16 ID:???
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
hallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhallhall
529nobodyさん:03/02/13 00:27 ID:???
あーすまんすまん悪かったよ
Holeな。

間違ってることが判るなら正解を仕込む位の芸を見せろよ。
530nobodyさん:03/02/13 00:35 ID:???
>>524
元のソースで動かしたかったら、php.ini の設定で
register_globals を On に設定すると動きます。
>>525さんの言うとおりセキュリティホール:-)になるので Off にしとくのがいいです。
531nobodyさん:03/02/13 01:38 ID:???
動かないサンプルって、逆引き大全かな。
無理やり

extract($_GET);
extract($_POST);
extract($_COOKIE);
extract($_SESSION);
extract($_FILES);
extract($_SERVER);
532nobodyさん:03/02/13 08:05 ID:???
>>531
へぇ、ハッシュを展開する関数なんてあるんだね。
533nobodyさん:03/02/14 12:24 ID:pEDzFCHD
PHPは配列のスライスは出来ないのでしょうか?
534nobodyさん:03/02/14 12:27 ID:???
>>533
できますよ。
535533:03/02/14 12:34 ID:pEDzFCHD
お、はやっ。バカ丸出しな質問でした。
とりあえず、
foreach ($abc[5,6,7] as $tmp){
ではエラーでした。

で、PHP 配列 スライスでぐぐって見てもそれらしいサイトは見つかりませんでした。
何か見本を見せてください。
536nobodyさん:03/02/14 13:39 ID:L0Vo5dGR
array_slice($abc, 6, 3)
537nobodyさん:03/02/14 13:48 ID:???
Perl:あらゆる機能を構文化->楽だが非常に品雑
PHP:なるべく関数化->きれいだがちょっぴり面倒
538533:03/02/14 14:01 ID:???
>>536
ありがとうございます。

何かちがうなぁと思いながら、
foreach (array($abc[5],$abc[6],$abc[7]) as $tmp){
のようなことやってました。

array_sliceで検索してたら
php.s3.to/man/
のようなサイトを発見できたので、ちょっと感動

>>537
こんなに関数があるのにびっくり。
PHPにはまってきた・・・
539nobodyさん:03/02/14 18:08 ID:???
セッション変数について教えてください。

www.xxx.co.jp/~hoge1/
www.xxx.co.jp/~hoge2/

この二箇所に全く同じPHPプログラムを置いてるんですが、
hoge1では変数をちゃんと取得出来て問題ないんですが、
hoge2では、セットしたはずの変数がなくなてるんです。
こんな現象って起こるもんなんですか?????
540nobodyさん:03/02/14 18:34 ID:???
session.cookie_path をちゃんと/~hoge2/ にしてあげる、とか?
関係ないかなあ??
541nobodyさん:03/02/14 20:14 ID:???
hoge1とhoge2両方でphpinfo()して
sessionの項目を見比べる。
542nobodyさん:03/02/14 23:39 ID:EY8KLa0R
今PHPで簡単な掲示板を作っているのですが、書き込みの内容から
htmlタグを取り除く定石のような物はあるのでしょうか?
543nobodyさん:03/02/14 23:43 ID:???
>>542
$apreg_replace("/<[^>].>/"."".$a);
544nobodyさん:03/02/14 23:43 ID:???
$a = preg_replace("/<[^>+]>/"."".$a);

失敗。
545nobodyさん:03/02/14 23:49 ID:???
普通にstrip_tagは駄目?不完全なタグだとエラーだすから危険かも?
546nobodyさん:03/02/15 00:12 ID:???
htmlspecialcharsで(´・ω・`)ショボーンさせるに一票。
547542:03/02/15 10:48 ID:???
>>543-546
ご返答ありがとうございました。
とりあえず、htmlspecialcharsを使ってみようと思います。
548nobodyさん:03/02/15 14:28 ID:ZanyH2qR
PHPの本を買って勉強しているのですが、ひとつ疑問があります。
最新版のPHP4.3を入れたのですが
これって動作不安定なのでしょうか?
と言うのも正常に動かないプログラムがありまして。
本のサンプルをコピーしてみましたが、それでも動きません。

なので、PHP対応しているサーバにアップして動作チェックしてみたら
ちゃんと動きました。バージョンは4.2.2でした。

どうなのでしょうか?
549nobodyさん:03/02/15 14:30 ID:???
>>548
mbstring辺りでバグがあるとか小耳に挟んだことあるけど。
550nobodyさん:03/02/15 15:29 ID:???
エラーの内容とかを書いて欲しいよね。
551nobodyさん:03/02/15 15:46 ID:ZanyH2qR
>>549
549マジですか?やっぱ戻した方が良いんですかね。。
>>550
エラーと言うか例えばユーザー認識プログラムがあったとして
最初にアクセスしたらユーザー認証フォーム?みたいなのが
出るのですが、私のサーバでは出ません。
で、プロバイダのサーバでは出ます。

あと、文字が変になるときがあります。
更新ボタンを押さないと通常の日本語に戻りません。
552nobodyさん:03/02/15 15:57 ID:???
>>551
自宅サーバで散々ふざけたこと抜かしてるanhttpd厨ですか?
553nobodyさん:03/02/15 16:00 ID:qpbVFxqP
>>552
全く動かないといっているので、違う人でしょう。
てか、他板の話題を無闇に持ってこなくても・・・
554nobodyさん:03/02/15 17:00 ID:???
>>552
Apacheを使ってますが・・・。
555nobodyさん:03/02/15 17:58 ID:???
本のサンプルが動かないのは日常事
556nobodyさん:03/02/15 19:10 ID:ZanyH2qR
549さんの言われたとおり
バグがあるかな?と思って4.2にしたら問題なく動きました。

やっぱり、4.3ってバグが多いんですね。。。
557nobodyさん:03/02/15 19:52 ID:???
逆。
バグが大幅に削られてしまった。
558nobodyさん:03/02/15 21:36 ID:???
逆かな?例えば新しいバージョンのパッチとか必ず出るだろ?
OSであれ、プログラムであれ。
だから実は新しいバージョンほどパッチが無いと危険な罠。
559nobodyさん:03/02/15 23:46 ID:???
逆だな。んで、それが問題だということだろ。
548さんのケースがどちらかは知らないが。

リリースアナウンス読むのが手っ取り早いとは思うけど、
こまかな変更に対応するのは面倒だな、、、。
560nobodyさん:03/02/15 23:56 ID:???
>>559
けっきょくどっちかは分からないよ。総体としてバグは減ったんだろうがあたらしい問題は起きるんだから。
そのうちの一つに遭遇したからといって「多い」と感じるのはどうかと思うけど。
他に3.0特有のエラーとか起きてる人居ないのかな。理由もレポしてくれるとありがたい
561nobodyさん:03/02/16 00:09 ID:ZJtTCIZO
ワケワカラン
562nobodyさん:03/02/16 00:27 ID:???
だからさあ、どこがどう動かないのか分からないと
バグなのか何なのか分からないじゃん。
エラーメッセージとか動かない部分のソースとか
何か情報を提示してよ
563nobodyさん:03/02/16 12:27 ID:???
社内で閉じたWEBアプリを作りたいんですが、ユーザ認証でWindowsの
ドメインコントローラーが保持しているパスワードリストを利用することは
可能でしょうか?
564nobodyさん:03/02/16 16:45 ID:???
LogonUser
565nobodyさん:03/02/16 16:52 ID:???
>>562
実は「どうこがどう動かないか」というのを
ちゃんと説明できる初心者っていないこと無いか?
それがわかれば自分で解決できるよ。
ただ「掲示板が動きません」とか「echoで書いたのに表示されません」
とか簡単な事しかわからないと思うよ。

漏れ自身も詳細にエラーを説明しろと言われても
なぜそのエラーが出てるのかわからないときがあるし。
566nobodyさん:03/02/16 17:35 ID:sdGJ0v3u
すまんが教えてくれmOm
コマンドライン用にインストールしたphpで日本語のメール送信したいのだが
mb_send_mail()
が普通に使えない。いろいろ調べてみたんだが関数オーバーロード?しなきゃ
ならないらしい、どういう意味だろう?
567nobodyさん:03/02/16 17:37 ID:???
>>566
よく知らんが状況から考えてオーバーロードしたところで何も解決しない予感。
568nobodyさん:03/02/16 17:38 ID:sdGJ0v3u
反応してくれてありがとう。
だが、オーバーロードって何?
569566:03/02/16 17:39 ID:sdGJ0v3u
とりあえず、エラー内容は「その関数は存在しない」というメッセージだった。
570nobodyさん:03/02/16 17:41 ID:???
>>569
とりあえず、Windowsならmb系はphp.iniいじらんと使えんよ。UNIXだとコンパイルオプションだわね。
571nobodyさん:03/02/16 19:53 ID:tLSm4jGJ
すみません、質問させてください。

最近PHPを触り始め、いくつかサンプルスクリプトを書いてみました。
最初はソースをShift_JISで書いていたのですが、知人にPHPのソースは
EUC-JPで書いたほうがよいと言われ、EUCで保存して実行したところ、
出力される文字コードもEUC-JPになってしまいました。
(charsetはShift_JISで設定しています)

htmlとして出力する文字やデータファイルに書き込む文字のコードは
Shift_JISにしたいのですが、このようなことは可能でしょうか?

環境は自宅サーバにWin2000+Apache1.3+PHP4.0.2です。
よろしくおねがいします。

572nobodyさん:03/02/16 20:42 ID:???
>>571

mb_convert_encoding()
ちょっとは調べたら?
573571:03/02/16 21:12 ID:tLSm4jGJ
>>572
すみません、自分では調べたつもりでいました。
mb_convert_encoding()で変数等の文字コードを変更できるのはわかっていました。

ソースをEUCで書いて、Shift_JISでブラウザに表示したい場合は
出力文字列をすべてmb_convert_encoding()で変換しなければならないということでしょうか?

たとえば、

$dat = "あいうえお";
echo $dat;

としたい場合でも、すべて

$dat = "あいうえお";
$dat = mb_convert_encoding($dat, "SJIS", "EUC-JP");
echo $dat:

としなければならないのでしょうか?
574571:03/02/16 21:21 ID:???
ちなみに、

mb_http_output("Shift_JIS");

を指定しても、ブラウザにはEUCで出力されてしまいます…
575nobodyさん:03/02/16 22:19 ID:???
>>573
そらそうでしょ。
576nobodyさん:03/02/16 22:30 ID:???
>>574
内部EUC
出力SJIS
出力ハンドラmbなんたら
他。
ちゃんと設定すればいちいち変換しなくていいはず。
577nobodyさん:03/02/17 04:49 ID:???
>>575
ここは「初心者コーナー」で
>574は自分で調べて分からないっていってるんだから
そういうただ馬鹿にしてるだけのようなレスはやめてけれ。
まあ俺には答えられないんで引っ込んでます。
578nobodyさん:03/02/17 06:05 ID:???
>>576の言う通り色々な場所で文字コードを指定できる(変わったことするには気にしなきゃいけない)ので、
この機会に覚えておいて損は無いよ。マニュアル見れば大体わかると思う。
本だと「PHP×PostgreSQLで作る 最強Webシステム」ってのがうまく纏めてあったな。
他の部分はどうってことない内容だったが、その部分は立ち読みする価値あり(w
579nobodyさん:03/02/17 06:32 ID:???
つーか、Shift_JISでもほとんど問題ない。
580nobodyさん:03/02/17 06:55 ID:???
SJIS対応は次期バージョンなんだっけ?
581576:03/02/17 06:57 ID:???
元文よく見たらphp4.0.2じゃんか。mb_stringまだなかったんじゃねぇの?
でも、>>573ではmb_convert_encoding使っているから、4.2.0の間違いか?

>>579
4.3.0以降で--enable-zend-multibyteを付けているか、藤本氏の
国際化版を使っていないと、SJISでは問題が出る可能性がある。
582nobodyさん:03/02/17 18:38 ID:???
本家から落としたPHPのchm化したDocumentが読めないのだが、どうすればよい?
583nobodyさん:03/02/18 00:39 ID:???
>>582
眼鏡かけてみたらどうかな?
584nobodyさん:03/02/18 00:51 ID:???
>>582
日本語マニュアルだろ
確かに読めないな。「ページを表示できません」になる。

585nobodyさん:03/02/18 03:47 ID:???
>>583
環境によるのかもしれない。
俺はMEとNTと2Kで確認したが、どれも見れず。>OS依存の可能性は低いかな
日本のサイトで公開してるやつは見れる。
586nobodyさん:03/02/18 21:49 ID:+iSTKmnJ
お邪魔します。
フォームでチェックボックスを配列で受取りたいのですが、どうしたらいいのか分かりません。
どうか、御教えください。

for ($i=0; $i<$row; $i++) {
$no = mysql_result($result, $i, 0);
$name = mysql_result($result, $i, 1);
$tel = mysql_result($result, $i, 2);
print "<tr><td><input type = \"checkbox\" name = \"del_no[]\" value = \"$no\">".$no."</td><td>".$name."</td><td>".$tel."</td></tr>" ;
}
587nobodyさん:03/02/18 21:52 ID:???
>>586
無理です。
588nobodyさん:03/02/18 21:59 ID:???
自分のいるディレクトリの階層を知る方法ってありますか?
今はこんなことやってるんですけど…
$slashes = count_chars($_SERVER["PHP_SELF"], 1);
for($i = i; $i < $slashes[47]; $i++) {
$dir.= "../";
}
589nobodyさん:03/02/18 22:16 ID:oWDXj+bJ
   ,.´ / Vヽヽ
    ! i iノノリ)) 〉
    i l l.´ヮ`ノリ <先生!こんなのがありました!
    l く/_只ヽ    
  | ̄ ̄ ̄ ̄ ̄|
http://saitama.gasuki.com/kaorin/
590nobodyさん:03/02/18 22:21 ID:???
>>586
できるよ
print_r($_REQUEST['del_no']); で出力してみそ。
出力を見たら分かると思うけど、チェックされてないものは配列に前詰めされてしまう。
>>587が無理って言ってるのはその辺の意味もあるのかもね。<form>が無いからかも知れないけど。

>>588
dirname()は使えないかな?
591586:03/02/18 22:41 ID:???
>>590
仰るとおりになりました。
これなら、できそうです。ありがとうございました。
592586:03/02/18 23:01 ID:???
>>590
うまくいきました。
本当にありがとうございました。
593nobodyさん:03/02/18 23:04 ID:???
徹底的に無視されたかわいそうな>>587
594588:03/02/18 23:05 ID:???
>>590
これは!と思ったけれど…。
階層知るには、やはりcount_charsをするしかないのかな。
595586:03/02/18 23:06 ID:???
ありがとうございました
596nobodyさん:03/02/18 23:07 ID:???
☆★暇な人!荒らしがやりたい人!ここへ逝こう!ってか逝って。★☆
管理人がクソ厨なブタ野郎だからいじり倒してサイトを閉鎖させちゃえ!
閉鎖できた人は「荒らし王」の称号が手に入る!さぁ!荒らせ!!!!

http://www.geocities.co.jp/Bookend/6473/
597nobodyさん:03/02/18 23:17 ID:???
>>582-585
適当に検索すればヘルプの中身が表示されるよ。
そこからトップページへたどり着ける。
激しく面倒だが。
598nobodyさん:03/02/19 00:10 ID:YL/PSmd0
599nobodyさん:03/02/19 02:48 ID:oUZRirLt
PHP4.0.6です。
PHP初心者です。
PHP←→postgreSQLについて質問です。
odbc_connect()関数の呼び出しで
Call to undefined function: odbc_connect()
と出てしまいます.モジュールか何か足りないんでしょうか?
どのようにすれば動くようになりますか?
新しいのを入れたほうがいいのでしょうか?
よろしくお願いいたします!!
600nobodyさん:03/02/19 03:40 ID:???
そこ、pg_connect()ちゃうのか?
601173:03/02/19 13:59 ID:pmHLZySe
>> 600
ゔ,pg_connectでした・・・
こんなんで悩んでたなんてはずかしいです・・・
ツッコミありがとうございます。
602nobodyさん:03/02/19 18:54 ID:Bw4fiDtc
参考書を頼りになんとか簡単な掲示板(tecupのような)を作ったのですが
削除機能の付け方がわかりません。参考書にも書いてないし。。

どうすればよいか教えてください。(どの関数を追加するとか)
603586:03/02/19 19:01 ID:???
>>595
ワラタ。
ってか、騙るなよ。
604nobodyさん:03/02/19 19:22 ID:???
>>602
それだけじゃ判らんてw
どっかにソースをアップしてみれ。
605602:03/02/19 20:00 ID:OPQFETdV
>>604
もういいです。他で聞きます。
606nobodyさん:03/02/19 20:40 ID:???
>>605はこれから「それだけじゃ分からん」を何回言われれば気付くのでしょー(w





大方レス削除機能なんだろうけど、その機能のコードをまるまる他人に頼るつもりなんだろうか…
607nobodyさん:03/02/19 20:56 ID:???
うーん、ネタか騙りのような気がするが・・・
608nobodyさん:03/02/19 21:03 ID:Bw4fiDtc
>>603
わかりました。ちょっと待ってください。
609nobodyさん:03/02/21 00:19 ID:D44CnFCN
古いバージョンのものを移植していますが、変数がうまく取り込まれません。
if (empty($submit))
の部分を
if (empty($_GET['submit']))
としても、その下にある<form action="">以下にある変数が
代入されないのですが....
610nobodyさん:03/02/21 00:32 ID:???
>>609
$_POST['submit'] だったり?
611nobodyさん:03/02/21 02:41 ID:???
>>597
インデックスがねーっつー方向でよろしいか?
あと、文字化けやらメニュー項目もおかしいんだけどまぁいいか。

だれか編者に連絡してくだちい。
612nobodyさん:03/02/21 03:51 ID:vyQB60si
>>609に便乗して質問なのですが、いつのバージョンから$submitではなく、$_POST or $_GET["submit"]取得に
なったんですか?$_POST自体はPHP4.1.0だったと思うのですが。
613nobodyさん:03/02/21 05:38 ID:XED00hVU
>571
>最初はソースをShift_JISで書いていたのですが、知人にPHPのソースは
>EUC-JPで書いたほうがよいと言われ、
まずここが間違いだと思われ。
EUCでなければならない根拠はない。

>576 にも書かれてあるが内部コードは統一したほうが余計な苦労をしなくて済みます。
614nobodyさん:03/02/21 05:51 ID:XED00hVU
>612
$_POST,$_GETで受け渡しするのは正式にはphp-4.2.0からで、スーパーグローバル変数を禁止するように
なりました。
php.iniのregister-globalsが存在しているバージョンということでdefaultでOffが設定されています。
次のphp-5.0ではクラス内のグローバル変数をdefaultで禁止するようです。どういうことかというと
これまでクラス内部でvar定義されたものは
$this->class->hensu
というようにアロー演算子によってアクセス出来ていましたがこれが出来なくなります。
クラスのカプセルかを強化しようという事です。
615nobodyさん:03/02/21 06:08 ID:???
>>614

クラスのカプセル化強化によってどいった利点があるのか、
説明ぎぼんぬ。
616nobodyさん:03/02/21 06:22 ID:JDlnr9Ka
☆★☆キラキラお星さま☆★☆
http://jsweb.muvc.net/index.html
617614:03/02/21 07:49 ID:???
>615
>クラスのカプセル化強化によってどいった利点があるのか、
>説明ぎぼんぬ。
漏れの技術的判断の限りでは、効率としての効果は無いと思われる。無駄なモジュール肥大化と
スタック処理によりスピード低下は否めないだろう。
C++やeRubyに対抗しようとする開発者の自己満足とかそういう類に属する拡張と理解している。
どうもphp開発者のエゴのような気がする。
618614:03/02/21 08:04 ID:???
>615
ああ、一応初心者用に付け加えておくが
クラスのカプセル化という意味においては必要不可欠な機能であるという事だ。

オブジェクト指向を理解している香具師は読み飛ばして頂いて結構なのだが
クラスの保持するvar変数は本来外部から操作されてはならないという要件がある。
どうしても操作したい場合にはメソッドとしてインターフェイス関数を内在させ、その仲介によって
アクセスされるものであるというものだ。プロパティも原則として同じである。
php4.3.xではこれらの実装を見送ることにしたのだが、プログラムでクラスを多用するといくら継承していても
ストレートに"->"アロー演算子でvar変数を改竄出来てしまうのである。
これは本来のクラスの目的とは大きく異なるものであり、現在のphp4.3.xのままでは
クラスとは名ばかりである。
プログラミングしている方は気が付いていると思うが現在のphpclassは只のinline関数に過ぎないのである。
具体的には以下の様な感じになる。
class sample{
public:
var $db;
private:
var $hensu1;
protect:
function sample();
}

以上、理解できるだろうか。。
619nobodyさん:03/02/21 09:21 ID:7Llp1QHv
620nobodyさん:03/02/21 10:33 ID:???
>>618
言ってる事は正しいが、真中のあたりから激しく論点がずれてるんだが。
621615:03/02/21 10:33 ID:???
>>618
説明ありがとう、しかし理解できね。
よくやることなんだが、
class foo{
 var $DB;
 function foo($DSN){
  $this->DB=DB::Connect($DSN);
 }
 function hoge($sql){
  return $this->DB->getAll($sql)
 }
}
って書き方は出来なくなるってことですよね。
php5になったらどゆ書き方になるのか、よければ説明してほしい。
622nobodyさん:03/02/21 10:42 ID:???
>>621
getterとsetterじゃないの?

class a
{
var v;

function geta()
{
return $this->v;
}

function seta(v)
{
$this->v = v;
}
}
623615:03/02/21 10:49 ID:???
>>622
は?
>>614ではクラス内でも$this->vといったアクセスが出来なくなるとあるのだが?
624614:03/02/21 11:38 ID:???
>620
>言ってる事は正しいが、真中のあたりから激しく論点がずれてるんだが。
ん、論点違ったかい?そりゃ失礼。
625614:03/02/21 11:39 ID:???
>621
>よくやることなんだが、
>class foo{
> var $DB;
> function foo($DSN){
>  $this->DB=DB::Connect($DSN);
> }
> function hoge($sql){
>  return $this->DB->getAll($sql)
> }
>}
>って書き方は出来なくなるってことですよね。
この書き方だと問題なく出来ますね。但し基底クラス側ではpublicスコープを設けてやる必要があります。
class DB {
public:
  function Connect($DSN){
}
function getAll($sql){
}
}
class foo extends DB {
 var $DB;
 function foo($DSN){
  $this->DB=DB::Connect($DSN);
 }
 function hoge($sql){
  return $this->DB->getAll($sql)
 }
}
626614:03/02/21 11:39 ID:???
>623
>>>614ではクラス内でも$this->vといったアクセスが出来なくなるとあるのだが?
誤解を招いたようです申し訳ない、
クラス内ではもちろん同一スコープですのでアクセス可能です。
表現したかったのはクラス外からのアクセスという意味です。
class sample{
protected:
var $hensu = "hoge";
public:
function hogehoge(){
return $this->hensu;
}
}
$hoge = new sample;
echo $hoge->hensu; ・・・・・・・ エラー
echo $hoge->hogehoge(); ・・・・・・・ 正しく hoge と出力される
627615:03/02/21 12:05 ID:???
>>625-626
多謝!
だいたい理解できた(と思う)
public: とか private: なんて今まで使ったことないのだけど、
雰囲気的になんとなくぅ〜で、まぁその辺は調べるわ。

CUIな時代はCを少しやったが、GUIな時代になってC++なんかぜんぜんしらんし。
オブジェクト指向つうのに未だ正しい理解できず。PEARと格闘してま。
ほんま、ありがとな。
628nobodyさん:03/02/21 13:34 ID:???
>>623

強化と言うか誰からも触れないときめき変数じゃん。それ。
629nobodyさん:03/02/21 19:20 ID:???
>628
>強化と言うか誰からも触れないときめき変数じゃん。それ。
トキメキ変数?
なにそれ・・・・。
さすがの猿飛はスキトキメキトキスだっけ・・・。
630nobodyさん:03/02/21 22:38 ID:tMiGGtI4
参考書を元にフォームメールを作成しているのですが
フォームに入力してそのコピーメールが投稿者のアドレスに
届くと言うものなのですが、その届いたメールアドレスが
me@localhostになってしまいます。
これを自分のメールアドレスに変えて送信する
にはどうしたら良いのでしょうか?

↓がそのサンプルです。
ttp://210.143.102.80/upload/source/d/0838.zip
631nobodyさん:03/02/21 22:40 ID:tMiGGtI4
ちなみに送信テストにはradishという簡易SMTPサーバを使用しました。
632nobodyさん:03/02/22 00:09 ID:???
>>631
mail()かmb_send_mail()の引数string additional_headersに、
From: [email protected]を入れる。必要によりstring additional_parameterも。
詳しくは
ttp://jp.php.net/manual/ja/function.mb-send-mail.php
633nobodyさん:03/02/22 00:17 ID:???
>631
$mail_to = $_REQUEST[ "VALUE_MAIL" ];
$subject = "ありがとうございました。";
$body = "PHPメールフォームのご利用ありがとうございました。\n" .
"以下は、送信された内容のコピーです。\n\n";
$body .= "名前     :" . $_REQUEST[ "VALUE_NAME" ] . "\n";
$body .= "郵便番号   :" . $_REQUEST[ "VALUE_POST" ] . "\n";
$body .= "住所     :" . $_REQUEST[ "VALUE_ADDRESS" ] . "\n";
$body .= "メールアドレス:" . $_REQUEST[ "VALUE_MAIL" ] . "\n";
$body .= "趣味     :" . $_REQUEST[ "VALUE_FAVORITE" ] . "\n";

$mail_from = "From: [email protected]";
mb_send_mail( $mail_to, $subject, $body,$mail_from);
634630:03/02/22 00:38 ID:p54zeupR
>>632-633
やってみます!どうもありがとうございました
635tantei:03/02/22 00:42 ID:???
★あなたのお悩み解決致します!!
●浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
●盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
●行方調査
行方不明になっている家族の消息を調査致します!!
●電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
●ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
 直通  090−8505−3086
URL  http://www.h5.dion.ne.jp/~grobal/
メール  [email protected]
   グローバル探偵事務局 

636630:03/02/22 02:08 ID:p54zeupR
632,633さんのおかげでうまいこと改造することができました。
と、それは良いのですが1つ気づきました。
これって書き込んだ人にコピーメールを送るけど
肝心の自分のところにはメールが届きませんよね?
だからどういう問い合わせをされたのかわからないのですが。

その辺も解決策は無いでしょうか?
637nobodyさん:03/02/22 08:44 ID:???
>636
CCしろ
638nobodyさん:03/02/22 08:55 ID:???
>>636
632で答えたのがバカらしくなる質問だな。
参考書丸写しかよ、ちったぁ自分で考えな。
ってか、ちゃんとその参考書嫁よ

【PHP】質問スレに、WebProg板らしからぬ質問が増えたので、
このスレが出来たのだが、教えてクレクレ君が許されるわけではない。
639nobodyさん:03/02/22 11:02 ID:???
>>638
禿しく同意。
メールの処理を行いたいならメールについて勉強してみるのは常識。
自分で努力をしないクレクレクソは去れ。
640nobodyさん:03/02/22 11:08 ID:???
>>639
ふと思ったんだが、

>メールについて勉強

って具体的に何を指すの?

SMTP、POP3、IMAP、APOP、ESMTP、MIME、uuencode、BASE64、TCP、IP、SMTP Auth、POP Before SMTPなどなど深いぞ。Eメール業界。
641nobodyさん:03/02/22 11:38 ID:???
>>640
レイヤが無茶苦茶だな。
DNSのMXなども含めるつもりか?
642630:03/02/22 11:54 ID:15dKIbQj
>>638-639
自分で考えるにも狭い範囲(参考書)の教養しかなくて・・。
632のページ見て試したのですが、送られなかったし
クレクレ君と言いますが、逆にどのようにしていいか
わからないので学ばせていただこうかと(ここしか教えてくれるところしらないし)

あと、参考書丸写しじゃないですよ。
643nobodyさん:03/02/22 12:05 ID:???
>640
>>メールについて勉強
>って具体的に何を指すの?
>SMTP、POP3、IMAP、APOP、ESMTP、MIME、uuencode、BASE64、TCP、IP、SMTP Auth、POP Before SMTPなどなど深いぞ。Eメール業界。
君が知らないものは全部やっていいからね、誰も勉強してはいけないなどと止める人は居ないから
思う存分気の済むまで勉強してくれ。

>642
>自分で考えるにも狭い範囲(参考書)の教養しかなくて・・。
>632のページ見て試したのですが、送られなかったし
>632 さんに string additional_headersのヒントを教えてもらってるだろう。
>633で漏れが具体的な記述方まで書いてやっただろ、そしたらmail headerってものが
あってここに記述すればなんでも出来るじゃんって気が付かないか?
気が付かないのならphpを諦めたほうが良い、それ以前の問題だから。
644nobodyさん:03/02/22 12:24 ID:???
>メール業界。

はい?
645nobodyさん:03/02/22 12:26 ID:???
>ここに記述すればなんでも出来

便利だ。今度から「Order: ラーメンと餃子届けて。あ、金は向こう持ちね。」とか書いておこう。
646630:03/02/22 12:46 ID:15dKIbQj
>>643
まだ、はじめて一週間ぐらいなんで・・・。
でも、PHPはやってて楽しいし絶対、取得したいんです。
さっきも632のページを見たり、他のサイトで調べたり
テストしてみたりしたんですが、どうしても上手く行かないんです。

とりあえず、mail headerですか。。それについてまた勉強してみます。
647nobodyさん:03/02/22 16:57 ID:???
>644
>>メール業界。
>はい?
郵便局とか、バイク便の事では?

>645
>>ここに記述すればなんでも出来
>便利だ。今度から「Order: ラーメンと餃子届けて。あ、金は向こう持ちね。」とか書いておこう。
漏れなんか「hope: 新春宝くじ2億円当選キボンヌ!!」としてるが何か?



648nobodyさん:03/02/22 16:59 ID:???
>646
>とりあえず、mail headerですか。。それについてまた勉強してみます。
「また」じゃなく、今しろ、すぐにだ。
649nobodyさん:03/02/22 17:03 ID:???
>>648
偉そうだぁね
650nobodyさん:03/02/22 17:11 ID:???
思いついたときにやらないと、次にいつになるかわからない。から。
651649:03/02/22 17:15 ID:???
>>650
まあ、それもそうだね。
書き方が悪かったな、気分悪させてたら申し訳ない。
652648:03/02/22 19:12 ID:???
>650
そうそう、パウエルも東京に来てる事だし、今夜にでも北チョンのテポドンに核弾頭積んだのが飛んでくる
かも知れないから、今しか出来ないかもよ。
653nobodyさん:03/02/22 19:18 ID:???
>>652
テポどんが東京狙ったら困るなあ。うち(静岡)に当たるかもしれないじゃん。
狙うのなら正確であることを祈る。
654nobodyさん:03/02/22 19:20 ID:???
>>630
とりあえず、メールがどうやって送信者から受信者までたどり着くのかは知っているか?
どこを経由しているのか、経由地同士(送信者や受信者のPCも含む)はどうやってメールの受け渡しをやっているのか
そのへんは最初に理解しておいた方がいいぞ。
655nobodyさん:03/02/22 19:39 ID:???
>>654
今時リレーしてメール運んだりはせんけどな。
656nobodyさん:03/02/23 11:35 ID:???
>>655
オープンリレーでないだけで、リレーそのものは幾らでもある。
657nobodyさん:03/02/24 01:23 ID:???
海老の唐age
658nobodyさん:03/02/24 11:19 ID:???
PHPなんだけど、
array_values()使って配列をファイルに出力したらなぜか
ファイルにはArrayってfputsされてるんだけどなんでなんだよ
もちろん配列にはちゃんと中身はあります
659nobodyさん:03/02/24 11:49 ID:???
そゆ関数なんだろ。
array_slice() を使えば。
660658:03/02/24 12:37 ID:???
foreachでやってみることにしましタン
661nobodyさん:03/02/24 13:01 ID:???
>>658
array_valueは返り値もarrayだから。
662nobodyさん:03/02/24 13:34 ID:???
>>656
リレーを一切拒否したら内部から外部へ送れないもんな。
663nobodyさん:03/02/24 14:58 ID:hOH4eQvz
ttp://php.s3.to/g/randam.php.txt でひとつのページに複数設置したくて

<img src="randam.php?no=1">(合計10個くらいなんですが)
みたいにして違う画像が出るようにするにはどのようにしたらいいのでしょうか
664chmod:03/02/24 19:58 ID:FUX1UJsu
超初心者ですいません、
サーバーがIISいれてて、フリーのPHPのカウンターを動かそうとしてみたところ
一緒にUPするcounter.txtの属性を変えろといわれたのですが、
FFFTPで属性変更としても変わってくれないです。
どうやればIIS上での属性の変更を解決できるのでしょうか?
よろしくおねがいします。
665nobodyさん:03/02/24 20:06 ID:???
>>664
Windowsにはそんなもの存在しないから変えようがない。
666chmod:03/02/24 20:35 ID:FUX1UJsu
ふむむ、なるほど、てことはディレクトリに置けば実行出来るはずなんですよねえ・・・

できない・・・

ファイルがひらけないとか抜かしてきやがります。
まあ、いいや。
667nobodyさん:03/02/24 20:42 ID:???
Windowsでも、NT系ならパーミッションらしきものは存在するぞ。
668nobodyさん:03/02/24 20:59 ID:???
IISならNT系だろ。
鯖は自宅鯖?
もしも鯖を操作できるならcounter.txtを右クリックして
プロパティからアクセス許可を探してIISの実行ユーザに書込み権を与えてやれ。
669chmod:03/02/24 21:10 ID:FUX1UJsu
ほほー
分かりましたやってみますありがとうございます!
670nobodyさん:03/02/24 21:32 ID:j6HjxIaR
掲示板のログみたいなデータを各要素ごとにソートするうまい方法を考えて
います。

ログ形式は、
名前<>番号<>点数<>合計点<>平均点 のような形で
具体的には、 name<>1<>10<>50<>23.5 のような行が200行位あるファイルです。

これを、番号順、点数順、合計点順、平均順にソートしたいのです。

で、調べたところ

function fcomp($x,$y){
$a = explode("<>",$x);
$b = explode("<>",$y);
if($a[1] == $b[1] ) return 0;
return ($a[1] > $b[1] ) ? 1 : -1;
}
usort ($lines,fcomp);

というファンクションがありましたが、これでは 0,1 の要素しか扱えません。

番号順、点数順、合計点順、平均順 などをページから、GETなりPOSTして
動的に結果を表示するには、どうするのが賢いでしょうか?
$lines = file($logfile);
for($i=0;$i<count($lines);$i++) {
list($name,$point,$total,$average) = explode("<>",$lines[$i]);
}
まではわかっております。


671nobodyさん:03/02/24 21:49 ID:???
PostgreSQLあたりのDB使ったら?

という考えもあるがまぁ一応。
各要素毎に配列を用意。
添え字で行を取る。

でだarray_multisort関数を使え。

以上
672nobodyさん:03/02/24 22:07 ID:j6HjxIaR
>>671
うー、よくわかんないです。

for($i=0;$i<count($lines);$i++) {
list($name,$point,$total,$average) = explode("<>",$lines[$i]);
$name[] = $name;
$point[] = $point;
$total[] = $total;
$average[] = $average;
}

array_multisort($name,$point,$total,$average);

でしょうか? マニュアル読んでもさっぱりわからない...


#DBは安鯖なのでついてないのです。
673nobodyさん:03/02/24 22:25 ID:???
これで十分だと思われ。
for($i=0;$i<count($lines);$i++) {
list($name,$point,$total,$average) = explode("<>",$lines[$i]);
}

名前を文字列として昇順にソート。
array_multisort($name, SORT_ASC, SORT_STRING, $point, $total, $average);

あとはマニュアルを穴が空くまで嫁。
それができないなら言語を扱っても成長しないからやるだけ時間の無駄だと思われ。

おとなしくエクセルあたりでも使うがよろし。
674nobodyさん:03/02/24 22:43 ID:RRWzLh+f
いい!
http://hkwr.com/
675nobodyさん:03/02/24 23:27 ID:j6HjxIaR
>>673
Thanx.

でもやっぱり配列に入れなくてはいけなかったので、
$name[] = $name;
$point[] = $point;
$total[] = $total;
$average[] = $average;

がないとエラーになりました。

ともかくありがとうございました。
676673:03/02/24 23:58 ID:???
よかったよかった。

どうやら俺が読むべきなようだな。
吊ってくる。
677nobodyさん:03/02/25 04:07 ID:???
references の意味と使い方を教えてください 「&」がよくわからない
678nobodyさん:03/02/25 04:48 ID:???
リファレンスってのはリファレンスマニュアルのことか?
それとも参照代入の事か?

前者なら諦めてください。としか言いようがない。
後者ならポインタを勉強する事をお勧めする。

ポインタを勉強すれば意味がわかるようになるだろ。

# 人が言うほどポインタは難しくない。やってみれ。
# 使いこなすとなると話は別だけど。

一応使い方

$a = "test";
$b = &$a;
$a = "asdf";
print $b;

で asdf が出てくる。
679nobodyさん:03/02/25 08:42 ID:???
>>678
どういう場面で使うのですか?

コンストラクタの中でよくオブジェクトを参照代入しているコードを見ますが、
何となくはわかるのですが、何でそうしなければいけないのか、そうすると
どういうおいしさがあるのかがわかりません。

よろしくお願いします。
680nobodyさん:03/02/25 08:50 ID:???
>>679
参照と関係あるのか?その質問。
681sage:03/02/25 10:07 ID:lAlaOHj3
質問なんですが、
配列で取得した変数をそのままDB(PostgreSQL)に入れると表示が
"Array"となっているんですが、これはちゃんと配列で登録されて
いるんでしょうか?
フォーム付のカレンダーを作っていて、1ヶ月分のフォームの内容を
配列にして1つの変数にしてそのままDBに登録ということを試して
います。
<?
........
<input type="text" name="wd_f['$i']">
...
?>
↑フォームはこんな感じです。
よろしくお願いします。
682681:03/02/25 10:22 ID:???
うわぁsageるつもりが・・・。
スソマセン。
683nobodyさん:03/02/25 13:52 ID:???
初心者なのでちょっと厨な質問します。

皆さん、PHPをテストしている環境はなんですか?Linuxですか?
自分は仕事柄Windowsを使うことがあるので
Winでテストしているのですが、やっぱり上手く動かないときがあります。

これってやっぱり"Windowsだから"なのでしょうか?
それともApacheのhttp.confの記述かphp.iniの記述が間違っているのでしょうか?
684nobodyさん:03/02/25 14:05 ID:???
Windowsだから動かないと言うことは無い。
gdもmysqlも使ってます。
685nobodyさん:03/02/25 15:02 ID:???
>>681
配列の内容そのものではなくて参照を
DBにいれてるだけみたいなのでたぶんだめ。
配列をとりだして連結して書き込むか
テーブル設計を変える。
686681:03/02/25 15:15 ID:???
>>685
あーそうなんですか・・・。
なんかおかしいなと思ってたのでありがたいです。

何度もすいませんが連結ってforeach使うんですか?
連結手段に今困っています。
687nobodyさん:03/02/25 15:18 ID:???
>>686
implode()またはjoin()
688681:03/02/25 15:31 ID:???
>>687
なるほど!
とりあえず一つずつ引っこ抜いて連結してみます!サンクス!
689nobodyさん:03/02/25 16:54 ID:???
どうでもいいけど、
http://www.php.net/manual/ja/language.expressions.php
の10パラグラフ目の

$a =+ 3

って間違ってるよね。

原文:http://www.php.net/manual/en/language.expressions.php
690nobodyさん:03/02/25 18:12 ID:???
>>679
ついこの間そこで困ってたから話すわ。

例えばインスタンスを作ってそれをセッション変数に登録すると。
で、通常なら$_SESSION["obj"]をそのまま利用すればいいんだけどこれを
$obj = $_SESSION["obj"];
なんて使い方をしたかったりする。

さて、この代入をしたあとに$objのメンバ変数の値を変更したらどうなると思う?

答えは
$objのメンバ変数の値とセッション変数に登録されている$objのメンバ変数の値が違うものになる。

それを避けるために使ったりする。

これ以上は俺じゃ説明できないや。
助けてエロい人!
691nobodyさん:03/02/25 19:15 ID:???
コンストラクタで参照を代入するってことは、操作したいセッション変数の位置情報を覚えて
おくという意味。
あとはセッション変数をいじくりたいときは、コンストラクタで覚えておいた変数の位置情報を
元にオリジナルの変数をいじくることができる。

参照代入じゃないとセッション変数の中身のコピーを取だけなので、コンストラクタの後に残る
のはセッション変数のコピー品だけで、オリジナルの情報は何一つわからない。
もちろんコピー品をいじくってもオリジナルは変更できない。
692nobodyさん:03/02/26 00:39 ID:???
PEAR の Auth を使おうとしているんですが・・・
ttp://pear.php.net/manual/ja/packages.auth.auth.php
ここにあるサンプルはregister_globals=on で書かれているのでしょうか?
ひょっとして、$a = new Auth(...... をする前に
if(isset($_POST['username'])){ $username = $_POST['username']; }
とかしないとダメなんでしょうか?
693629:03/02/26 00:43 ID:???
うひゃあ。。。すみません、トンチンカンなこと言ってました。
もう一度よく確認してから質問します。ごめんなさい。
694681:03/02/26 11:27 ID:???
$wd_f = join(", " ,$wd_f);
$wd_f = join(", " ,$wd_f);
この方法で連結後、
$sql = "INSERT INTO calender(day, alph, com) VALUES('".$day."','{".$wd_s."}','{".$wd_f."}')";
という風に登録したんですが、登録はできても配列にはなっていませんでした。
これって$sql〜以降の書き方が悪いんでしょうか?
695nobodyさん:03/02/26 14:32 ID:???
>>694
create table はどうやったの?
696681:03/02/26 14:44 ID:???
>>695
まだテスト段階なので別ファイルで操作したんですが、
$sql = "CREATE TABLE calender(day varchar(50), alph varchar(1000)[], com varchar(1000)[])";
こうです。
697nobodyさん:03/02/26 16:09 ID:???
$sql = "INSERT INTO calender(day, alph, com) VALUES('$day','{$wd_s}','{$wd_f}')";
でもいけるわけだが。
Updateで配列の所を追加するしかないんじゃね?
698681:03/02/26 16:59 ID:???
>>697
自己解決ポ
1行のテキストから配列に戻すやり方で詰まってたんですが、
読み出すときにexplode使えばいけそうです。
わざわざ付き合ってくれてサンキューでした!
699nobodyさん:03/02/28 16:00 ID:7M3pDi2C
file.txtってファイルから
ランダムに一行を選択し
その内容を表示させたいのですが
どうすればいいですか?
700nobodyさん:03/02/28 16:37 ID:hUrHQte3
↓↓↓↓↓★ココだ★↓↓↓↓↓
http://www.pink-angel.jp/betu/linkvp/linkvp.html
701nobodyさん:03/02/28 18:05 ID:???
>>699
ファイルの中身を行毎に配列に突っ込んでshuffle関数とか。

srand(time());

shuffle($array);

foreach ($array as $key => $value)
{
print "\$array[$key] = $value<br>";
}

以上。PHP逆引き大全より丸写し(汗
702へたれ:03/02/28 18:56 ID:Yo3HLtaK
PHPで参照できる
$PHP_AUTH_USERと$PHP_AUTH_PWって参照は出来ますが、
値の変更って出来るんでしょうか?
また、その変更は有効になるんでしょうか?
703nobodyさん:03/02/28 19:01 ID:???
>>702
書き換えてみれば良かろう。
704nobodyさん:03/02/28 19:27 ID:???
srandって必要なんですか?
705nobodyさん:03/02/28 19:46 ID:???
>>704
srandやらないと、Shuffle関数をもう一回使ったときに同じ結果が返ってきたりする。
本当にランダムな結果を得るための儀式みたいなもん。
706nobodyさん:03/02/28 19:49 ID:???
ランダムっぽくするためには必要。

でも、timeでsrandしても、安全な乱数にはならないから、、よく考えること。
707nobodyさん:03/02/28 19:50 ID:???
つうか、$array_randっていうもっとイイ!のがあった;;
srandが必要なのは一緒。
$key = array_rand($array);
で中身をランダムに取得でける。
708707:03/02/28 19:53 ID:???
中身じゃねーや、配列のキーが取得できるんだ。
ボケまくり。
709nobodyさん:03/02/28 20:02 ID:???
検索したらsrandの説明とサンプルがあった。
…ってPHPマヌアルやんけ。
ttp://es.php.net/manual/ja/print/function.srand.php
710名無し~3.EXE:03/03/01 01:23 ID:???
 ☆★☆★第4回2ちゃんねる全板合同迷惑メール業者訪問祭り!★☆★☆

 未承諾メールって受信拒否したのに何で届くんだろう? ♪なんでだろ〜
 良いパートナーがそこに居るわけないのに、何でだろ? ♪なんでだろ〜

 私達は本日3月1日22時そんな出会い系に「未承諾訪問」(※注)する祭りを
 盛大に開催します!回を重ねて第4回2ちゃんねる全板合同訪問です!
 是非とも皆様お誘い合わせの上、ご来場ください! (↓本音とタテマエ)
 老若男女問いません!初心者大歓迎!一緒に彼氏・彼女をつくりましょう!!!

 ・訪問開始時間  3月1日午後10時00分決行予定!(途中参加大歓迎)
 ・総本部URL  http://jbbs.shitaraba.com/news/938/
 ・なお本日の訪問2時間前くらいに第4回専用スレが総本部に立ちます。
  そのスレには色々書いてあるから。よろしくね。

 (※注)あくまで「訪問」です。物騒な事を書くと削除されちゃいますからね。
 それから「訪問」の趣旨と無関係ですが「各種訪問道具」もあったりしますよ。
 スレ汚し失礼しました。
711nobodyさん:03/03/01 02:16 ID:GJMSd1Pr
PHPマニュアルっていたるところに置いてありますが
(google でたくさんひっかかる)
そのマニュアルの対象のPHPバージョンってどこを見たらわかりますか?
古いんだか新しいんだかさっぱり分からなくて。。
712nobodyさん:03/03/01 02:40 ID:???
本家のマニュアルで検索かけるとか、
本家の配下をググればいいと思うけど。だめ?
713nobodyさん:03/03/01 03:17 ID:???
>>710
F5キーとか使わない方がいいですか
714711:03/03/01 03:47 ID:imJrxzae
>>712
ありがとうございます。
ネット上のはそれも考えたのですが、拾ってきた.chmになるともうどうしようもなくて・・・。
メジャーバージョンが同じなのにこれだけ仕様がよく変わるんだから
ちゃんとマニュアルにも明記して欲しいですよね。
715704:03/03/01 08:03 ID:???
やっぱりやったほうがいいんですね。
ありがとうございました!
>>705>>706

マニュアルには4.2.0以降はいらないみたいなことが書いてあったので気になってました。
716nobodyさん:03/03/01 08:21 ID:???
PhpDocumentorがまともに解凍できない・・・。
717nobodyさん:03/03/02 17:57 ID:4bNs7IdZ
configureで --with-apache=/usr/local/apache2..と指定していますが、
configure:error: Invalid Apache directory -unable to find httpd.h under
/usr/local/apache2 となってエラーになります。
httpd.hはusr/local/apache2/include にあります。
どうしてひっかかるんでしょうか。
718nobodyさん:03/03/02 18:09 ID:???
>>717
死ね糞マルチ
719nobodyさん:03/03/02 21:22 ID:BwnMCY+5
PHPのxml_parse()でRDFファイルをパースしてるんだけど、
<link>http://www.hoge.com?foo=1&amp;bar=2</link>
(&amp;は半角)をパースするとセミコロン以下の
bar=2しかとれないんだけど・・・誰かおせぇ〜て。

実際のパースはxml_set_character_data_handler()で指定した
関数内で行ってます。
720nobodyさん:03/03/03 01:51 ID:???
まちがえて質問スレに書き込んでしまいました(マルチじゃないです!)

借りているサーバーのPHPのバージョンは4.0.6なのですが
register_globalsのon/offを調べる方法はありますか?
私の借りている会社は質問の返事が遅いのでできれば自分で調べたいのです。

今日からPHPの勉強を始めようと思って、初心者用マニュアル本を買ってきたのですが
(オンラインマニュアルは難しすぎてまだ理解できないです)最初の注意書きに
ver. 4.2以降でregister_globals = offが前提って書いてあることに気がつきました。
721nobodyさん:03/03/03 02:25 ID:VHTLB/I4
>>720

<% phpinfo(); %>

↑これだけ書いた拡張子 php のファイルを作ってそのサーバにアップする。
で、IEからアクセスすると PHP等のステータスがぞろぞろ表示されるので
CTRL+Fで「register_globals」を検索。on/off どちらか書いてあるはず。
722nobodyさん:03/03/03 03:59 ID:???
>>720
<? phpinfo(); ?>

721よ,なぜ<% %>でくくった?
723nobodyさん:03/03/03 07:07 ID:???
>>721はASP使いの悪寒
724nobodyさん:03/03/03 07:56 ID:???
 さらに--enable-short-tagが有効になってなくて「<PHP」でくくらないといけない悪寒(笑)
725nobodyさん:03/03/03 08:35 ID:???
>>720はasp_tags = Onにしているのだろう。
>>721はshort_open_tag = On
<?php phpinfo() ?>
ならどの設定でも大丈夫
726nobodyさん:03/03/03 08:35 ID:???
4.0.6。。。
4.2対象の本だと、使えない関数を使ってそう...ガンガレ
727nobodyさん:03/03/03 08:38 ID:???
>>720
あっちで答え出てるぞ。糞マルチ。
728nobodyさん:03/03/03 09:46 ID:???
「あ!間違えました。」と書くのは新手のマルチ商法か。
そもそもregister_globalsって、.htaccessでも設定・変更できるよな。
729nobodyさん:03/03/03 10:22 ID:m36vJ9x7
すいません
http://www.wirelessdevnet.com/channels/wap/features/xmlcast_php.html
のソース使ってスラッシュドットのヘッドラインを表示したいのですが上手くいきません
翻訳使っても訳の分からない内容なので教えてください

ここからここまでをカットして引っこ抜いて表示するという
内容のものだとは思うのですが・・・

global $sTitle, $sLink, $sDescription;
$titleKey = "^RSS^CHANNEL^TITLE";
$linkKey = "^RSS^CHANNEL^LINK";
$descKey = "^RSS^CHANNEL^DESCRIPTION";

の部分だけ設定すればいいのでしょうか ?

表示したいのはここのRSSです
http://slashdot.jp/slashdot.rdf
730:03/03/03 16:28 ID:LfdPkmfX
>>729
タグ名称と Description 部分がないから、切り出しのロジックを
いじらないと動かない。クイックハックするとこんな感じ。
http://vivian.mysite.ddo.jp/~nobu/xmlcastrss.txt
動かして見るなら拡張子を .php にしてくれ。
--
俺的ポータルサイトを作ろう
http://mysite.ddo.jp/
731nobodyさん:03/03/03 17:34 ID:???
>>720です。
<?php phpinfo() ?>はやったことがあったので調べてみました。onでした。
>>721,722,725さんありがとうございました。

>>726
そうなんです。どこを変えたら4.0.6でも動くようになるのか分からないと思うので、
ちょっと古めのマニュアル本を探そうかなと思ってます(´・ω・`)

サーバー借りてる会社がPHPをアップデートしてくれたらいいんですけど
他の人達が使えなくなってしまうから無理ですよね。
PHPを自分のディレクトリにインストールするのはだめでしょうか。
732SMTP:03/03/03 19:02 ID:wyzh6cij
PHPのWIN版では外部SMTPでメール送信ができるみたいだけど
LINUXやらBSDやらのUNIX互換からは出来ないのか?
733nobodyさん:03/03/03 20:45 ID:???
>>732
Socket使えるから出来るでしょ。
734SMTP:03/03/03 21:24 ID:wyzh6cij
Socketかぁ、php.iniの設定で簡単にチョチョイってな
具合にはいかないもんかね。
735SMTP:03/03/03 22:28 ID:???
PEARで出来そうな予感。
ので、かなり寒そうなPEARスレに質問してみる。
736729:03/03/03 23:30 ID:???
>>730
ありがとうございます
おかげさまで表示できました・・・・が
トピックのリンクが相対パスになってしまうのです

もうちょっと自分で検証してみますが
何かわかりましたらよろしくお願いします。
737nobodyさん:03/03/04 01:22 ID:???
ちょっと的外れな質問ですが
PHPやPerlを学べる学校やスクールってあるんですかね?
会社の上司が行かないか?って言うんですけど・・・。
738nobodyさん:03/03/04 01:26 ID:???
>>737
SEとしてのプライドを持つべきです。

「そんなところに行くくらいなら本3冊買ってください。それで十分です。」

位言ってやれ。
739nobodyさん:03/03/04 01:27 ID:???
>>738
いえ、SEじゃないんです。WEBデザイナーなわけで・・。
だからCGIとか使ったことはあるけど
基本的にはプログラムを組めないわけです。。
740nobodyさん:03/03/04 01:33 ID:???
>>737
正直、お金の無駄だと思われ。
本を買ってきて何か適当なものを組むだけでも十分じゃ?

# 漏れはインターンシップ逝った先で10日で作らせられたYp!
# もっとも言語はASPだったが。因みに使用言語を聞かされた時は(゚д゚)ンナゲンゴキイタトキネーなんて状態だったんだが。
741nobodyさん:03/03/04 01:36 ID:???
> もっとも言語はASP

むぅ。
742nobodyさん:03/03/04 01:36 ID:???
プログラム畑出身なので参考にはならないけど、チャチャを。

そんなのスクールあるのかなと思ってググってみたら、数十万!?
分からないことがあるとすぐ聞けるからスクールもありなのかも。
> 「そんなところに行くくらいなら本3冊買ってください。それで十分です。」
ぐらいな気持ちが無いとなかなか身には付かないと思うけど(w
743nobodyさん:03/03/04 01:37 ID:???
744nobodyさん:03/03/04 01:38 ID:???
会社でPerlやPHP使いたいならちゃんとプログラマ雇えよって感じだな。
人件費浮かそうとして後で痛い目みても責任もてませんよって言ってやれ。
745nobodyさん:03/03/04 01:39 ID:???
>>744
Webぷろぐ板で吐くセリフじゃないな。

私はプログラムが出来ません。

胸を張って言うことでもないと思われ。
746nobodyさん:03/03/04 01:40 ID:???
以前行ってた会社ではデザイナの人もプログラマと遜色ないぐらい忙しかった
みたいなんだが、掛け持ちでやれる余裕があるかどうかってのも問題に
なってくる気がする。。
747744:03/03/04 01:46 ID:???
>>745
いやいや、デザイナの人にそんな事を求める必要ないんで無いの?
って意味で書いたんだが。
ヘタに煽っても、両方に本腰入れられる状況になれなくてデカイミスさせても
可哀想だと思うんだが。
最終的に一番質のイイサービスを提供できるかどうかがWebアプリの問題でそ。
748nobodyさん:03/03/04 01:48 ID:???
>>747
>いやいや、デザイナの人にそんな事を求める必要ないんで無いの?

人間的な幅は広がるぞ。Webデザインとボイラー技士とかなら俺も止めるが。
749744:03/03/04 02:02 ID:???
人間的な幅のために経験を積ませるって意味では別にプログラマでもボイラー技師でも
止める必要は無い気もしますが。。
むしろボイラー技師の方が面白そ(ry
750737-739:03/03/04 02:08 ID:???
みなさん、色々ご意見ありがとうございます。
さっきスクール調べたのですが
PerlとPHPを2つ学べるところありませんね・・・たいていどっちかだ。

あと、自分はデザイナーですけど
プログラミングは学んでいたんです。
特にPHPはHTMLに書き込むし、結構わかりやすいので。
そういう意味ではスクールに行かせていただくのはチャンスだと思います。
が、ちゃんとしたプログラマーが1人欲しいのも事実ですし
自分は学生時代からUNIXやCやBASICの基礎を学んでいましたが
プログラミングが苦手なので全く頭に入りませんでした。

だから物凄い不安だったりします・・・。
751nobodyさん:03/03/04 02:25 ID:???
そんな事かく間にPerlなりPHPを本を読んで実践すればと思うのだが。
どんな良い学校いっても繰り返し書かなきゃ身につかんぞ。
752744:03/03/04 02:31 ID:+uHTLPA4
    >/////ノノノノノ
    ミム     \     
   |ラ  \ / |
   |/  (・) (・)|  / ̄ ̄ ̄ ̄ ̄
   (6     ......>...| < >>750両方いっぺんにかよ!
   |   / ̄ ̄7|  \_____
    \   ̄::: ̄∠
    /^ ∠U>_」ニ了

まぁ、もしか簡単なイントラ向けcgiならトライするのも有りかと。
753 ◆kaHG.XGS1s :03/03/04 08:24 ID:???
>750
http://itb-tech.itboost.co.jp/
ここ見ながら何とかならないですかね。

というか、やっぱどっちか片方に絞った方がいいと思うけど。
何か一つさわって、次っていうのと、二つ同時にさわるってのは
やっぱ難易度違うと思うよ。
754nobodyさん:03/03/04 08:29 ID:???
>>753
つぅか思想の時点で違うからなぁ・・・。
755SMTP:03/03/04 12:13 ID:h/lVtdgr
漏れはデザイナからスクリプター(PHPやPerlでプログラマっていうのも
おこがますい。)に転身すますた。もともとデザインの才能がなかったか
ら漏れとしてはWEBで比較的なPerlから入れたのはラッキーだった。
もうデザインの仕事なんて全然してない。結局誰にも教わらなかったし
周りにそんな事をやってるヒトがいなかった。今もだけど・・・。
しかし。。。やはりオブジェクトの世界にはもう一歩踏み入れない壁が
あるのも確か。やる気があるなら基本を学校で学ぶのも一つの道かもと
思ふ。
756 ◆STEELmK8LQ :03/03/04 12:16 ID:???
>750
 簡単に言うと

Perl:
 ウェブでドライヴするためには「CGI」として駆動させるため、少なからずapcheなり
TCP/IPなり、あるいはHTTPの仕組みを理解することが必要。
 一例を挙げると、フォームなりなんなりで取り込んだデータをHTTPリクエストから
取り出したり、あるいはスクリプト内部でHTMLを生成してHTTP様式を調えた上で
返したり、という部分を(ライブラリや外部モジュールがあるにせよ)スクリプト内部で
全て面倒見てやらなければならない。

PHP:
 ご自分でお書きになっているようにHTML内部に書いていけるので、スクリプタと
デザイナさんの間でコラボが割とラク、DreamWeaverなどのデザインツールが使える
のは大きい。
 ただし、処理が一筆書き(最初から最後まで一度舐めておしまい)なので処理の
順番をきちんと組み立てる必要がある。
 フォームやDBとの連携がラク
 ただし、PHP自体のバグ(4.2.3ではバグモジュール組み込むとフォームの頭4byteが
消えてしまったり)が割とあるので情報収集が欠かせない。

 というかんじでしょうか。

 どちらかというとスクールに通うよりは、まず一つ何か良くできたPHPのスクリプトを
探してきて、徹底的にそれを解析した方が良いと思いますよ。

 例えば、の話ですが簡易掲示板のスクリプトをどこかからか見つけてきて、それを
徹底的に解析していれば、いろいろと「ここをこうしたら」的な思いつきが出てくる
でしょうから、それにもとづいてリファレンスを読みつつ手を加えていく・・・みたいな
順番が一番判りやすいのではないかと。
757 ◆STEELmK8LQ :03/03/04 12:19 ID:???
>756
 ちなみに>756では、なにやらPerlに制約が大きいような話をしてますが、それはあくまで
CGIとしてPHPと比較した場合の話であって、ふだんのサーバ管理にはPerlにお世話に
なってます。
 非常に幅広い能力と柔軟性は、わしのようなニセサーバ管理者にとっては手放せない
ほど、本当に便利に使わせてもらってるんですが、特定分野に限って特化したものと
比較すれば・・・とい宇話だとおもってくだちぃ

 ちなみに、わしは鯖缶からスクリプトいじるようになりました。
 PerlもPHP(+MySQL)も両方とも大変便利に使わせていただいておりますです。
758SMTP:03/03/04 13:16 ID:h/lVtdgr
$test と ${'test'} が同じというのはいったいどういう事なんだ?
こういう事はエセスクリプターにはよくわからん。

PerlとPHPかぁ。うーーん。PHPは若い言語だから、バーションやら設定やら
でいろいろ違うし、まずは安定感のあるPerlの方がそれなりに洗練された本
やら説明が多いので無難なのでは・・。
759nobodyさん:03/03/04 13:21 ID:sa1CIWq+
>>758
Perlだと、${'test'}はシンボリックリファレンスとして扱われる。
$test = 'hoge'; $$test = 1;
print $hoge; #これは1になる!!
760nobodyさん:03/03/04 21:47 ID:???
>>759
【待望】PerlユーザのためのPHP入門
http://pc2.2ch.net/test/read.cgi/php/1046326634/l50

ウザイのでこちらでどうぞ。
761:03/03/04 23:27 ID:CT6PyLHU
>>736
おっと、タグ内のアイテムを分解してるのか。
次のように修正してみ。

@@ -68,7 +68,7 @@
$arItems[$itemCount]->xTitle = $data;
}
elseif ($curTag == $itemLinkKey) {
- $arItems[$itemCount]->xLink = $data;
+ $arItems[$itemCount]->xLink .= $data;
}
}
--
俺的ポータルサイトを作ろう
http://mysite.ddo.jp/
762nobodyさん:03/03/05 02:04 ID:???
>>761
これ、なんか凄いな。
俺もこういうにが作りたい・・・
763nobodyさん:03/03/05 14:23 ID:???
俺もこういうにが(・∀・)イイ!!
764nobodyさん:03/03/05 14:27 ID:ynGx9XlK
PHP4のセッションでhtml内のソースに勝手に<form action...>の後に
<input type="hidden" name="PHPSESSID" value="********" />
を付けて返してくる事があるんだけど、これはなんでだ?

同じサーバで運営してるアプリで出るヤツと出ないヤツがある。
765nobodyさん:03/03/05 14:28 ID:???
>>764
いや、セッションID・・・。
766>>765:03/03/05 15:05 ID:???
それはわかるんだけど、セッションIDはクッキーで受け渡してる
んじゃなかったけか?他のアプリではHTMLソースに勝手にhidden
でセッションIDを付け加えるなんて事なかったのになんでこれだけ・・。
767nobodyさん:03/03/05 15:07 ID:???
>>766
cookieを受け付けないUAもいるからね。それ対策だよ。たしか。
768nobodyさん:03/03/05 15:12 ID:???
マニュアル嫁
769nobodyさん:03/03/05 15:25 ID:???
session変数って配列を格納することはできますけど、
配列で格納することってできるんでせうか。
$_SESSION["test[]"] = 値;
こんな風に
770nobodyさん:03/03/05 15:31 ID:???
>>769
$test = array();
$_SESSION["test"] = $test;

状況は変数と同じ。
771>>737 >>768:03/03/05 15:32 ID:???
わかった。php.iniのsession.use_trans_sidをOnにしとくと
クッキーが使えない環境の場合勝手にhiddenを埋め込むんだ。
じゃぁ、なんで漏れのブラウザはクッキーだめなんだ??
って他のサイトではクッキーバリバリ食ってるのに???
あっ、汚してスマソ。

>>769
それは無理じゃない。
772nobodyさん:03/03/05 15:50 ID:???
>>769
$_SESSION["test"][] = 値;
773nobodyさん:03/03/05 15:54 ID:???
>>770
あーその方法は無理っぽいです。
A(フォーム)→B(セッション変数に格納)→A→B...C(DB登録)
って風にBに行くたびAの内容をセッション変数に入れて、
最終的にCで配列を結合して一行の文字列にしてDBに登録っていう
ややこしいことをやってるんですよー(そういう仕様で作らなくてはいけないらしいのです)。
なんで個人的には登録済みのセッション変数を検索できたら一番いいんですが。

>>771
無理ですかー。どうもです。
774769=773:03/03/05 15:56 ID:???
>>772
773書いてる間に見過ごしてました。
試してみます。
775 ◆Kiss.FX29M :03/03/05 16:23 ID:???
>>771
1発目は出てくるかもしれんが、2発目からは出てこなくなるだろう。
776769:03/03/05 16:38 ID:???
>>772
その方法でできましたーありがとうございます!

>>770 >>771
重ねて御礼申し上げます。
参考になりました〜。
777nobodyさん:03/03/05 16:50 ID:???
うんこ
778nobodyさん:03/03/06 00:49 ID:/MagQTVJ
そう言えば俺の作ってるアプリでセッション使ってるんだけど
時間帯によって Cookie だったり hidden(URL) 埋め込みだったりするんだけどこれなんで?
家からアクセスするとCookieになるが、会社で昼の糞重い時にアクセスするとURLにくっついてきた。
でも会社からでも4時ごろの比較的回線の空いてる時間なら Cookie・・・・。

???
779nobodyさん:03/03/06 11:31 ID:???
CGIでよくある投票ができるPHPスクリプトをフリーで配布されてるところ
ご存知ないでしょうか?
自分で作れるほど根気がないので、いただけるところを探しているのですがなかなか
見つかりません。↓が唯一みつけたところですが、ほかにご存知でしたら教えて
下さい。CJ-clubさんのVotec.cgiみたいのをさがしてるのですが。。。
ttp://wapiko.net/home/akane/php/php_dl.php
780>>778:03/03/06 11:54 ID:???
前にも書いたが、漏れの場合、同じサーバ内のアプリ毎に
セッションの受け渡し方が違っちゃう。

>>779
自分で作ろう!その方が早い気がするがするニダ。それ程
難しくないぞ。
781779:03/03/06 12:53 ID:???
>>780
自分で・・・ですか。
とほほさんところみたいに分かりやすくて、オフラインでじっくり読める
PHPの解説サイトあったら教えてください。
常時接続ではないのでなるべくオフでみながらやりたいので・・・
782nobodyさん:03/03/06 15:52 ID:???
>>781
保存すればいいじゃん。
783nobodyさん:03/03/06 16:00 ID:???
>>761
@@ -68,7 +68,7 @@の箇所でParse error

内容はよー分からんが、このスクリプトって
自分のサイトのヘッドラインを表示させる為だけのものだと思う
改造して他で使うには無理があるような気がするが・・・
784nobodyさん:03/03/06 17:43 ID:???
>>781
つか、chm版のPHPマニュアル落としたら?
4M強あるけど。
785nobodyさん:03/03/06 18:01 ID:???
>>784
ダイアルアップだと20分近くかかってしまう罠。
786nobodyさん:03/03/06 19:37 ID:???
>>785
その数十倍の時間にらめっこするわけだが?
簡単なトレードoffじゃないか。
787:03/03/06 21:12 ID:wBqlWOJl
>>783
diff の表示をそのまま入れてどーする。"." を一個入れるだけだ。
元のコードも直してあるから、diff が判らなんならこっち。
http://vivian.mysite.ddo.jp/~nobu/xmlcastrss.txt
同じく動いているのは、.php だ。
--
俺的ポータルサイトを作ろう
http://mysite.ddo.jp/
788nobodyさん:03/03/06 23:55 ID:???
>784
DLしたchmを開いたら「ページを表示できません」言われました…
789nobodyさん:03/03/07 00:37 ID:???
>>788
このスレの>>582から読んでみ
790nobodyさん:03/03/07 18:08 ID:???
>789
過去ログを読むと言う基本を忘れてました(つかリアルタイムで読んでたのに)
ありがと

今後の人のために:ここから→ttp://www.php.gr.jp/project/doc/
(日付は本家のものより古いようですが内容の差異については不明です
作業をされていらっしゃる方々に感謝します)
791736:03/03/08 06:36 ID:???
>>761
おおっ 動きました
そうか・・・結合演算子だけでよかったのですね
難しく考えすぎておりました なんにせよわざわざありがとうございました。
792nobodyさん:03/03/08 07:21 ID:???
<?php
$a_array = array("1:b","1:a","11:a");
sort ($a_array);
foreach ($a_array as $value){
print $value."\n";
}
?>
を実行すると、
11:a
1:a
1:b
となってしまいます。
1:a
1:b
11:a
としたいのですが、どのようにすれば良いのでしょうか。
793792:03/03/08 08:40 ID:???
natsort();
でうまくいきました。
失礼しました。
794nobodyさん:03/03/09 02:39 ID:???
>>739
デザイナーだったら、2進法とか、バブルソートとかから勉強した方がいいのでわ?
795nobodyさん:03/03/09 10:34 ID:???
>>794
Web制作板ではデザイナーはその辺のコーダとは住む世界が違う人間だそうだ。
796nobodyさん:03/03/09 18:58 ID:/LDM9G/p
会社のマシンにApacheとか入れてテストするのは危険ですか?
797nobodyさん:03/03/09 19:02 ID:???
>>796
ローカルでやる分には全然問題ないかと。
798nobodyさん:03/03/09 19:52 ID:???
いちよー80以外の適当なポートにして・・大丈夫だろうが、危険因子は排除
799nobodyさん:03/03/09 23:47 ID:/LDM9G/p
>>797 >>798
アドバイスありがとうございます。

ところで、MySQLとPHPを使ったデータベースを作成するなら、
まずどちらを先に勉強したほうがいいでしょうか?
800nobodyさん:03/03/10 00:32 ID:???
>>799
どっちでもいいよ、結局どっちも知らなきゃ組めないし。
801nobodyさん:03/03/10 00:57 ID:???
>>799
結局同時進行になると思われ。
まぁ、作りながらならPHP > NySQL > PHP > MySQL
ってな感じになると思うけど。
802nobodyさん:03/03/10 07:38 ID:???
    _____
   /二二ヽ
   ||・ω・||  <俺、失職しちゃったよ
.  ノ/  / >      俺、失職しちゃったよ
  ノ ̄ゝ
803nobodyさん:03/03/10 13:41 ID:2kdAUSJ0
PostgreSQL 7.2.3からPostgreSQL7.3.2に変更したところ、
PHPでlo_unlinkを使用する箇所で下記のようなエラーが出ました。

[ SQL文 ]は失敗しました。
ERROR: Function lo_unlink(text) does not exist Unable to identify a function
that satisfies the given argument types You may need to add explicit typecasts

動作的に使用しなくても問題はないように思えます。
postgreSQLのバージョンアップにより、lo_unlinkは使用しなくても良くなったのでしょうか?

「環境」
Red Hat Linux 7.2
PostgreSQL7.3.2
php-4.2.3
apache_1.3.27
804bloom:03/03/10 14:36 ID:3QAlitRl
805nobodyさん:03/03/10 14:50 ID:ethusIs+
携帯のサイト作ってるのですが、
掲示板に行くのページに一番最後に書き込んだ人の名前と日にちが、
でるようにしたいのですがどうしたらよいでしょうか?
806nobodyさん:03/03/10 17:03 ID:???
>>803
エラーメッセージを見る限り、引数の型が間違っているようですが。
その辺は確認しました?
807607:03/03/10 21:42 ID:y6h+x0ia
>>805
掲示板がどんなヤツなのかよく解らんが、
書き込まれたデータをテキストで保存している形式なら
CGIで最後のコメントだけ抽出して表示すればいいかと。

マジレス
808nobodyさん:03/03/11 02:09 ID:???
>>805
一番最後に書き込んだ人の名前と日にちだけを記録したファイルを作るといいよ。
requireするだけで表示できるし。
809nobodyさん:03/03/11 09:13 ID:???
>>808
ダセぇ。
810nobodyさん:03/03/11 09:39 ID:???
>>807
こんなやつ作りたいんですけど…
ttp://xx.alpha-sv.com/vf4/cgi/update_bbs.cgi
811nobodyさん:03/03/11 10:04 ID:???
>>810
使い倒して仕様を掴む。ソースがある場合は死ぬ気で読み解く
      ↓
判明した仕様通りにコーディング
812nobodyさん:03/03/11 11:10 ID:???
>>808
キャッシュ生成すんのがダサいコーディングか?
バックグラウンドがDBだろうがファイルシステムだろうが、
検索コストに比べりゃキャッシュ使うべきところだろ。

ま、名前と日にち"だけ"のキャッシュってことはありえんだろうが。
813nobodyさん:03/03/11 11:13 ID:???
>>812
>検索コストに
一番上。
814nobodyさん:03/03/11 11:13 ID:???
>>812
なんかphpスレ一帯に煽り耐性のない学生が出没してるな・・・
815nobodyさん:03/03/11 11:35 ID:???
>>811
初心者なので全然わけがわからないです。
一応そこの管理人さんにソース?もらったのですがさっぱり…
816815:03/03/11 11:41 ID:???
他のとこでも聞いてきます。phpで出来なさそうなので
CGIでがんばります
817nobodyさん:03/03/11 11:41 ID:???
>>816
そのレベルだとどこ行っても一緒だとは思うけどね。
818nobodyさん:03/03/11 13:04 ID:???
>>815
Hello world
からプログラムやり直せ。
819812:03/03/11 21:33 ID:???
そうか、隠れた指摘でもあるのかと思って反応したのだが、
単なるカルシュウム不足だったのか。牛乳飲んで出直してくるよ

>813
折れの書き方が悪かった。
検索に掛かるコスト>キャッシュに掛かるコスト だから後者を選ぶべきという事が言いたかった。
ただDBMS使っててクエリキャッシュが効いて、そっちの方がコストが小という場合があるかも知れん。
820nobodyさん:03/03/12 04:29 ID:???
>>805
$files = file($dat);
$line = $files[0];
821nobodyさん:03/03/12 09:25 ID:???
>>820
キャッシュすれば良いんだってさ。わざわざファイル作って。
822nobodyさん:03/03/12 11:47 ID:???
>>806
その通りでした。テーブル定義がtextのカラムをlo_unlinkしていたみたいです。
バージョンアップと共にチェックが厳しくなったんですね・・・。
823nobodyさん:03/03/12 20:28 ID:Q/ug/Lhk
初心者ですいません、質問ですが、
mb_convert_encodingを使おうとするとエラーが出ます。
undefined function: mb_convert_encoding() とか言われます。
php4.3.1は使える関数じゃないのでしょうか?
使っているバージョンはphp4.3.1+IISです。データベースはMYSQLです。
どうかご教授ください、お願いします。
824nobodyさん:03/03/12 21:15 ID:???
>823
php.ini
825nobodyさん:03/03/12 21:55 ID:Q/ug/Lhk
>824
ありがとうございます。
いじってみましたがよくわからないのです・・・
php.iniのどれをいじればよいのでしょうか・・・
826nobodyさん:03/03/12 22:06 ID:???
mbなんちゃら;
827nobodyさん:03/03/12 22:22 ID:???
>823
php.iniの設定も必要(PHP4.2の頃から設定が変わったので注意)だけど、
その4.3.1が--enable-mbstring付きでコンパイルされてないと駄目。
(RCの頃にはデフォルトで有効だったんだけどね…次回バージョンまでに多言語関係の熟成に期待)
再makeするなら、--enable-mbstring=allとして他の言語も入れといて良いんじゃないかな。
その分大きくなるけど。
828nobodyさん:03/03/12 23:26 ID:???
>>827
Windows用として配布されてるのはそんな心配ないよ。
php.ini だけ。
829nobodyさん:03/03/13 11:36 ID:???
少しPHPから外れちゃうかもしれないんですけど、
登録してもらうときにとりあえず登録してもらって表示するときにいらない要素を排除するのと、
登録の際に評価して削るのはどっちが素敵ですかねぇ〜?
DBの容量も考えたら後者なのかもしれないんですが、少し迷ってみたり。
830nobodyさん:03/03/13 11:38 ID:???
>>829
きれい事を言えば後者でしょう。
831829:03/03/13 11:43 ID:5jM1K4IS
>>830
ソース的にも後者ですかね?
832829:03/03/13 11:44 ID:???
ageてもうた・・・ハドゥカティ〜
逝ってきます・・・
833nobodyさん:03/03/13 11:46 ID:???
>>831
DB使うなら後者でも良いと思いますけど。どうせマーシャル処理が入るんだし。

テキストファイルの時はそのままPOSTメッセージを保存したりもしますけど。
834829:03/03/13 12:22 ID:???
>>833
自分も後者がいいような気がしてきました。
とりあえずそっちでやってみます〜ありがとうございました!
835nobodyさん:03/03/13 12:53 ID:???
>828
おぉう、IIS(=Windows)って書いてありましたな。確かに
836nobodyさん:03/03/13 14:43 ID:???
(; ´∀`)?
837nobodyさん:03/03/14 02:37 ID:???
838nobodyさん:03/03/14 03:30 ID:bKVRIfIQ
アンケートに協力して!

http://multianq3.uic.to/mesganq.cgi?room=yasuhito

毎月アンケートの内容が変わるよ。
839nobodyさん:03/03/14 13:53 ID:???
CSVファイルを使っているページで、検索を行う場合、
どのような処理が理想なのでしょうか。
preg_grepで配列に入れて、該当した順番に吐き出したのですが、
マッチする場合とマッチしない場合が出てしまいます。
840839:03/03/14 14:58 ID:???
PHP 4.0.4以降、preg_grep()により返された結果は、
入力配列のキーを使用して添字が設定されます。
を見落としてました恥
841nobodyさん:03/03/14 20:32 ID:???
Perlだとflockでロックして解除しなかったら
ファイル閉じたときに自動的に解除されるけどphpも同じでしょうか

842nobodyさん:03/03/15 12:24 ID:???
>>841
直接システムコールを叩いてるだけなら一緒じゃないの?
どっちにしろ激しく非推奨。
843sage:03/03/16 23:41 ID:MfieTvGJ
PHPもPostgreSQLも初心者ですparse errorが続出でデバックにかなりの時間
掛かっています、200行こえるとかなりきついっす
あきらめて一晩たってよく見れば } の付け忘れとかどうしたらこういうケアレスミスをふせげるでしょうか、まじ情けないです。
844nobodyさん:03/03/16 23:44 ID:???
ちゃんと集中する。
845nobodyさん:03/03/16 23:54 ID:???
parse errorを取ることはデバッグといわない罠
846nobodyさん:03/03/17 00:04 ID:???
度々再々とチェックする。
847nobodyさん:03/03/17 00:24 ID:WZEdmRHq
>>843
844はもっともな答えだが、PHPはスクリプト言語なので、
ケアレスミス程度なら体が覚えるまでerror→訂正ぐらいの
気軽さで勉強しても構わないよ。

昔、パンチテープ(工作機の制御用にまだ使ってた(笑))の時は
そりゃあ、机上デバッグに力入れたもんだが…
848nobodyさん:03/03/17 01:03 ID:???
ちょっと聞きたいんですが
Warning: pg_query() query failed: ERROR: parser: parse error at or near "1" in /home/hoge/public_html/hoge.php on line 83
これって2つのエラーメッセージですよね
Warning: pg_query() query failed
これはpg_queryって関数が無いってことでいいのかな?
parse error at or near "1" in ?
or near "1"っこれがちょっとわからないんですが、教えてけれ。

849nobodyさん:03/03/17 01:12 ID:???
>>848
んにゃ、pg_query()に渡したsqlが間違っている。
850nobodyさん:03/03/17 03:56 ID:???
>>843
そんなもの防ぐ必要がない。
parseエラーなんか、出たら修正すればいい。
メッセージちゃんと読めばすぐ見つけれるようになる。
エラーメッセージ嫁!
851nobodyさん:03/03/17 10:57 ID:???
エラーメッセージを無駄な情報だと思ってる奴は正直プログラマに向いてない。

852 ◆AngelH/kMI :03/03/17 15:52 ID:???
まあ、parse errorに関しては
色分けしてくれるエディタ使うとか
マメにphp -lでエラーチェックするとか
予防は出来るけどそれ以上は無理だね。

ま、書いてる本人のミスなわけだし。

自分もついさっき
$db->query("SELECT * FROM hoge WHERE user = '111');
と最後の"を書き忘れ、かなり長時間悩んじゃったよ(苦笑
853nobodyさん:03/03/17 15:55 ID:???
>>851
2chを無駄な情報だと思ってない漏れは、プログラマに向いてますか?
854nobodyさん:03/03/17 16:52 ID:eIaELJZp
imap_openを使いたいのですがundefined…というエラーが出てきます。
どうすれば使えるようになるのでしょうか。。
855nobodyさん:03/03/17 17:03 ID:???
>>853
最高っす!
856nobodyさん:03/03/17 17:03 ID:???
つぅかコンパイルエラーごときで質問しに来てんじゃねぇよぼけ。
857nobodyさん:03/03/17 17:04 ID:???
エラーを出すような人は正直プログラマに向いていない。
858854:03/03/17 17:04 ID:eIaELJZp
環境はWin2kでPHP4.3.1とApache1.3.27です。
859854:03/03/17 17:09 ID:eIaELJZp
860nobodyさん:03/03/17 18:22 ID:???
>>857
んなこたーない。
861nobodyさん:03/03/17 20:02 ID:???
外部ファイルから引っ張る時、
<?php
function test(){
?>
aiueo
<?php
}
?>
というのと、
<?php
function test(){
print <<<END
aiueo
END;
}
?>
どっちが便利?
862nobodyさん:03/03/17 21:54 ID:???
>>861
上はだめじゃない?
863nobodyさん:03/03/17 22:00 ID:???
すまん。だめじゃなかった。でも上はきらい。
864nobodyさん:03/03/17 22:08 ID:???
>>861
外部ファイルを引っ張るとき...? ってのが意味不明だが、

秀丸を使っていると、上は色分けをしてくれるのでいいが、
中に変数をそのまま埋め込みできる下を多用してます。
865nobodyさん:03/03/17 22:31 ID:???
秀丸いいね
おでは先週くらいから、Emacsにphp-mod.el組みこんで
使ってるんだが、おでがへぼいんでEmacsのパフォーマンスを
引き出せないので悲しい、Emacs使いこなせたらなんでもできそう
な気になりまふでも秀丸のLinux板がでたらそっち使うが
まぁ絶対にありえないだろうけど。
866nobodyさん:03/03/17 22:32 ID:???
>>861
ていうかロジックとビューの分離くらいしろよ。と。
867nobodyさん:03/03/17 23:00 ID:???
質問します
2チャンネルで字下げするのどうしたらできまふか?
おいらも861みたいになちゃうんだよね。
868nobodyさん:03/03/17 23:12 ID:???
        めんどいな。
869nobodyさん:03/03/18 00:12 ID:???
ランダムな8桁の英数字(大文字小文字も使いたい)をPHPで発生させたいんだが
どちたらできるの?
マニュアルよんだら数字の乱数の作り方は出てたが英文字はないのでないのかい?
情報キボンヌ
870nobodyさん:03/03/18 00:12 ID:???
s/ / /g
871nobodyさん:03/03/18 00:27 ID:???
>>869
>英文字はないのでないのかい?

ちょうどASCIIのaやAに当たる文字コードを加算するだけで事足りると思うんだが。

もしくはrandomした数字をMD5にでも渡すとか。
872nobodyさん:03/03/18 00:32 ID:???
>>871
MD5だと[0-9a-f]だよ。
俺はsubstr(crypt(uniqid("")),-8)とかやっている。
uniqidに限らず他を使う場合もあるけどな。
873nobodyさん:03/03/18 01:54 ID:???
サンクス
マニュアルみたら
$better_token = md5(uniqid(rand(),1));
こんな例がでてまふた、でもこれじゃあ32文字も出るんだ罠
そんなにいらんのだが、最初の8文字とかでもいいのだが
パラミィータ設定してスマートに8文字だせんかの?
マニュアルには prefix を空とした場合、返される文字列の長さは、 13文字となりますと書いてあったがどうしたら8文字にできまふか?
874nobodyさん:03/03/18 02:05 ID:???
自分で切れば?てか、切って当然。
875nobodyさん:03/03/18 02:17 ID:???
やっぱこれっすか
s/ / /g
切まふ
876nobodyさん:03/03/18 02:18 ID:???
文字数を渡して好きなように切れる関数でも作れば?
細かい機能は自分で関数を作れば解決。
877nobodyさん:03/03/18 02:20 ID:???
>>875
文字数で切るだけならsubstrでいいでそ。
878nobodyさん:03/03/18 02:23 ID:???
>>876
substrすら知らずに偉そうに煽ってる?
879876=877:03/03/18 02:30 ID:???
いやいや、$better_token = md5(uniqid(rand(),1))とsubstrをくっつけて、
好きな文字数且つランダムなのが取得できるのを作ったら?
ってつもりだったのだけど…。

873が既存の関数だけでなんとかしようとしてるのが、プログラミングを楽しみ切って
ないようにみえたから。
880nobodyさん:03/03/18 03:12 ID:4yQWEX54
>>843
WebStudio
PHPUnit
881nobodyさん:03/03/18 10:46 ID:???
>>880
でもエクリプスの最新版は英語ができないときつい罠。

まあ秀丸より便利だしね。
もうもどれね。
882nobodyさん:03/03/18 11:15 ID:???
ところでuniqid命令で生成される乱数に英数(大文字、小文字)以外の
文字もでてきちゃうね(^^;)
.とか/とか\とか困ったな、アルファベットの大文字小文字と数字だけ
だせないものなの?
883nobodyさん:03/03/18 11:20 ID:???
↑のものですが、ごめんなさい
"\"マークはでないみたいですね、でもやっぱり"."と"/"は出やがるぜ
884nobodyさん:03/03/18 12:02 ID:???
MacOSX10.2.4でphp4.1.2です。
自鯖にレッツphpのぁぷろだを入れて使ってるんですが、10MB以上のファイルをupload出来ないです。
post_max_sizeもupload_max_filesizeも30MBとかにしてるんですけど。
他に設定しないといけないところがあるのでしょうか。
885nobodyさん:03/03/18 14:27 ID:???
Scriptの実行時間の制限は?
886nobodyさん:03/03/18 14:38 ID:???
>>882
range
array_merge
srand
array_rand
887nobodyさん:03/03/18 18:33 ID:???
>885
max_execution_timeですかね。
30なんですけど、ローカルでuploadしても10MB以下だと出来るのに、10MB超えるとだめだから、時間ってのは違うっぽいんですよねぇ。
888nobodyさん:03/03/18 18:41 ID:???
Apacheの方でも制限なかったか?>サイズ
うろ覚えだけど。

あーあとPHPでも複数制限があったような気がする。
889nobodyさん:03/03/18 18:54 ID:???
ログになにか出てないかい?
あとmemory_limitも見たいところだね。
890nobodyさん:03/03/18 20:39 ID:???
memory_limitは設定してもphpinfoでは表示されてないです。
Apacheの設定ってのも関係あるかも知れませんね。
調べてみます。
レスありがとうございました。
891nobodyさん:03/03/18 23:04 ID:???
>>884
inputのhidden渡ししてる、MAX_FILE_SIZEの値が影響してるってことない?
Apacheの方はLimitRequestBodyディレクティブをデフォルトから変更してると影響するみたいやね
http://cvs.apache.jp/apache-ja/manual/mod/core.html#limitrequestbody
892nobodyさん:03/03/19 00:28 ID:???
>891
外野からだが参考になった。
LimitRequestBody ディレクティブは、指定されたコンテキスト (サーバ全体、ディレクトリ、ファイル、ロケーション) 内において HTTP リクエストメッセージボディの許容されるサイズに制限をかけることができます。
893891:03/03/19 01:09 ID:???
MLのスプール読んでたら同様の指摘が…もはや本家ではFAQだそうな。
なんかシンクロニティ
894初心者:03/03/20 00:35 ID:???
あのさ、$_POST['hogehoge']の中身を抹殺するのってどうやるのかな?

<form method=post action='index.php'>
<input type=text name='hogehoge'>
</form>

ってやって index.php が表示されたときに
ブラウザの再描画ボタン押したらもう一度$_POST['hogehoge']送信
されちまうじゃん。

普通こういうのってどうやって処理してる?
895初心者:03/03/20 00:36 ID:???
age
896nobodyさん:03/03/20 00:39 ID:???
>>894
POST後、refreshしておく。
897初心者:03/03/20 00:48 ID:???
>896
refresh関数なんかないけど・・・
もしかして unset($_POST['hogehoge'] ) をいってますか?

やってみて下さい、無駄ですから。
898nobodyさん:03/03/20 00:50 ID:???
header('Refresh: 1, URL');
899初心者:03/03/20 01:09 ID:???
>898
ぅぉ!出来た!!

さんくすでしたmOm
900nobodyさん:03/03/20 01:26 ID:???
>>896,898
偉いねぇ
901nobodyさん:03/03/20 01:37 ID:???
何気に邪道な気もしないでもないが。
phpってこういった機能は実装しないのかなぁ
902nobodyさん:03/03/20 02:15 ID:???
>>901
HTTPのレスポンスヘッダを全て関数に実装するのもどうかと思うが(w
903nobodyさん:03/03/20 02:18 ID:???
>902
違う違う、一度与えた$_変数の有効期間を設けるとかそういう類の
関数って意味。
sessionと併用したスコープなんてのがあれば実現出来そうな気が
するんだけどなぁ。。
904nobodyさん:03/03/20 02:32 ID:???
タブと ;; 区切りの文字列をlist()にぶち込みたいのですが、
;; のほうが二文字だからか、上手く機能してくれません。。

いったいどうすればいいんでしょうか?
マニュアル見る限り出来そうなのはわかるんですが・・
905nobodyさん:03/03/20 02:48 ID:???
>>904
何を試してみたか書いたほうがいいよ。
preg_split使ってみた。
$array = preg_split("/::|\t/",$str);
906nobodyさん:03/03/20 02:49 ID:???
ん、split('(\t|;;)',$str);でいいんでつね・・(´Д⊂ヽ
文字列分割系の関数いっぱいあってようわからん、、(´Д⊂ヽ

板汚し失礼しました
907nobodyさん:03/03/20 02:52 ID:???
>>905
あう、時間差ごめんなさい汗
explode()とsplit()で頑張ってたんですが、
preg_split()のマニュアルページ見てるとgoodな例文あったのでそれで何とかなりました・・ありがとうございますっ
908nobodyさん:03/03/20 14:11 ID:usTHLNmu
//----------------
// time()
//----------------
$t = time();
$timestamp = mktime('','','',date("j", $t),date("n", $t),date("Y", $t));
$yy = date("Y", $timestamp);
$mm = sprintf("%02d",date("j", $timestamp));
$dd = sprintf("%02d",date("n", $timestamp));

print "time = $yy/$mm/$dd";



//----------------
// getdate()
//----------------
$nowtime = getdate();
$year = $nowtime["year"];
$mon = sprintf("%02d",$nowtime["mon"]);
$mday = sprintf("%02d",$nowtime["mday"]);

print "gettime = $year/$mon/$mday";

実行すると

time = 2004/03/08
gettime = 2003/03/20

なんでtime()の方は違うんだ?
909nobodyさん:03/03/20 14:52 ID:HiyOtoa6
>>894
>>895
>>897
>>899
とりあえず1回死んでもらえますか?ゴミよ。
910:03/03/20 15:06 ID:VfWWllNI
>>908
date フォーマット指定 "j" と "n" が逆だから。
--
俺的ポータルサイトを作ろう
http://mysite.ddo.jp/
911nobodyさん:03/03/20 15:49 ID:???
WebStudioっていうのを使ってみたいんですが、

↓コレ
http://www.xored.com/dl.php?download=xws-core-0.3.3.zip

何故か解凍できません。
誰か解凍できる人います?
解凍ツールはLhaplusです。
912nobodyさん:03/03/20 15:59 ID:ZLETgyRF
PHPプログラムを配布するんですが
ソースコードを改造出来ない様にする方法は無いですか?
Zendエンコーダは高くて・・。
913nobodyさん:03/03/20 16:34 ID:???
>>911
YahooBBの社員さんですか?

>>912
無理
914911:03/03/20 17:06 ID:???
>>913
違いますよ。
容量大きくて面倒でしょうが、
解凍できてる方、報告お願いします。
915nobodyさん:03/03/20 17:24 ID:???
>>912
「キャッシュされるファイルについて」あたりを参考にしてはどうでしょう?
ttp://itb-tech.itboost.co.jp/php/php_21.php
916nobodyさん:03/03/20 18:14 ID:???
>>910
ですか・・・逝ってきます。サンクスです。
917nobodyさん:03/03/20 18:28 ID:???
質問さしてね
HTMLでアンカーってあるよね、同じページのなかでジャンプ
するやつ、PHPでこの命令はないの?
918nobodyさん:03/03/20 18:48 ID:???
(゚Д゚)ハァ?
919nobodyさん:03/03/20 18:50 ID:???
>>911
前にDLしたが解凍できた&動作確認済み。

>>917
goto
なわけはない。
920910:03/03/20 19:24 ID:???
>>919
ありがとうございます。
不可解ですが、Winzipで試したら解凍できました。

Winzipと日本のzip形式とでは仕様が異なるんでしょうかね?
921nobodyさん:03/03/20 21:03 ID:???
日本のzip形式ってなんだよ・・・_| ̄|○
922nobodyさん:03/03/20 21:37 ID:???
                 /      ヽ
                 / プラーン   ヽ プラーン
             ∧ /∧       ∧ヽ∧
            (  ⌒ ヽ      (  ⌒ ヽ  俺のはカンコック式zipだった。。
             ∪  ノ ミ  彡  ∪  ノ
              ヽ_),)        し'l_ノ
923nobodyさん:03/03/21 16:56 ID:???
カンコック式zipにワラタ。
924nobodyさん:03/03/21 18:01 ID:???
>>921
zip7だっけか?日本人が開発した、

「unzip32.dllでエラーを起こすちょっと小さいzipファイル」

を生成するプログラムを書いたバカがいる。
925nobodyさん:03/03/22 04:28 ID:???
mbstringを使いたいんで、設定を変更しているのですが、
Windowsなのですが、php.iniを弄るだけではダメなのですか?
ttp://www.geocities.jp/wingdraw/pxml/pxml2.html
を実行したのですが、
Fatal error: Call to undefined function: mb_convert_encoding() in C:\web\test\xml_parse001.php on line 100
と表示されてしまいました。
mbstringの設定は、
ttp://php.s3.to/man/ref.mbstring.html
のEUC-JPユーザのphp.iniを参考にしました。
なにか他に設定が必要でしょうか。 Win98se AN HTTPD PHP4.3.0
926nobodyさん:03/03/22 04:46 ID:???
phpinfo()で mbstringが有効になってる?
たまたまうちのphp@windowsも4.3.0だけどmbstringが有効になってなかったよ。
php.iniのextensionの部分をチェックすべし。
EUC-JPユーザ云々の設定は、その後の話だね。
927nobodyさん:03/03/22 04:47 ID:???
>>925
Windowsだったら、php.iniでphp_mbstring.dllを
dynamic loadしてないんじゃないの?
extensionsディレクトリに入ってるから
(入ってなければ適切でないパッケージをダウンロードしてる)
extension_dirをきちんと設定してやって、Dynamic Extensionsの項の
該当するDLLのコメントを外す。

もし上が原因だったら、きちんとphp.iniのコメント記述を
読んでないからなので、英語だからと敬遠せずに一度ちゃんと読みなハレ。
928927:03/03/22 04:55 ID:???
とはいうものの、php.iniのコメントだけだと自動DLのやり方は判るものの、
DLが必要ということは判りづらいかな。
929925:03/03/22 06:39 ID:???
>926-927
thanxです。
php_mbstring.dllの項目を見つけたのですが、
まだ、ちょこちょこ修正が必要なようですね。
今日はもう眠いので明日また取りかかろうと思います。
ありがとうございました。
930925:03/03/22 15:32 ID:???
extension_dir = "C:\php\extensions\"
の個所を指定していなかったのが原因のようです。
mbstringに限らず拡張モジュールで検索したところ見つけることが出来ました。
Dynamic Extensionsの項は全く見ていなかったので、本当に助かりました。
たぶん、まだ設定が必要だと思いますので色々調べてから利用しようと思います。
ありがとうございました。
931nobodyさん:03/03/22 19:02 ID:UE3IynkO
setcookie("***");

とすると、*** という名前のクッキーが削除されるのは
どの本を見ても書いてありますが、

新しくクッキーを書きこむと、書き込んだものとは別の意図していないクッキーの値が
消えるので、ひょっとしてはと思いお尋ねします。

クッキーって個数制限はありますか?

ただ、制限があったとしても400個くらいだったと記憶しており、
私が使用している数はせいぜい50個くらいです。

どなたかご存知の方、どうぞよろしくお願いします。
932nobodyさん:03/03/22 19:04 ID:???
>>931
あなたのバグの予感。
933nobodyさん:03/03/22 20:10 ID:???
50個も使うか....普通...
934nobodyさん:03/03/22 20:53 ID:???
>931
減らせよ。正直迷惑。
935nobodyさん:03/03/22 21:02 ID:???
クラスについて聞きたいのですが、
クラスメンバは全てpublicなのでしょうか。
C++みたいにprivateやpublicは指定できないのですか。

newで作ったインスタンスのスコープはどのくらいなのでしょうか。
delete演算子とかないですよねぇ。

マニュアル見ても詳しくかいてなかったのでよろしくおながいしまう。
936nobodyさん:03/03/22 21:13 ID:???
>>935
ええ、できないです。

関数内じゃない?ifブロックとかだと生きてるし。
937nobodyさん:03/03/22 21:13 ID:UE3IynkO
931 です。

書き込むクッキーなのですが、

***[01][1]
***[01][2]
***[01][3]

***[02][1]
***[02][2]
***[02][3]

のような形で多次元配列(連想配列の配列)に入れています。

これってクッキーにそのまま書けますかね?

・PHPに多次元配列がある事
・クッキーに配列を書き込める事

それぞれはしばしば解説してあるのを見かけるのですが、
多次元配列がクッキーにそのまま書き込めるのかわかりませんでしたので。
ひょっとしたらそのせいかとも思いまして。

setcookie("***[01][1]","$value",time()+36000);
のような形で書き込んでいます。

どうぞよろしくお願いします。


938 ◆kaHG.XGS1s :03/03/22 21:18 ID:???
>935
そのあたりはPHP5以降に期待やね…。
939bloom:03/03/22 21:18 ID:d1IUlECS
940nobodyさん:03/03/22 21:23 ID:???
>>937
もちろん無理でしょう。
941935:03/03/22 21:49 ID:???
>>936>>938
ありがとん
PHP5に期待します。
942nobodyさん:03/03/22 21:50 ID:vD6RRe1J
perlのmyにあたるものは何ですか?
943nobodyさん:03/03/22 21:59 ID:???
そんなものはないです
944nobodyさん:03/03/22 22:02 ID:???
>>942
そもそもスコープが関数内に限定されるので必要なしです。
945nobodyさん:03/03/22 22:04 ID:???
変数のスコープはそれ以上狭くならないの?
946nobodyさん:03/03/22 22:06 ID:UE3IynkO
>>940

やはり無理ですか。

だとすると、多次元配列で扱った方がスマートに処理できるデータをクッキーで扱う場合、
みなさんはどうやって処理されてますか?

例えば
$tmp[01][1] = '111';
$tmp[02][2] = '222';

というような値を扱う場合、

デリミタを定めて、一旦下のような形にしてから書きこむしかないのでしょうか?
$tmp = '01#1#111###02#2#222';

だとするとまた後でsplit するしかないですよね・・・






947nobodyさん:03/03/22 22:12 ID:???
>>946
と、言うかcookieなんて不安定なストレージに多量のデータを書き込んだりしない。みたいな。
948nobodyさん:03/03/22 22:18 ID:UE3IynkO
>>947

なるほど、だとしたらやはりセッションですか?

例えば大きな買い物カゴのシステムを作る場合のデータは
どこに保存するのが望ましいでしょうか?


949nobodyさん:03/03/22 22:19 ID:???
>>948
セッションじゃないの?
950nobodyさん:03/03/22 22:21 ID:UE3IynkO
>>949
なるほど、例えばperl でユーザ側の挙動を記録する際は
どうすればいいですか? 仕方なくクッキーですか?
951nobodyさん:03/03/22 22:24 ID:???
>>950
>ユーザ側の挙動
定義して
952nobodyさん:03/03/22 22:43 ID:???
何故にセッションとクッキーを別に考えますかね?
クッキーもセッション管理の一つの手段でしょうに…。
953nobodyさん:03/03/22 22:45 ID:???
>>952
セッションを識別するためのな。
セッションで保存し続けるデータを丸入れするもんでは断じてないだろう。
954nobodyさん:03/03/22 23:06 ID:???
>>953
それは規模によるね。丸入れで十分な場合もあるし。

まあ例に挙がってる大きな買い物カゴでクッキーに丸入れは無謀以外の何者でもないが。
955nobodyさん:03/03/22 23:17 ID:???
ポストされたSJISのデータをファイルに保存するとソの文字に\\ていうのがつくんだけど
どうやって回避するのでしょうか?
956955:03/03/22 23:26 ID:???
悩むのめんどくさそうなのできっぱりEUC_JPで行く事にしました。
957nobodyさん:03/03/23 00:25 ID:???
>>931
ちょっと遅レスだけど、知らん人のために・・・・

> クッキーって個数制限はありますか?

(引用)
http://e-words.jp/w/Cookie.html

1つのCookieには4096バイトのデータを記録でき、最大で300のCookieを保存できる。1台のサーバが同じコンピュータに対して発行できるCookieの数は20個に制限されている。
958nobodyさん:03/03/23 01:23 ID:BBpu4hLb
私も検索していてこのようなログを見つけました。

(引用)
http://www.users.gr.jp/ml/archive/asp/4598.asp

やはり気になるのがブラウザを閉じてもセッションを
残すにはどうしたら良いかと言う事でして、

その際は上のページにありますように
(1)Application 変数に格納する。
(2)DB(やファイル)に格納する。

でいいのでしょうか?

他にもPHP独自のスマートなやり方がありましたらご指導お願いします。
959初心者:03/03/23 01:25 ID:???
リモート情報取得で$_SERVER["REMOTE_ADDR"]使うと
xxx.xxx.xxx.xxx 形式でしか取得できないんだけど
bbb.aaa.hogehoge.co,jp形式で取得できる方法ってどうやるのだろ。。
960nobodyさん:03/03/23 01:28 ID:???
age
961初心者:03/03/23 01:54 ID:???
っつーか、$_SERVER["REMOTE_HOST"]
が効かんのは何故だ。。
HostnameLookupsはOnにしてるのだが。。
962nobodyさん:03/03/23 02:06 ID:???
>>958
ブラウザを閉じても、ってことはcookie使うのを前提にしているとして、
1. cookieが消えないように設定
2. セッション情報がサーバから消えないように設定

1.は session_set_cookie_params()かな。またはphp.iniのsession.cookie_lifetime。
2.は php.iniのsession.gc_probability、session.gc_maxlifetimeを弄ると良さげ。
   または、session_set_save_handler()を使って消えないようにするとか。

>>959
gethostbyaddr($_SERVER["REMOTE_ADDR"])
963962:03/03/23 02:21 ID:???
と思ったけど、HostnameLookups onならgethostbyaddrしても出てきそうにないな・・
964959:03/03/23 02:29 ID:???
>962
>963
あんがとmOm
965nobodyさん:03/03/23 09:11 ID:gFyfJ3h7
phpでime.nu経由のリファラーを弾きたいのですが
記述方法を教えて下さい。
966nobodyさん:03/03/23 09:19 ID:???
>>965
PHPのマニュアル一回でも読めばそれくらい出来るだろ?
967nobodyさん:03/03/23 11:47 ID:???
一覧表示してみると$_SERVERと$_ENVが同じにみえるのですが、実際はどう違うのでしょうか。
968nobodyさん:03/03/23 12:00 ID:fA4gH2xG
グローバル変数とローカル変数の違いを
だれかおしえてください。
例を挙げてもらえると助かる
969nobodyさん:03/03/23 13:03 ID:???
>>968
どこからでもアクセス可能。
所属するスコープ内だけで有効。
970nobodyさん:03/03/23 13:39 ID:???
>>968
<?php
$グローバル
function(){$ローカル}
?>
971968:03/03/23 13:40 ID:fA4gH2xG
>>968
お返事どもでつ。
例をあげてくだつぁぃ。
カウンタとか掲示板で。
972nobodyさん:03/03/23 13:48 ID:???
>>970
その$グローバルは違うだろ!
973nobodyさん:03/03/23 14:04 ID:???
>>972
<?php
$global
function hoge() {
 global $global;
 $local;
}
974nobodyさん:03/03/23 15:22 ID:???
972 名前:nobodyさん 投稿日:2003/03/23(日) 13:48 ID:???
>>970
その$グローバルは違うだろ!

アホがいます。
975965:03/03/23 16:20 ID:gFyfJ3h7
>>966
分からないです…せめてヒントだけでも教えて下さい。。
976nobodyさん:03/03/23 16:24 ID:???
>>966
マニュアルだけでは足りん。

TCP/IPの常識HTTPの常識CGIの常識論理的思考力発想力気力体力

何より大切な自分で問題を解決するための手段を考える問題解決力。
977nobodyさん:03/03/23 16:50 ID:???
>>975
966じゃないが、
ヒント
if,ime.nu,Location
はい、完成。
978965:03/03/23 17:51 ID:???
>>977
うわぁありがとうございます。検索したら出来ました。感謝。
979nobodyさん:03/03/23 18:26 ID:???
>>967
同じもの
980nobodyさん:03/03/24 01:21 ID:???
>>978
ためしに検索してみたらJavaScriptの方法が目立つけど、
まさかJavaScriptで代用したなんてことはないよね・・・(笑)
981nobodyさん:03/03/24 03:11 ID:???
【PHP】初心者コーナー 2 Released
http://pc2.2ch.net/test/read.cgi/php/1048442813/l50
982nobodyさん:03/03/24 03:36 ID:???
んじゃ998が999の質問の回答を含めた掲示板を作る。
983nobodyさん:03/03/24 07:29 ID:???
Flash板みたいなことを・・(*´∀`)
984nobodyさん:03/03/25 00:07 ID:???
実験的に
Apache PHP PostgreSQLで、セッション変数使ってDB上のIDとpasswordを
認証してからメンバーページにログインできるような会員制のサイトを
作ってみたんだけど、あとSSL使ってネット上に平文が流れないように
IDとpasswordを暗号化したくらいでセキュリティーが保てれるんでしょうか?


985nobodyさん:03/03/25 02:13 ID:???
>>984
とりあえずパスワードを伝送経路で盗聴される危険性は少なくなったと。
後はサーバ側のパスワードの管理とバカユーザがモニタにパスワードを張らないように見張ることとか。
986nobodyさん
>985
マジレスサンクス
>バカユーザがモニタにパスワードを張らないように見張ることとか。
これはある程度防ぎようがないっすね、パスワードを他人に漏らす
ってことですよね、漏らした人間が不利益をこうむらない限りしかたないっすね。