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

【PHP】下らねぇ質問はここに書き込みやがれ 53

レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん2007/08/25(土) 22:11:08ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

◆前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 52
http://pc11.2ch.net/test/read.cgi/php/1186794483/

◆質問する時の注意
・ 自分のIDを表示させること。(メール欄に何も記述しないこと。空白も入力しちゃダメ)
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。

◆質問後の注意
・偽者防止に必ずIDを表示させること。(メール欄に何も記述しない)
・2回目以降は最初に質問した際のレス番号を名前欄に入れること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0002nobodyさん2007/08/25(土) 22:12:35ID:???
■過去ログ
【PHP】下らねぇ質問はここに書き込みやがれ 51
http://pc11.2ch.net/test/read.cgi/php/1185521566/
【PHP】下らねぇ質問はここに書き込みやがれ 50
http://pc11.2ch.net/test/read.cgi/php/1184143801/
【PHP】下らねぇ質問はここに書き込みやがれ 49
http://pc11.2ch.net/test/read.cgi/php/1182794620/
【PHP】下らねぇ質問はここに書き込みやがれ 45 (※実質48)
http://pc11.2ch.net/test/read.cgi/php/1180181033/
【PHP】下らねぇ質問はここに書き込みやがれ 47
http://pc11.2ch.net/test/read.cgi/php/1180181033/
【PHP】下らねぇ質問はここに書き込みやがれ 46
http://pc11.2ch.net/test/read.cgi/php/1178955837/
【PHP】下らねぇ質問はここに書き込みやがれ 45
http://pc11.2ch.net/test/read.cgi/php/1178955768/
【PHP】下らねぇ質問はここに書き込みやがれ 45
http://pc11.2ch.net/test/read.cgi/php/1177635762/
【PHP】下らねぇ質問はここに書き込みやがれ 44
http://pc11.2ch.net/test/read.cgi/php/1176364487/
【PHP】下らねぇ質問はここに書き込みやがれ 43
http://pc11.2ch.net/test/read.cgi/php/1175368910/
【PHP】下らねぇ質問はここに書き込みやがれ 42
http://pc11.2ch.net/test/read.cgi/php/1174217841/
【PHP】下らねぇ質問はここに書き込みやがれ 41
http://pc11.2ch.net/test/read.cgi/php/1173163186/
0003nobodyさん2007/08/25(土) 22:13:24ID:???
関連リンク
■本家マニュアル   http://www.php.net/manual/ja/
■日本PHPユーザ会 http://www.php.gr.jp/
■PEARマニュアル  http://pear.php.net/manual/ja/
■メーリングリスト   http://ns1.php.gr.jp/mailman/listinfo/
■ZFマニュアル    http://framework.zend.com/manual/ja/

(以下英語)
■Smarty       http://smarty.php.net/
■Zend本家      http://www.zend.com/
■Zend Framework  http://framework.zend.com/
■php | architect   http://www.phparch.com/
■Smartyマニュアル http://smarty.php.net/manual/en/
■PECL本家(英語) http://pecl.php.net/
0004nobodyさん2007/08/25(土) 22:14:00ID:???
【簡易FAQ】
1.文字コードは何を使えばいいの?
 →1.UTF-8 2.EUC-JP のどちらか。迷うようなやつはShift_JISは使っちゃダメ。
2. このスレに書き込むときに自分のサイト名を晒したくない
 → http://example.com/が例文などのために予約されている。hogehoge.comは使っちゃダメ。
3. ブラウザに何も表示されないんだけど・・・
 → Apacheの設定を見直せ。ファイルの拡張子は何にしてて、その拡張子でPHPを呼ぶようになっているか?
4. 記号の意味がわからないけどググりようがない
 → 「@」 エラー表示を抑制、「->」 オブジェクトのメンバにアクセス、「::」 静的なメソッド呼び出し、
  「==」は暗黙の型変換をしてゆるい比較、「===」は型情報も含めた厳密な比較
5. echo "$arr['hoge']['fuga']"; と書いたらエラーになった
 → {おっぱい括弧}でくくって"{$arr['hoge']['fuga']}"にする
6. 一定時間ごとに自動的に何かしたいんだけど
 → cronかタスクスケジューラを使え。
7.extractって危険なの?
 →変数上書き&初期化忘れなどで危険。楽だからという理由だけで安易に使わない。
8. include/requireに「〜.php?a=b&c=d」のようなパラメータをつけたい
 → URL呼び出しなら可能だけど、普通のファイル呼び出しではできません
9.include/requireでURLを指定しても何も起きない
 → .phpの拡張子のファイルをURLで呼び出すと、1度PHPプログラムとして実行された結果になる。
0005nobodyさん2007/08/25(土) 22:14:30ID:???
10. そもそもインストールの時点でうまくいかない
 → 確認すべきはPHPのconfigureの引数、php.iniの内容と置き場所、
  Webサーバの設定(Apacheならhttpd.conf)、起動&再起動あたり
11. SQLの質問はどこで?
 → データベース板に誘導されるのが嫌ならPHPにうまく関連させて質問する
12. 文字列のなかに、英字のみとか数字のみとか記号が入っちゃいやんとかはどうしたらいいの?
 → ctype_〜()が手軽。複雑なパターンはpreg_〜()あたりで正規表現を使う。
13. $a1, $a2, $a3 ... のような変数名をうまく扱いたい
 → 可変変数で実現できるけど、むしろ配列を使って$a[1], $a[2], $a[3]等とするのがベター
14. echoとprintってどう違うの?
 → よく議論される話題であるが基本的に両者とも同じ。 以下ちょっとした議論。
  http://www.faqts.com/knowledge_base/view.phtml/aid/1/fid/40
15. クッキーの情報をユーザから隠したい
 → セッション使え。ただしクッキーとセッションは仕組みが違うから同じように扱うな
16. strip_tags()で削除しないタグを複数指定したい
 → strip_tags($html, '<a><p><font>'); // htmlspecialchars()も検討すべし
17. CSVやTSVのファイルをスマートに扱いたい
 → まずはfgetcsv()。ただし日本語を含むと正常に動作しない場合があるので注意だ。
18. 値渡しと参照渡し(「&」を使う)のパフォーマンスの違い
 → C言語じゃないので、パフォーマンス目的で使いわけたらダメ。参照渡しにすると逆に遅くなったりする
  参照渡しは引数に戻り値を設定したり引数を関数内で変更するなど、正しい目的に使うこと
19. ファイル入出力関数(fopen等)でリモートファイル(http://〜とか)を扱う際の限界
 → fsockopen()でソケット通信 or PEARのHTTP系 or CURLで解決
  必要ならHTTPをはじめとする各種プロトコル(どんなデータを送受信するか)はRFCなどで調べる
20. PHPからPOSTリクエストしたい
 →19.を参照
21. 画像処理一般 or GDの限界
 → ImageMagick(PECLのやつ or シェルから実行)
22. 画像・音・動画はファイルで保存?DBに保存?
 → 好きにしてください
0006nobodyさん2007/08/25(土) 22:59:16ID:???
--- ──ァ- 、
     /:.:./::>、
   /:.:.:.:/::/_ノヾ
,   /:.:.:.:/''´  0′',       下らねぇ質問は
:\{|:.:.:.:.i}      レ^)     ここに書き込みやがれ
::l:::{|:.:.:.:.|}       〔       ですぅ
::l:::{|:.:.:.:.|}      人_) \ -、
::l:::{|:.:.:.:八    /     (__丿
0007nobodyさん2007/08/25(土) 23:03:13ID:???
>>10
0008nobodyさん2007/08/26(日) 00:52:00ID:???
コウノトリの赤ちゃんは誰が運んでくるんですか?
0009nobodyさん2007/08/26(日) 10:38:16ID:???
>>8
親コウノトリが運んできます。
0010nobodyさん2007/08/26(日) 10:41:18ID:???
XAMPPを使って自分のパソコンでPHPを実行してるんですが、fopenなどのファイル操作関数を使うとエラーになってしまいます。
permission errorと表示されてるんですが原因がわかりません・・

0011nobodyさん2007/08/26(日) 12:17:00ID:???
>>10
読んだままってこった
0012nobodyさん2007/08/26(日) 16:47:23ID:QJUdjxQZ
MySQLにデータを追加する時、
$values = "'$data1', '$data2', ... , '$dataN'"; // ココの記述がスマートでない
とした後に、
mysql_query("insert into table_name values ($values)");
としなければならないのですか?
もっとスマートな記述(例えば配列を使ってクエリを送信する方法)をご存知の方、宜しければご教示ください(人∀・)
0013nobodyさん2007/08/26(日) 17:16:14ID:???
>>12
配列で入ってんなら
$values = "'".inplode ("','",$vArr)."'";
でいいんじゃね
0014nobodyさん2007/08/26(日) 17:17:58ID:???
変数の型は全部CHAR?
0015nobodyさん2007/08/26(日) 18:03:04ID:QJUdjxQZ
>>14
いえ、NULLやINTも混ざっています。
それらを連結する関数を自作するしかないのでしょうか\(^o^)/
0016nobodyさん2007/08/26(日) 19:24:32ID:OJlTW9jg
すいませんcgiについておしえてください。
phpをcgiで動かす場合、perlみたいにhtmlのヘッダとかも送信しないとダメですか?
0017nobodyさん2007/08/26(日) 21:25:54ID:???
>>15
抽象化レイヤ
0018nobodyさん2007/08/26(日) 22:17:32ID:???
>>16
やってみてから質問してくださいといいたいところだけど
送信しなくてOK
0019nobodyさん2007/08/26(日) 22:38:50ID:???
>>16
特に必要ありません。必要ならheader()で生ヘッダを出力。
あとcli版をcgi用に使っている場合、こちらはcgi版違い生ヘッダの出力が必要。
(昔のバージョンではcliなのにヘッダが出力されてることもあったけど)
0020nobodyさん2007/08/27(月) 00:12:56ID:???
改行コードは何を使えばいいんですか?
0021nobodyさん2007/08/27(月) 00:14:23ID:???
\n
0022nobodyさん2007/08/27(月) 05:38:29ID:SYysa4Rs
ある配列が、
連想配列なのか、普通の配列なのかを調べる方法を
教えてください
0023nobodyさん2007/08/27(月) 05:46:22ID:???
>>22
if( is_numeric(implode('', array_keys($arr))) ) {
 echo "普通";
} else {
 echo "連想";
}
とか…?
0024nobodyさん2007/08/27(月) 06:05:19ID:???
print_rやvar_dumpして見極める!
0025nobodyさん2007/08/27(月) 09:20:02ID:???
連想配列と普通の配列って区別あんのか疑問だったんで試してみた。
# cat test.php
<?php
$arr[0] ='foo';
$arr['0']='bar';
print '$arr[0] = ' . $arr[0] . "\n";
print '$arr[\'0\'] = ' . $arr['0'] . "\n";
?>

# php test.php
$arr[0] = bar
$arr['0'] = bar

よって普通の配列は、ない。
0026nobodyさん2007/08/27(月) 09:22:07ID:5Ot+aWgg
キーはハッシュ化される
0027nobodyさん2007/08/27(月) 09:42:39ID:???
配列のキーが全部数字なら配列
0028nobodyさん2007/08/27(月) 09:43:10ID:???
普通の配列も連想配列も同じ実装になってることはマニュアルで明記されてる。
だから
$arr[3] = 'a';
$arr[2] = 'b';
$arr[1] = 'c';
みたいに1個ずつセットした配列をforeachで頭から取り出すと、
a b c と添え字順ではなくセット順で取り出されたりする。

ただ、sortとか使った際にインデックス順だけじゃなくキーも数字で振り直される等、
意識して処理を使い分けないと困ってしまうケースってのはあるんだよな。
0029nobodyさん2007/08/27(月) 10:09:43ID:ICxB7mvC
PHP使用者にとってライブラリってどのくらいの頻度で使います?
下記サイトを参考にしたところ色々なライブラリがありました。
ttp://lss.eternity.ne.jp/new/class.php?513

よく使うライブラリや使用目的など教えていただけたらと思います。
0030nobodyさん2007/08/27(月) 10:12:36ID:???
そりゃ当然そのとき作るシステムによるだろ
0031292007/08/27(月) 10:16:39ID:ICxB7mvC
有難うございます。
そうですよね、使わないはずないですよね・・・。

新しい質問ですが、
携帯サイトでSNSを製作するときに何か便利なライブラリなどはありませんか?
OpenPNEを改造するよりは一から作ってみたいのです。
PEARで携帯の機種判別はありますが、他に何か便利なのを探しています。
0032nobodyさん2007/08/27(月) 14:20:57ID:???
画像を投稿する処理を作っていて
thumbnail.inc.php を使用してサムネイル画像も生成してます。

その記事が削除された場合に、投稿画像とサムネイル画像を
削除しようとするのですが、なぜかサムネイル画像だけが削除できません。

サムネイル画像だけがis_fileにもひっかからないし
unlinkしようとしても、ファイルが無いと言われます。

でもFTPで確認すると存在しますし、パーミッションも両画像とも664で同じですし
ブラウザで確認しても、サムネイル画像は表示できます。

FTPからだと削除できます。

これって、何が原因なんでしょうか?

よろしくお願いします。
0033322007/08/27(月) 14:27:26ID:???
32ですが1も読まずに質問してすみませんでした。出直してきます。
0034322007/08/27(月) 14:33:38ID:iThHKhO2
あ、すみませんでした...

Linuxでapache、PHP4です。

連投すみません。

よろしくお願いします。
0035nobodyさん2007/08/27(月) 14:46:21ID:IOt3tJBu
配布されている簡単なPHPを自鯖に設置しようとしている者ですが
PHPのタグを入れる時、例えば
<script language="javascript">
<!--
document.write('<img src="***************.php?ref='+document.referrer+'" width="1" height="1">');
// -->
</script>
のような場合、最低このタグを何行まで縮めることが出来ますか?
(// -->←こういうのは改行無しにしたら正常に動かなくなってしまうのでは無いかと思ったので…)

>>1にあるサイトさんの
>改行に関する注意: HTML においては改行にはほとんど意味がありません。
>ただ、 HTML の見栄えをよくするためにも適宜改行を入れておくとよいでしょう。
>?> の直後の改行は、PHP によって取り除かれます。
>複数の PHP ブロックを使用している場合や、 何かを出力するのかどうかがわからないファイルを include する際などに、 この挙動は非常に便利です。
>と同時に少々混乱するかもしれません。
>強制的に改行させるには、?> の後に空白を置くか、 あるいは PHP ブロック内の最後の echo/print で明示的に改行を出力します。

こちらを読みましたが、これはつまり改行は見やすくするためのもので
改行はしなくても良い、ということで良いのでしょうか…?
0036nobodyさん2007/08/27(月) 14:47:40ID:???
>>35
<?php
require_once('******.php');
?>
0037nobodyさん2007/08/27(月) 14:47:59ID:5Ot+aWgg
>>35
\r\nでも使えば?
0038nobodyさん2007/08/27(月) 14:48:03ID:???
>>32
ソース出して
0039nobodyさん2007/08/27(月) 14:58:46ID:???
>>36
ごめんなさい、phpなどスクリプトの知識が全く無いので
伝えようとして下さる意図が分からないです、すみません…
でも、それは基本的な公式ですよね、分かるように調べてきます
>>37
改行の代わりとなるものがあるのですね、参考にしたいと思います
お二方アドバイスありがとう御座いました!
0040nobodyさん2007/08/27(月) 15:09:23ID:???
>>37
は?
0041322007/08/27(月) 15:15:43ID:???
>>38
こんな感じで処理しています(関係あると思われる部分のみ抜粋してます)
include('thumbnail.inc.php');
// 画像アップロード処理
$dest = $path.$up_file_name;
move_uploaded_file($up_file, $dest);
// サムネイル画像を作成(ファイル名_thunb)
createThumbnail($path,$file,$ext);
サムネイル作成部分
function createThumbnail($file_path,$file_name,$file_ext) {
$thumb = new Thumbnail($file_path.$file_name.$file_ext);
$thumb->resize(160,160);
$file_name = $file_path.$file_name."s".$file_ext;
$thumb->save($file_name,100);
}
// ファイル確認or削除部分
if(is_file($path.$dfile)) unlink($path.$dfile);
if(is_file($path.$dthunb)) unlink($path.$dthunb);

確認or削除の部分の上の行はファイルあると判断し削除します。2行目のはファイルが無いと判断されて、削除処理に行きません。ためしに、
if(is_file($path.$dfile)) {
unlink($path.$dfile);
unlink($path.$dthunb);
}
と、やるとunlink($path.$dthunb);の行で
Warning: unlink(/home/hogehoge/img/1188194003s.jpg ) [function.unlink]: No such file or directory in /home/hogehoge/hoge.php on line ***
とエラーが出ます。
結果はオリジナル画像は消えてますが、サムネイル画像は残ったままになります。
ちなみに変数の中身は、echo等で途中で出力したりしてチェックしたので
空とかファイル名がおかしい等は無かったです。
サムネイルファイルの存在チェックや削除処理が上手く行かない以外は
問題なさそうですので、やっぱサムネイル作成処理の何か足りないのかな...と思ってるんですが。よろしくお願いします。
0042322007/08/27(月) 15:17:05ID:iThHKhO2
すみません、またsageちゃいました。。。
41は32です。
0043nobodyさん2007/08/27(月) 15:22:20ID:???
>>32
>thumbnail.inc.php を使用してサムネイル画像も生成してます。
おかしいな公開してない筈なんだが...
貴方はスパーハカーですか、いつ私のPCから持ち出した!

つか同じファイル名を採用してるのなんてザラなんだから
出所が何なのか示そうよ。
0044nobodyさん2007/08/27(月) 15:24:21ID:???
宣伝か・・・
0045nobodyさん2007/08/27(月) 15:27:05ID:???
うん自分の立場だけで回答者側のこと全然考えてないよね。
まぁスルーして自分で検索して調べたけど。
0046322007/08/27(月) 15:32:40ID:iThHKhO2
あれ?なんか変なことしてたんでしょうか?

php サムネイル で検索して

http://www.gen-x-design.com/projects/php-thumbnailer-class/

に行きつきまして。

そこから thumbnail.inc.php をダウンロードしてみたのですが..
0047nobodyさん2007/08/27(月) 15:37:08ID:???
人の立場になって物考えられないってよく言われない?
0048nobodyさん2007/08/27(月) 15:45:49ID:???
>>46
だから俺の書いた「thumbnail.inc.php」だと、そんな問題ないよ。

>>41
createThumbnail($path,$file,$ext);
$dtf = $path.$file."s".$ext;
if(is_file($dtf)) unlink($dtf);
作ってすぐ消してみ
0049322007/08/27(月) 16:00:50ID:iThHKhO2
>>48
サッパリわかってないのですが
ダウンロードしちゃいけない、もしくは非公開のをダウンロードしちゃってたとかなんでしょうか。
すみません。

ちなみに作ってすぐ消してみましたが
やっぱり消えませんでした。
エラーも出なかったので、is_fileで引っかかってない感じだと思います。
0050nobodyさん2007/08/27(月) 16:09:58ID:???
どう考えても釣り、でなければどちらも間抜け
0051nobodyさん2007/08/27(月) 16:12:47ID:???
HTML_QuickFormつかったら全部テーブルタグワロタ
0052ミューズイングリッシュ2007/08/27(月) 16:17:49ID:???
みなさんこんにちは
小さな英会話教室をしていて、ホームページを作っています。
そこでスケジュールカレンダーをphpで、できるとのことだったので、
友人からもらったプログラムをリンクさせましたが、
ログインすると、
Parse error: parse error, unexpected T_STRING in /www/a-mail/muse-eng.jp/public_html/schedule/Calendar.class.php on line 85

と、このようにでます。
ド素人なのでプログラムの書き換えもわかりません。
デザインは出来ていています。
phpプログラムを見て適正に修正して頂ける方探しています。
もちろん謝礼贈呈します。予算がないので10,000円で考えていますが、
お力添えいただける方、宜しくお願いいたします。
対象のホームページ www.muse-eng.jp
ご連絡先メールアドレス aimaniajp@yahoo.co.jp
宜しくお願いいたします。
0053nobodyさん2007/08/27(月) 16:25:59ID:???
>>52
糞ワロタwwwwwwwwwwwwwww
0054nobodyさん2007/08/27(月) 16:28:36ID:???
よく見るといろんなスレにコピペしまくってる、笑えなくなった
0055ミューズイングリッシュ2007/08/27(月) 16:36:11ID:???
53,54の方へ
真剣なのでお願いします。
0056nobodyさん2007/08/27(月) 16:37:09ID:???
>>55
マルチしておいて「真剣」?
自分が何をしているのか知ってるの?
0057ミューズイングリッシュ2007/08/27(月) 16:39:46ID:???
よくわかりませんが、ホントにあてがなかったので...
ご迷惑だったなら無視してください。
すみませんでした
0058nobodyさん2007/08/27(月) 16:40:00ID:???
>>52
典型的なメールアドレス収集のためのマルチスレじゃんww
大量に引っ掛けたいなら、細々スレとか行けよw
0059nobodyさん2007/08/27(月) 16:41:34ID:???
>>57
迷惑だったら無視?
お前人間間違ってるぞ
0060ミューズイングリッシュ2007/08/27(月) 16:47:10ID:???
普通に困っていただけです。
そして普通の女です。
よくわかっていないだけです。
そこまで言わなくてもいいじゃないですか
0061nobodyさん2007/08/27(月) 16:48:30ID:???
>>58が正解だったわwwwwwwwww
0062nobodyさん2007/08/27(月) 16:48:34ID:???
なんでその友人に聞かないの?
0063ミューズイングリッシュ2007/08/27(月) 16:54:14ID:???
全く連絡が取れません。
だから困っているのです。
0064nobodyさん2007/08/27(月) 16:56:32ID:???
>>52
2ちゃんねる自体始めてのようだから
まずは2ちゃんねるのお約束をよもうね♪
0065ミューズイングリッシュ2007/08/27(月) 16:57:13ID:???
解決しました
0066nobodyさん2007/08/27(月) 16:58:53ID:???
お金の代わりに授業料ただにしてくれるなら引き受けます。
0067nobodyさん2007/08/27(月) 17:10:37ID:???
>>60
>そして普通の女です。
誰も、男か女か聞いていないのに、なぜ女だと主張するの?
0068nobodyさん2007/08/27(月) 17:10:41ID:Dd+D38dK
例えばsitemap.xmlのように
<loc>〜</loc>で囲まれたurlのみを抜き出すのは何を使えばいいのでしょうか?
0069nobodyさん2007/08/27(月) 17:12:17ID:???
>>68
urlのみってどういう意味?
<loc>テスト</loc>
だったら「テスト」を抜き出したいってこと?
だったら

preg_match
0070nobodyさん2007/08/27(月) 17:32:15ID:???
例えばsitemap.xmlのように
って知るかよ、んなxmlファイルw
0071nobodyさん2007/08/27(月) 17:58:53ID:XzEqAL1W
yum install phpとやってphp5.1.6をインストールし、
その後yum install php-mysqlとやったのですが、
phpinfo()すると--without-mysqlとなっています。
これを有効にするにはどうしたらいいでしょうか?
0072nobodyさん2007/08/27(月) 18:01:11ID:???
>>70
>例えばsitemap.xmlのように
>って知るかよ、んなxmlファイルw

sitemap.xmlのフォーマットを知らないで威張っている奴がいるなw
メジャーな検索エンジンが対応しているのに。

馬鹿丸出し。
0073nobodyさん2007/08/27(月) 18:03:18ID:???
>>71
remove
入れなおす。

>>72
使わん奴はしらんだろ
お前は全知全能の神かw
0074nobodyさん2007/08/27(月) 18:06:24ID:???
>>73
>使わん奴はしらんだろ
>お前は全知全能の神かw
使う使わないは別に、だいぶ前に話題になった話だが。
0075nobodyさん2007/08/27(月) 18:10:31ID:???
>>72
ほう、それはどこの標準化団体が定めた仕様なんだ?
それは"sitemap.xml"という一般名詞なのか?
俺が適当に書いたsitemap.xmlはsitemap.xmlではないのか?
特定の形式で記述されたxmlファイルを検索エンジンが「対応」してるだけだろ。
つまりはそういうこと。
馬鹿丸出しはお前だ。
0076nobodyさん2007/08/27(月) 18:11:29ID:???
日記のスクリプトを作りたいとおもっているのですが、
ログファイルは、今のところひとつのファイルにまとめて、
file_get_contentsで一気に読み込んで分割して表示
という方法しか思い浮かびません。
この方法ではログが多くなったときに重くなりそうなので、
何かほかにログ保存&読み込み方法があれば教えていただけませんか?
0077nobodyさん2007/08/27(月) 18:13:32ID:???
>>76
ファイル形式にこだわるなら月別に纏めるという手もあるよ
火別にまでするのはどうかと思うけどindexを作れば問題ないかな
0078nobodyさん2007/08/27(月) 18:14:39ID:???
>>75
お前は必死すぎwww
そういう屁理屈で自分の無知を誤魔化すやつは実務では使いものにならない典型。
0079nobodyさん2007/08/27(月) 18:15:22ID:???
>>77
月別というやり方がありましたか…
ありがとうございます。それでいこうと思います。
0080nobodyさん2007/08/27(月) 18:30:52ID:C5rbwAW+
俺もsitemap.xmlとか知らない
自作?自作ならニュース配信しか作ったことないや
0081nobodyさん2007/08/27(月) 18:45:33ID:???
sitemap.xmlなんて初耳だったので調べてみた

https://www.google.com/webmasters/tools/docs/ja/protocol.html
これのことだよな?テケテケテッテッテー知識が1増えた

>>78
釣れますか?
0082nobodyさん2007/08/27(月) 18:52:27ID:???
Cakeスレで以下のようなレスを見たのですが

>> secureな方のcookieにhttpのsession id情報持たせておけば基本的に終わりじゃん
>違うぞ。セキュリティの勉強をしたほうがいい。

>Amazonとかみればわかるように、商品をカートに入れるまではhttp
>そのあと会計時はhttps。つまり一連の処理がhttpsだけで完結する処理ではない。

>セキュアな方のクッキーにセッションIDを持たせた場合、
>それをhttpで送ると盗聴されセッションハイジャックできてしまう。

>だからhttp用ととhttps用と二つのセッションIDを使用することになる。
>そしてサーバー内でその二つを紐付けしておかなければならない。
>もちろんhttp用セッションIDは盗聴される可能性があるから
>それを奪われても、その情報だけからhttps用セッションIDを取得できてはいけない

httpとhttpsを行き来する場合、それぞれ2つのセッションIDを作って、
裏で紐付けするのが一般的なのでしょうか?
0083822007/08/27(月) 18:56:39ID:???
追記。
さらに、HTTPSからHTTPへ行きながらセッションを継続させる場合は、
セッションIDをPOSTで送らないと意味がないですよね?
0084nobodyさん2007/08/27(月) 19:01:18ID:???
>>82
はじめからhttps使えば良いのでは・・・
でなければ鯖にhttpセッションID名の別ファイルを作っておいてhttpsセッションIDと関連付けとくとか
008571 2007/08/27(月) 19:06:01ID:XzEqAL1W
removeしてからもう一度installしましたがダメでした。
なにかヒントはないでしょうか?
php.iniの設定でしょうか?
0086822007/08/27(月) 19:09:02ID:???
>>84
そういわれてみればそうですね。
全てをhttpsにした場合に起こる弊害ってあるんですかね?
0087nobodyさん2007/08/27(月) 19:16:10ID:???
>>85
yum remove php php-mysql
yum install php php-mysql
同時または先にmysqlを入れてないとダメですよ?
--without-mysqlはmakeの段階なのでiniを弄ってどうにかなるものではありません。
今、手元に犬がないから確かめれない。他に何かあったっけ?>ALL

>>86
負荷がかかるくらい
0088nobodyさん2007/08/27(月) 19:25:58ID:Dd+D38dK
>>80
例えばなのでsitemap.xmlじゃなくてもいいのです。
<a href="http://example.com";>このぶぶん1</a>
<a href="http://example.com";>このぶぶん2</a>
<a href="http://example.com";>このぶぶん3</a>
などで、「このぶぶん1〜2」だけを抜き出したいのですが。
0089nobodyさん2007/08/27(月) 19:30:59ID:UW8c1qdS
質問です。
SQLのLIMITみたいなものをファイル操作で行いたく
指定した行から何行取得する関数を作りました。

function read($file, $start, $end){
  $fp = fopen($file, "r");
  flock($fp, LOCK_EX);
  $pos = $l = 0;
  $line = array();
  while(count($line) != $end){
    $c = "";
    $pos = ftell($fp);
    while($c != "\n"){
      $c = fgetc($fp);
    }
    if($l >= $start){
      fseek($fp, $pos, SEEK_SET);
      $line[] = trim(fgets($fp));
    }
    $l++;
  }
  return $line;
}

正常に動作はするのですが、1バイトずつデータを読み込んで行く為
ファイルサイズが膨大になれば遅くならないかな?と思っています。
何か他にいい方法があればご教授お願い致します。
0090nobodyさん2007/08/27(月) 19:36:18ID:???
>>88
>>69で回答されておりますがな
0091nobodyさん2007/08/27(月) 19:36:42ID:???
>>89
ないのでは?
しいて言うならfile関数で全行を一度配列にほりこんで
配列番号で該当区間を取得するとか・・・
0092nobodyさん2007/08/27(月) 19:38:36ID:UW8c1qdS
>>91
file関数でやるのが手っ取り早いのですが、ファイルサイズがでかすぎると
メモリ関係のエラーが予想できますよね。
ですので、その方法は排除しました。
0093nobodyさん2007/08/27(月) 19:41:48ID:???
>>92
メモリエラーって何万行読み込ませるつもりだよ…
0094nobodyさん2007/08/27(月) 19:45:20ID:???
>>92
行単位で読む関数があるけど結局後ろの方を読もうとすれば遅くなります。
別プロセスを嫌うならsqliteなどを検討してみるのも悪くないかもね。
0095nobodyさん2007/08/27(月) 19:45:30ID:UW8c1qdS
>>93
今回、使用する上ではいいとこファイルは10M程度だと思います。
ファイルを操作するクラスを作成しているので、あくまでこれから先を考えての話です。
0096nobodyさん2007/08/27(月) 19:52:44ID:X39h0Mb6
$mlto = "xxxxxxxxx@nifty.com";
$mlfr = "From: " . mb_encode_mimeheader("あああ<test@hoge.com>");
mb_send_mail($mlto,$mlsb,$mlms,$mlfr);

上記のようなFromに全角文字を含み、且つniftyドメイン宛に
メール送信を行うと、受信者側では、Fromヘッダが

あああ<test@hoge.com>@nifty.com



あああ<test@hoge.com>@Return-Pathの@以下

といった形で送信されてしまいます。

環境1:
ロリポのレンタルサーバ
OS:Linux
Server:Apache
PHP:4.4.6

環境2:
自前のサーバ
OS:Win2003Server
Server:IIS
PHP:5.2.3

上記2つの環境で試しても同じ結果になりました。

niftyドメイン以外への送信は問題ないのですが、
何が問題として考えられますでしょうか。
ちなみに、niftyに問い合わせても回答はもらえませんでした。
0097nobodyさん2007/08/27(月) 19:56:29ID:UW8c1qdS
>>95
元々、PHP5+MySQLで作成していた問い合わせシステムなんですが
クライアントの都合により、サーバーの環境が変えられないらしく
PHP4+ファイル操作に直してくれと、要望があったんですよね…

SQLiteは自分も検討したのですが、クライアントの環境の詳細が分からないので
やめたほうが無難かなっと考えました。

>行単位で読む関数があるけど結局後ろの方を読もうとすれば遅くなります。
やはりこれはしょうがないと割り切り素直に作成した関数で乗り切ろうと思います。
0098nobodyさん2007/08/27(月) 19:57:08ID:UW8c1qdS
↑アンカーミスです。

>>95

>>94
0099nobodyさん2007/08/27(月) 19:59:45ID:???
>>97
表示の仕方によるけど削除等で空ブロックを作る事を前提とするなら
ID等から複数のファイルに分割して読み込み速度を向上させる事は
可能ですね。
0100nobodyさん2007/08/27(月) 20:03:53ID:???
>>95
そんな先の事考えるなら先にファイルの分割や
DBの利用を検討するような方向のほうがいいんじゃないの?
0101nobodyさん2007/08/27(月) 20:22:24ID:???
>>95
ファイルが極端にでかくなったら、PHPでいくら必死に頑張っても
素直にシェルでheadとtailを繋いだ方が速かったりするよ。
いっそCで書いてPECL拡張で使えるようなもの作んなきゃ。
0102nobodyさん2007/08/27(月) 21:21:19ID:???
78ですが、日記スクリプトの制作でもうひとつ質問が・・・
月単位でログを保存しているのですが、
ログ月の移動の為に簡単なカレンダーを表示して、その月のログが保存されている所だけをリンクしたいと思っています。
2007 01 02 03 04 05 06 07 08 09 10 11 12
上のようにしたいのですが、
「一つ一つログの存在をfile_existsで確認して、trueの場合だけリンクを出力する」以外に方法はないでしょうか?
file_existsの負荷が心配で・・・どなたか教えてください。
0103nobodyさん2007/08/27(月) 21:23:02ID:???
「作ったときにどっかに作ったことを記録しとく」
0104nobodyさん2007/08/27(月) 21:24:03ID:???
>>103
何度もすみません。
ありがとうございます。
0105nobodyさん2007/08/28(火) 00:04:08ID:???
長い文字列を短くする関数ってありませんでしたっけ?
どこかで見た覚えがあるのですが、忘れてしまって…
01061052007/08/28(火) 00:04:31ID:ed8362dv
すいません、ID出し忘れです。
0107nobodyさん2007/08/28(火) 00:19:42ID:???
短くするっていうか部分をカットするっていう感じでいいならsubstr
0108nobodyさん2007/08/28(火) 02:26:09ID:???
ばかじゃねえのsubstrじゃええよバカだね。
ほんとにレベルひくいな
0109nobodyさん2007/08/28(火) 02:32:07ID:VJugMAtZ
嫌な奴>>108
0110nobodyさん2007/08/28(火) 02:34:27ID:???
>>108
煽るだけしかできないカスは黙ってろ
ていうかそうおもうなら自分で答え言えばいいだろ
0111nobodyさん2007/08/28(火) 02:37:35ID:???
まぁまぁそう熱くならずに、自分のおならの臭いを嗅いでエクスタシー感じようよ。
0112nobodyさん2007/08/28(火) 02:45:05ID:???
少ないヒントで答えを出そうとする>>107のエスパーぶりは評価しないとな
0113nobodyさん2007/08/28(火) 03:00:00ID:???
>>110が答えてあげればそれで終わる。
0114nobodyさん2007/08/28(火) 03:03:52ID:???
>>113
時間ぴったり
0115nobodyさん2007/08/28(火) 08:29:23ID:oYOChStQ
おかしな事になっているので
お暇な方いたらちょっとお付き合いください。

OOPの勉強していて、あるプログラムを作ってみたのですが
エラー表示が出ずに
http://www.gomo.jp/exp/ref_logger.php
「表示が出きません。サーバーが見つからないか、DNS エラーです。」という画面
(たぶん他の方もそう見えると思うのですが、うちではこのページはそういう画面です。)になります。

このプログラムがなぜ動かないかはさておき、なぜエラーじゃなくこういう画面になるのでしょうか?
以前にも別のサーバーで同じような状態になり、デバッグに非常に手間取ったことがあります。
その時はたしか、存在しないファイルをrequireしていたのか、存在していないクラスをnewしてたとか、そんな感じの間違いだった思います。

くどいようですけど、いちおう確認のため・・・
私が疑問に思っているのは、このソースがなぜ動かないかではなく、なぜエラー表示が出ないかです。

ちょっと恥ずかしいけどソースさらします。
http://www.gomo.jp/exp/ref_logger.txt

お願いいたします。
0116nobodyさん2007/08/28(火) 08:53:43ID:???
>>115
うちの環境でも動かないから大丈夫w
ループして落ちているようにしか見えませんよ
0117nobodyさん2007/08/28(火) 09:24:43ID:???
>>115
エラーメッセージが出るような間違いをしてれば画面も出るだろうけど、
何も表示せずに終わってしまうようなバグも多いよ。
バグってのは必ずしもエラーとは限らない。
(ロジックミスとかは、エラーではなく変な動きのまま正常終了してしまう)
その場合、出力が空っぽのためブラウザが認識できず
相手先のサーバーが繋がってないようだ、と誤認識される。

むしろ
> その時はたしか、存在しないファイルをrequireしていたのか、存在していないクラスをnewしてたとか、
このケースでメッセージが出てこないってのが不思議。
php.iniでエラー出力を「なし」に設定してたんじゃあるまいな?
0118nobodyさん2007/08/28(火) 11:40:28ID:/qxtkLLI
変数$nameに

AAA_○○○
AAA_○○○_BBB
AAA_○○○_BBB_CCC
AAA_△△△
AAA_△△△_BBB
AAA_△△△_BBB_CCC

のような文字列が格納されている時、○○○や△△△の部分のみを取り出すにはどのような記述をすれば良いですか?
preg_match('/AAA_(\w+)/', $name, $matches);
ここまでは考えたのですが、その先が思いつきません。
宜しくお願いします。
0119nobodyさん2007/08/28(火) 11:44:43ID:???
$a = explode('_', $name);
echo $a[1];
0120nobodyさん2007/08/28(火) 11:46:09ID:???
AAA_(\w+).*
0121nobodyさん2007/08/28(火) 12:00:05ID:/qxtkLLI
お二方、ご回答ありがとうございます。
わざわざ正規表現を使わなくても良かったんですね^^;
01221152007/08/28(火) 12:20:51ID:oYOChStQ
>>116
>>117
レスありがとうございます。
エラーは全部出るようにしています。

ループして、PHPが何もヘッダーを送らずダウンしたってことでしょうか?
不正終了したときもエラーを出すように設定できないものでしょうか?
何かしらヒント出してくれると、デバッグも楽なのですが。

> その時はたしか、存在しないファイルをrequireしていたのか、存在していないクラスをnewしてたとか、
このケースは、勘違いでしょう。すいません。
いろいろな部分をコメントアウトして、やっと動いたのしか覚えてません。
何かをnewしてるとこあたりだったので勘違いしたんでしょうかね。
その時も、ループしてひたすらインスタンスつくりまくってたのかも。

今、マニュアル見てみたんですけど、staticなメンバーってstaticなメソッドからしかアクセス出来ないみたいですね
そこでエラー表示出してくれても良いような気もするけど
0123nobodyさん2007/08/28(火) 12:44:12ID:???
質問があります
本当にくだらないのですが、簡単なスクリプト(掲示板やカウンター)などを作られるときに、関数を沢山作って管理するほうですか?
参考にしたいので、よろしくお願いします。
0124nobodyさん2007/08/28(火) 12:46:04ID:???
ファイル入出力やフィルタリングは
外部ファイルにクラスを作って使い回していますが何か?
0125nobodyさん2007/08/28(火) 13:08:32ID:???
>>123
作っといたほうが楽
0126nobodyさん2007/08/28(火) 13:09:11ID:???
>>124
質問に質問をぶつけておまえ頭悪いだろ
0127nobodyさん2007/08/28(火) 13:13:10ID:???
まぁ、確かに関数より記録リソースの操作モジュールでも作っといたほうが色々楽だろうけどねぇ。
0128962007/08/28(火) 13:53:56ID:y77U9tuf
自己解決しました。

$mlfr = "From: " . mb_encode_mimeheader("あああ<test@hoge.com>");



$mlfr = "From: " . mb_encode_mimeheader("あああ") . "<test@hoge.com>";

とすることで正しくFromヘッダが送信されました。
niftyのメールサーバは何か特殊なんですかね・・・。
0129nobodyさん2007/08/28(火) 13:56:39ID:Vlzye/6Z
$data = array(
 array('id'=>1,'cnt'=>5,'title'=>'hoge'),
 array('id'=>2,'cnt'=>4,'title'=>'foo'),
 array('id'=>3,'cnt'=>0,'title'=>'bar')
);

こんな配列があったとしてcntの順にソートしたいのですが可能でしょうか?
どんな方法で出来ますでしょうか?
0130nobodyさん2007/08/28(火) 13:59:22ID:YkG/SsxW
>>4の簡易FAQの5ですが
print <<< DOC
<form method="POST" action="$_SERVER['SCRIPT_NAME']">
DOC;
のように他の文字列が隣接してないのにエラーが出てしまうのは、
どういう解釈がされるからなのでしょうか?

あと変数を波括弧で囲む時
{$_SERVER['SCRIPT_NAME']}
${_SERVER['SCRIPT_NAME']}
の2種類の書き方がありますがこの違いってなんなのでしょう?
0131nobodyさん2007/08/28(火) 14:24:19ID:GM5VT/dP
$format="%-s %-35s %-60s %-s";
printf($format, $a, $b, $c, $d);

1行目にある「%-s」や「%-35s」などにあるマイナス文字はどのような意味
なのでしょうか。
0132nobodyさん2007/08/28(火) 14:32:21ID:???
オプションの符号指定子。これは、 数値で符号 (- あるいは +) を使用するよう指定します。 デフォルトでは、数値が負の場合の - 符号のみが使用されます。 この指定子により、正の数にも強制的に + 符号をつけることができます。 これは PHP 4.3.0 で追加されました。
0133nobodyさん2007/08/28(火) 14:33:14ID:???
マニュアル読まないクズは市ね
0134nobodyさん2007/08/28(火) 14:35:54ID:???
>>129
cntでソート用の配列作ってarray_multisort( )
>>131
文字列の場合は-は左詰で表示
0135nobodyさん2007/08/28(火) 18:30:13ID:???
$sumの値がokでなければループ

while ($sum != "ok"){
..........
}

これでできないんですがどこがおかしいのでしょうか
01361352007/08/28(火) 18:32:18ID:???
すみません、>>1読むの忘れてきたのと、
マニュアルに載っていたのを見ていませんでした
出直してきますね
0137nobodyさん2007/08/28(火) 18:34:42ID:wOTpbT+K
フォームに\だけを書いてポストして
$_REQUESTを表示させると\\になります
この現象は何ですか
0138nobodyさん2007/08/28(火) 18:36:13ID:???
>>137
エスケープ
0139nobodyさん2007/08/28(火) 18:38:35ID:wOTpbT+K
>>138
これを中止させるにはどうすればいいですか?
0140nobodyさん2007/08/28(火) 18:40:05ID:???
>>139
エスケープを解除する関数
「PHP エスケープ」出てくるんじゃね?
0141nobodyさん2007/08/28(火) 18:45:15ID:???
>>139
PHP.INIのマジッククォートを停止させる
0142nobodyさん2007/08/28(火) 18:49:44ID:???
>>140-141
ありがとうございました
0143nobodyさん2007/08/28(火) 18:49:48ID:???
function en_stop($str)
{
$tmp=ereg_replace("[\][\]","\x5c",$str);
$tmp=ereg_replace("[\][']","'",$tmp);
$tmp=ereg_replace("[\][,]",",",$tmp);

return $tmp;
}
0144nobodyさん2007/08/28(火) 19:43:38ID:???
>>合ってるとオモ
動かないか?
0145nobodyさん2007/08/28(火) 19:44:29ID:???
>>135
0146nobodyさん2007/08/28(火) 19:44:51ID:???
内部コードutf8、pcサイトutf8、携帯サイトsjis
で運用しようと思っています。
この運用だと、ポストされるエンコードがsjisとutf8になりますよね
sjisだった場合は当然utf8に変換しないといけないのですが、
mb_detect_encodingは
携帯の絵文字が混ざった文章もちゃんとsjisと判定できるのでしょうか?
あるいはもっといい方法があれば教えて下さい
0147nobodyさん2007/08/28(火) 19:50:54ID:???
>>146
できる
0148nobodyさん2007/08/28(火) 21:27:05ID:???
まぁまぁ、そう熱くならずに自分のおならの臭いを嗅いでエクスタシー感じようよ
0149nobodyさん2007/08/29(水) 02:34:35ID:???
>>147
そうなんですか
絵文字はsjisの範囲内で実現してるんですね
ありがとうございました
0150nobodyさん2007/08/29(水) 06:42:45ID:uYM+HrXL
$test = "テスト";

$template = <<<_TMP_
テンプレートです。
タイトル:{test}
おしまい
_TMP_;

preg_replace('/{(.*)}/', '$$1', $template);

{hogehoge}を$hogehogeに格納されている値に置き換えたいのですが
何か良い方法はありませんでしょうか?

このやり方では、「$test」と出力されてしまいます
0151nobodyさん2007/08/29(水) 08:42:05ID:???
>>150
<?php
$test="テスト";
?>
テンプレートです。
タイトル:<?=$test;?>
おしまい
0152nobodyさん2007/08/29(水) 09:19:27ID:uYM+HrXL
>>151
早速のご回答ありがとうございます

「テンプレートです。
タイトル:{test}
おしまい 」
これは外部ファイルとして保存しておいて
呼び出してから文字列の置き換えを行いたいのです
0153nobodyさん2007/08/29(水) 09:25:27ID:bOc70w1/
拡張子phpにしてincludeでおk
0154nobodyさん2007/08/29(水) 09:54:17ID:uYM+HrXL
何度もすみません
詳しく言うと、アップーロードにて一般の方にテンプレをUPしてもらい
そのテンプレを元に作成したいのです
なので、拡張子はtxtがメインになると思います
0155nobodyさん2007/08/29(水) 10:17:47ID:???
>>154
アップロードしてもらって移動した時点で拡張子を変えればおk
0156nobodyさん2007/08/29(水) 10:18:17ID:???
>>154
指定先にファイルがあれば拡張子がなくてもincludeできる
0157nobodyさん2007/08/29(水) 10:51:00ID:???
>>154
preg_replace('/{(.*?)}/e', '$$1', $template);
0158nobodyさん2007/08/29(水) 11:06:55ID:???
>>154
外部のユーザからアップロードされたファイルをincludeして実行するという話を
本気にしてはダメだ。eスイッチも同様。

動的にやりたいならpreg_replace_callbackで。
そうでないなら preg_replace(//,array("hoge"),array($hoge)); とか。
0159nobodyさん2007/08/29(水) 11:14:14ID:???
>>148
理由は単純で殺人未遂だから。

おならには、硫化水素という有毒なガスが含まれていて、
量によっては即死する。
つまりおならによって人が死ぬことも理論的にはありえるわけで、
そのような殺人未遂行為(不可罰であるが)が、人から嫌がられるのは当然。
0160nobodyさん2007/08/29(水) 11:27:16ID:uYM+HrXL
>>157-158
ありがとうございます

preg_replace_callbackを参考に

$test = "aaaaaa";

$text = <<<_TEXT_
test
{test}
test
_TEXT_;

function getVar($matches){
$matches = trim($matches[1]);
global $$matches;
return $$matches;
}

$text = preg_replace_callback("/{(.*)}/","getVar",$text);

echo $text;

としてみると見事に解決しました。
0161nobodyさん2007/08/29(水) 12:08:32ID:???
Basic認証をしてアクセス管理をしているのですが、
ブラウザを閉じない限りログアウトできませんよね?
再度認証できる方法はないのでしょうか?

0162nobodyさん2007/08/29(水) 12:25:58ID:???
日本語でおk
あと>>1
0163nobodyさん2007/08/29(水) 12:29:31ID:???
すいません、やはりBASIC認証では無理みたいですね。
失礼しましたm(..)m
0164nobodyさん2007/08/29(水) 12:50:14ID:???
>>159
DHMOの危険性に比べたら、とてもとても
0165nobodyさん2007/08/29(水) 13:26:20ID:???
>>160
それでいいのなら別にいいのだけど、
その実装だとテンプレートをアップロードできる人が
変数を全部参照できることになるから注意してね。

つまり、$mysql_passwordにパスワードを入れとくとやばいとかそういうこと。
0166nobodyさん2007/08/29(水) 13:34:48ID:uYM+HrXL
>>165
ありがとうございます
特に重要なものは取り扱わないので大丈夫です
0167nobodyさん2007/08/29(水) 13:39:40ID:???
>>166
個人的にはテンプレート用の配列のみを置換するようにした方が便利だと思うよ。
$replaceStr['test'] を {test} に置き換えるとか。
0168nobodyさん2007/08/29(水) 17:24:45ID:???
ヒアドキュメントの中に関数(例えばif)などを入れて動作させることは可能でしょうか?
以下のようにやってみたのですが出来ないようです。

echo <<<EOF
I am <?php if($test == 1) {echo 'hoge'} ?>
EOF;
0169nobodyさん2007/08/29(水) 17:29:18ID:???
1はtrue
0170nobodyさん2007/08/29(水) 17:32:42ID:???
>>168
無理
0171nobodyさん2007/08/29(水) 17:40:06ID:???
>>168
echo は与えられた文字列を出力するだけ。
eval() なら出来る。
0172nobodyさん2007/08/29(水) 19:48:55ID:???
ヒアドキュメント内はすべて文字列として出力されちゃうんじゃない?
一度ヒアドキュメントを抜けないと無理だと思う
0173nobodyさん2007/08/29(水) 22:36:27ID:???
mysql_connect関数の第一個目のパラメーターはホスト名なんですが
ホスト名が無い場合は使えないんでしょうか
0174nobodyさん2007/08/29(水) 22:37:21ID:???
ひあどきゅめんとにはいるまえにいふなりなんなりへんすうをしょりして
ひあどきゅめんとないにへんすうをいれれば
ふつうにできるじゃん。
0175nobodyさん2007/08/29(水) 22:39:20ID:???
>>173
localhostか127.0.0.1でいいんじゃ。
0176nobodyさん2007/08/29(水) 22:47:26ID:???
>>174
さすが行政書士だなw
漢字も満足に書けないんだなぁwww
0177nobodyさん2007/08/29(水) 23:06:07ID:???
>>174
妊婦かよ!
0178nobodyさん2007/08/29(水) 23:18:35ID:???
>>175
そう書いておけばたしかに動くんです
そうしておきます
0179nobodyさん2007/08/30(木) 00:08:26ID:6umYOf5a
多階層のxmlのパースで困っています
domxmlを利用しています
このような感じです
<one>
<title>
<main>あ</main>
<man>
<blue>
<a>い</a>
<b>う</b>
</blue>
<pink>
<a>え</a>
<b>お</b>
</pink>
</man>
<woman>
<blue>
<a>か</a>
<b>き</b>
</blue>
<pink>
<a>く</a>
<b>け</b>
</pink>
</woman>
</one>


<two>
(↑の同じ構造)
</two>
01801792007/08/30(木) 00:12:36ID:6umYOf5a
このような多階層のXMLで、twoの要素を全て、変数に入れたいのです。
(配列ではダメです)

まずは、

$dom = domxml_open_file("xmlのURL");

$root = $dom->document_element();

$node = $root->get_elements_by_tagname('two');

みたいに書いたのですが、ここから効率のよい取得方法が分かりません。
自分で書いてみたプログラムは200行ぐらいになりました。。。

どなたかご教授ください。
0181nobodyさん2007/08/30(木) 01:27:14ID:???
utf8でhtmlソース吐く時って
BOMを付加するべき?しないべき?
0182nobodyさん2007/08/30(木) 01:32:25ID:???
つけてはいけない
0183nobodyさん2007/08/30(木) 01:34:41ID:???
つけてはいけないをつけてはいけない
0184nobodyさん2007/08/30(木) 01:40:21ID:uPaIz1km
携帯絵文字一文字だけでdetect_encodingしてみました
mb_detect_orderは("sjis, UTF-8, EUC-JP")
すると、utf-8で判定されたり、euc-jpで判定されたりしました

太陽(f89f):UTF-8
ATM(f8c9):euc-jp

これは「絵文字だけでエンコーディングを判定するのは無理ぽ」
ということでしょうか?
またshift-jisを最初に設定しているのにマッチしていないのが気になります
判定方法にバグでもあるのでしょうか?
0185nobodyさん2007/08/30(木) 01:51:22ID:???
>>184
絵文字は外字領域(SJISで未使用の範囲)を使ってるので
SJISコードとして判定されないのが正しいとオモ
0186nobodyさん2007/08/30(木) 02:44:58ID:???
preg〜ってなんて発音してる?
0187nobodyさん2007/08/30(木) 02:46:56ID:???
ぴーしーあーるいーれげっくす
0188nobodyさん2007/08/30(木) 02:54:56ID:cbvqe7SV
>>186
プレグ


csvファイル専用関数を使うメリットってありますか?
普通のファイル操作系の関数で全然問題ないのですが
0189nobodyさん2007/08/30(木) 03:04:22ID:???
>>176
sohoスレにかえれクズ
0190nobodyさん2007/08/30(木) 03:06:10ID:???
Perl Regexの略だよね?
そうだとおもうからpとregをわけてピーレグって読んでるけど
0191nobodyさん2007/08/30(木) 03:29:17ID:???
preg_matchのことを
プレグマッテと読んでるが
人それぞれだな
0192nobodyさん2007/08/30(木) 03:31:21ID:???
matchはマッチだろ・・・
0193nobodyさん2007/08/30(木) 03:35:43ID:???
プレグマッチ
プレグマッチアール(オールだがついついアールと読んでしまう
プレグリプレイス
01941862007/08/30(木) 03:57:17ID:???
プレグが多くて安心した
0195nobodyさん2007/08/30(木) 03:59:03ID:???
犯人はヤスw
0196nobodyさん2007/08/30(木) 04:37:15ID:cbvqe7SV
require_once('config.php');

で、

Warning: require_once(1) [function.require-once]: failed to open stream: No such file or directory
Fatal error: require_once() [function.require]: Failed opening required '1' (include_path='.;C:\xampp\php\pear\')

というエラーが出てしまいます。
「No such file or directory」はファイルがないということですが、同じフォルダにその名前のファイルが存在します。
他に何か思い当たることはないでしょうか・・・?
0197nobodyさん2007/08/30(木) 04:45:29ID:???
大文字小文字とかじゃねーのw
0198nobodyさん2007/08/30(木) 04:50:46ID:cbvqe7SV
すみません、超初歩的なミスでした
or die()ってできないんですね

返り血考えるの忘れてました
0199nobodyさん2007/08/30(木) 09:58:09ID:???
殺人事件キタコレ
0200nobodyさん2007/08/30(木) 10:01:26ID:???
>>199
>>195
0201nobodyさん2007/08/30(木) 10:18:40ID:3muSx8fZ
お願いします。

PHPである項目を、セレクトボックスでの選択か、もしくは
テキストボックスへの入力にさせたいのです。

つまり、セレクトボックスでの選択かテキストボックスに入力かが
されていればOKで、両方になにもない場合のみ「選択しろ」という
エラーメッセージを出したいのですが、どうしたらいいですか?

// 営業所コード
if($_POST['g_c'] == '') {
$err_u .= '[営業所コード]が未選択です。<br>';
}
// 営業所の名前
if($_POST['g_n'] == '') {
$err_u .= '[営業所の名前]が未入力です。<br>';
}

現在エラーメッセージを出させる記述はこうなっているのですが、
この場合はどちらかが未入力・未選択でもエラーが出ます。
[営業所コード] か、[営業所の名前] どちらかが選択・入力されていればOK
というようにはどうしたらいいのか、すみませんが教えてください。
0202nobodyさん2007/08/30(木) 10:24:45ID:???
||
0203nobodyさん2007/08/30(木) 11:00:36ID:Qqw8XwhJ
array_push()に関して質問なのです
array_push()はどんな利用目的で使うのが正しいのでしょうか?
マニュアルを見る限りarray_push()をつかうなら関数を呼ぶオーバーヘッダ
のない$array[] = のほうが良いとかいてありました。
02042012007/08/30(木) 11:03:53ID:3muSx8fZ
解決しました、&& でいけました。ありがとうございました。
0205nobodyさん2007/08/30(木) 11:15:13ID:???
>>203
自分でインデックス管理して最後尾に追加するなりのコードを
書くなら$array[] =...でいんじゃね。
0206nobodyさん2007/08/30(木) 11:17:27ID:???
>>203
pop, shift, unshiftと作ってpushも作らざるを得なかっただけなので使う必要なし
配列に配列を加えるときには使ってもいいよ
似たような関数にarray_merge( )もあるけどね
0207nobodyさん2007/08/30(木) 11:44:06ID:Qqw8XwhJ
>>205-206
ありがとうございます
0208nobodyさん2007/08/30(木) 13:30:39ID:???
>>184
SJIS-win
0209nobodyさん2007/08/30(木) 14:33:45ID:OWaQUMa6
ラフなログイン認証コードを書きたいのですが
basic認証よりはセッションで管理するほうがいいですか?
0210nobodyさん2007/08/30(木) 14:38:00ID:???
>>209
basic認証はログアウトがだるくなるからやめたほうがいい
0211nobodyさん2007/08/30(木) 14:47:36ID:OWaQUMa6
ありがとうございます。
セッション使うことにします
0212nobodyさん2007/08/30(木) 17:43:29ID:bLGc1mde
http://mu-tuyukusa.arekao.jp/
良ブログ ですか?
0213nobodyさん2007/08/30(木) 18:00:15ID:???
悪ブログ ですよ?
0214nobodyさん2007/08/30(木) 18:02:30ID:???
むしろゴミブクロ
0215nobodyさん2007/08/30(木) 18:30:42ID:???
PerlからPHPに現在移行をしております。

Perlの場合、日本語や絵文字を処理することを考慮し、例えばSJISで
画面を出力する場合でも、ソースはEUC、処理内でJcode等を使用
してSJIS出力するようなことをしておりましたが、PHPの場合はどの
文字コードで書くのが一番問題等発生しにくいのでしょうか。

ご教示いただけますと幸いです。
0216nobodyさん2007/08/30(木) 18:35:39ID:???
ISO-2022-JP
0217nobodyさん2007/08/30(木) 18:36:08ID:Qqw8XwhJ
>>215
基本的なことはperlと同じ
0218nobodyさん2007/08/30(木) 18:59:53ID:???
>>217
早速のご返答、有難うございます。

PHPをよくSJISで書く方がいらっしゃるので、日本語処理関係が
充実しているのかなと多少期待してしまってました。
SJISでデータを受けてEUCに変換してSJISに戻すというのが
非常に手間だったので。。

同じくEUCで書きたいと思います。
ご教示有難うございました。
0219nobodyさん2007/08/30(木) 19:20:40ID:???
今時EUC(笑)
0220nobodyさん2007/08/30(木) 19:22:31ID:???
アルファベットを数字に変換する関数とかないでしょうか。
aaa05130
といった感じのIDを使用しているのですが、
これを一意な数字列に変換したいのれす
0221nobodyさん2007/08/30(木) 19:27:09ID:???
ord
0222nobodyさん2007/08/30(木) 19:34:26ID:???
>>219
携帯サイトを作っているのですが、ソースからSJISにしたほうが
都合いいのでしょうか。
0223nobodyさん2007/08/30(木) 19:34:43ID:???
>>219
今時、EUCというが、処理コストの関係で、
EUCにせざるを得ない現場はたくさんあるぞ。
あまり知ったかぶりするなよw
0224nobodyさん2007/08/30(木) 19:35:39ID:???
処理コストの問題ってなに? エロイ人教えて
0225nobodyさん2007/08/30(木) 19:36:36ID:???
今どきというか主流だけどな
0226nobodyさん2007/08/30(木) 19:47:10ID:???
>>218
PHPをSJISで書いてる人が多い!?
それ、どこの馬鹿サイトの受け売りだよ。
PHPは確かにマルチバイトに強いが、
コードをSJISで記述するのは正式サポートしていない。
専用コンパイルした特殊なバージョンを使わないとダメ。

逆に、PHPはマルチバイト処理がPerlより強力なので、
その辺は自動変換でやってしまうのも1つの手ではある。
0227nobodyさん2007/08/30(木) 19:48:21ID:???
>>223
どんだけ〜
0228nobodyさん2007/08/30(木) 19:52:59ID:???
>>223
出力だけSJISにしてりゃ、さほど処理コストには大差ないわけで
0229nobodyさん2007/08/30(木) 19:55:40ID:???
例えば、UTF-8で全て文字コードを統一させようとすると、
EUCの場合と比べてサイズが増大する。
西暦を4桁ではなく2桁で処理していたのと同じ問題。

サイズが増えれば、ストレージのコスト、バックアップコスト、日々のプロセスコストが増える。
こういった諸々の理由から、クライアントからEUCを指定してくる場合も多い。
0230nobodyさん2007/08/30(木) 20:04:17ID:???
>>229
なるほど。
_〆(。。)
0231nobodyさん2007/08/30(木) 20:10:04ID:CeKsBD3c
Linux、apache php4.30

いつもお世話になっております。
アニメーションgifのサムネール画像を作ろうかと思い、
ソースのgif画像をイメージ関数のimagecopyresampledでリサンプリングしたんですけど、
ノイズの入った画像静止画像が得られてしまい、失敗しましました。

どうすりゃサイズ縮めたアニメーションgifをえられるでしょうか。オネガイシマスm(_ _)m
02322222007/08/30(木) 20:14:52ID:???
なんだかすごく勉強になりました。

PHPをSJISで書いている人が多いのは、うちの職場の
方々なんです。
別にルールとかは一切ないんですけどね。

グローバル変数を使いまくるようなタイプなので、ちょっ
とこちらで質問させていただいた次第です。
決してそれが悪いということを言っているわけではなく、
僕の書き方とだいぶ異なると思ったためです。

>PHPは確かにマルチバイトに強いが、 ャRードをSJIS
>で記述するのは正式サポートしていない

ということも知らなかったので、非常に説得力のある
ご意見でした。
やはりEUCで書くことにします。

皆様有難うございます。
0233大ウソつき人間2007/08/30(木) 20:22:53ID:???
今日のレスは、久しぶりにとても参考になりますね。
このスレを毎日読んでいて良かった。
0234nobodyさん2007/08/30(木) 20:29:32ID:???
sjisでもまったく問題ないよ
文字といってもコンピュータにとってはただの数字だし
0235nobodyさん2007/08/30(木) 20:33:48ID:???
>>234 無知さらし乙
0236nobodyさん2007/08/30(木) 20:34:27ID:???
>文字といってもコンピュータにとってはただの数字だし
>文字といってもコンピュータにとってはただの数字だし
>文字といってもコンピュータにとってはただの数字だし
0237nobodyさん2007/08/30(木) 21:50:00ID:???
sjisでphpコード書いたら
特定の日本語文字で\を入れないと
コンパイルエラーになるけどな。
0238nobodyさん2007/08/30(木) 21:55:41ID:???
ーなんかもエラーになりやすいですね
0239nobodyさん2007/08/30(木) 22:05:04ID:???

ダメ文字だな
0240nobodyさん2007/08/30(木) 22:44:01ID:???
それは、文字コードのせいじゃなくてphpの言語体系が糞なだけ。

たとえば、javaでいえば、sjisで書いても内部でutfに自動変換される。
0241nobodyさん2007/08/30(木) 22:48:05ID:???
>>231
自己レス。どうも標準のGDじゃだめみたいっすね。また何か考えます。じゃ。
0242nobodyさん2007/08/30(木) 22:50:53ID:???
レベル下がってきたね
0243nobodyさん2007/08/30(木) 22:53:29ID:???
>>242
行政書士が紛れ込んでいるせいじゃねwww
夏休みは、免許取得ラッシュだから、あっちこっちで行政書士が暴れまくりだよwww
ほんと、大した法律知識も持たないで金稼ぐ阿漕な商売だぜ
0244nobodyさん2007/08/30(木) 22:54:46ID:sqac9GrM
文字コードEUC-JPを使い、MySQL(バージョン: 4.1.20)でデータベースをphpMyadminで管理・運用していましたが、
この度、ドイツ語を取り扱うことになり、文字コードをUTF-8に変えました。
もちろんデータベースのレコードもUTF-8にエンコードしました。
文字化けなどはしてません。

しかしここで問題が発生しました。
phpmMyadminでの検索機能で、あるはずのレコードが検索にひっかからなくなってしまうことが起きています。

例)TBL_exampleというテーブルに、Namaeというフィールドがあり、その中にドン・ジョバンニというレコードがあります。

SELECT *
FROM `TBL_example`
WHERE `Namae` LIKE '%ドン%'
と入れると、きちんとドン・ジョバンニが結果に出てきますが、

SELECT *
FROM `TBL_example`
WHERE `Namae` LIKE '%ジョバ%'
と入れると、ドン・ジョバンニが出てきません。

Namaeフィールド以外に、英語で情報が入ったフィールドがあるのですが、そちらでは問題なかったです。

解決のためのヒントをいただければ幸いです。どうぞよろしくお願いします。
0245nobodyさん2007/08/30(木) 22:59:35ID:???
>>240
>たとえば、javaでいえば、sjisで書いても内部でutfに自動変換される。
これが「言語体系」?

そんなにSJISが好きなら--enable-zend-multibyteすりゃいいのに。
もっとも全ての入出力で変換が掛かる訳じゃないけどね。
0246nobodyさん2007/08/30(木) 23:07:20ID:???
そもそもJavaとPHPじゃ単純比較できんだろ
0247nobodyさん2007/08/30(木) 23:10:24ID:???
mysqlとの連携ってどれぐらい早いですか
たとえば掲示板の書き込みデータを区切り文字で区切って保存、読み込みするのと
mysqlのテーブルとして保存、読み込みするのはどちらが早いですか
0248nobodyさん2007/08/30(木) 23:16:43ID:???
>>247
データ件数とデータの複雑さにもよる。
100件以下で参照関係なし、とかならテキストファイル使った方がさすがに速かろう。
0249nobodyさん2007/08/30(木) 23:17:33ID:???
データ件数による
0250nobodyさん2007/08/31(金) 00:41:05ID:icDPlmBN
すみません。
テキストファイルから文字を読み出し、
1024文字で分割し、それぞれをテキストエリアに表示。
ってのがうまく出来ないんです。
どなたか教えてほしいです。
0251nobodyさん2007/08/31(金) 00:42:56ID:???
今までどういうコード書いた?
0252nobodyさん2007/08/31(金) 00:52:54ID:icDPlmBN
文字を1024文字ごとに<>を加え、それを<>を区切りに分割
までは考えたんですけど、だめですかね?
0253nobodyさん2007/08/31(金) 00:54:37ID:???
コードだよコード。
PHP語話せ
0254nobodyさん2007/08/31(金) 00:56:49ID:???
>>252
ダメっつーか、それで思った通りの結果が得られなかったのか?
それが良いコードかどうかはともかく、動くことは動きそうだが。
そもそも1024文字ごとに<>を加え、ってのがどうやったのか不明だけど。
0255nobodyさん2007/08/31(金) 00:56:56ID:icDPlmBN
携帯からなんで無理なんです。
0256nobodyさん2007/08/31(金) 00:59:53ID:???
じゃあパソコンから書き込んでください。
0257nobodyさん2007/08/31(金) 01:01:08ID:icDPlmBN
chnuk_split
explode
使いました。
0258nobodyさん2007/08/31(金) 01:01:25ID:???
>>248>>249
どうもありがとう
0259nobodyさん2007/08/31(金) 01:05:12ID:???
chunk_splitなんて関数初めて知ったよw
使いどころがなさそうな関数だな。
どんな発想でこんな関数を見つけてこれるんだ?
どっかのコードのコピペ?
しかも脆弱性情報満載

>>257
あー、まー、てめー、もっと
どんな関数があるのか調べろというこった。
0260nobodyさん2007/08/31(金) 01:06:09ID:AXGaJdGV
>>250
ファイルを読み出すときにどの関数を使っていますか。
0261nobodyさん2007/08/31(金) 01:08:06ID:icDPlmBN
脆弱性ですか。
どこに穴があるのか教えて下さい。
0262nobodyさん2007/08/31(金) 01:10:01ID:icDPlmBN
file_get_contentsです。
0263nobodyさん2007/08/31(金) 01:10:32ID:AXGaJdGV
>>257
freadを使わないのは、 freadを知らないからですか。
それともfreadでは駄目な理由があるのですか。
0264nobodyさん2007/08/31(金) 01:36:03ID:???
宿題なんだからそんなに簡単に正解のヒントをあげちゃダメっ
0265nobodyさん2007/08/31(金) 01:37:05ID:icDPlmBN
freadで1024ごとに分割して出力はどうするんですか?
0266nobodyさん2007/08/31(金) 01:46:11ID:???
HTMLの出力すらできないんかいっ
0267nobodyさん2007/08/31(金) 01:49:36ID:icDPlmBN
1024ごとに分割された出力が出来ないので、

htmlはわかりますよ。
0268nobodyさん2007/08/31(金) 01:55:24ID:???
ループ処理くらい知ってるんだろ?
0269nobodyさん2007/08/31(金) 02:02:43ID:icDPlmBN
ループ…foreachで出来ますか?
0270nobodyさん2007/08/31(金) 02:05:34ID:AXGaJdGV
http://www.php.net/fread
0271nobodyさん2007/08/31(金) 02:08:04ID:???
>>269
キミ、いくらなんでもダメすぎ。
0272nobodyさん2007/08/31(金) 02:32:31ID:icDPlmBN
わからないです。
0273nobodyさん2007/08/31(金) 02:37:01ID:???
携帯ってこんなに長くIP変わらないの?
IDおんなじだよね。

>>272
ソースかけ
0274nobodyさん2007/08/31(金) 02:37:25ID:???
学校で何を習ってるんだ、君は…
0275nobodyさん2007/08/31(金) 02:40:34ID:icDPlmBN
IP帯域は頻繁に変わりますね。
自分のサイトはPCのアクセスを.HTACCESS使って制限してます。
0276nobodyさん2007/08/31(金) 02:45:21ID:???
>>269
他のループは知らんのか。
関数より、制御構造を一通り使えるようになっとかないと何も作れないぞ。
ほとんど正解書かれてるじゃん >レス
0277nobodyさん2007/08/31(金) 02:48:58ID:???
255 名前:nobodyさん[] 投稿日:2007/08/31(金) 00:56:56 ID:icDPlmBN
携帯からなんで無理なんです。

↑こういう嘘つくやつに答える必要はない。
0278nobodyさん2007/08/31(金) 02:49:30ID:icDPlmBN
>>276さん
ループ
fread
を使う、ということでしょうか?
0279nobodyさん2007/08/31(金) 02:50:59ID:icDPlmBN
>>277
なぜ嘘だと言えるんだ?
0280nobodyさん2007/08/31(金) 02:51:58ID:???
>>278
好きなのを使え。

それ使ってもできるし
使わなくてもできる

違いは、どれが一番簡単にやれるかどうかって話しなだけだ。

で、お前が今まで書いたコードは?
0281nobodyさん2007/08/31(金) 02:53:11ID:???
>>279

275 名前:nobodyさん[] 投稿日:2007/08/31(金) 02:40:34 ID:icDPlmBN
IP帯域は頻繁に変わりますね。
0282nobodyさん2007/08/31(金) 02:56:01ID:???
携帯はIPじゃなく個体識別でID振られるんじゃなかったっけ?
0283nobodyさん2007/08/31(金) 02:56:17ID:icDPlmBN
AUのIP帯域表見てこいよ
俺はDocomoだけど、
WILLCOMなんて糞多いぞ?
0284nobodyさん2007/08/31(金) 03:02:14ID:???
>>283
それ、反論になってないw

>>277>>281は「2chのIDは接続IPごとに振られるはずだから、
IPが頻繁に変わる携帯なら毎回違うIDになるはず」と言ってる。
だが、それ自体が勘違いなので、気にする必要なし。
そんな糞仕様だったら携帯使ってるやつは自演しまくり、
他の携帯のやつとID被りまくりになる。
0285nobodyさん2007/08/31(金) 03:03:38ID:???
で、お前が今まで書いたコードは?
0286nobodyさん2007/08/31(金) 03:05:40ID:???
chnuk_split
explode
foreach
こんだけ知ってて作れないってのもどうかと思う。
効率は決して良くないが、できないことはないぞ。
0287nobodyさん2007/08/31(金) 03:11:23ID:???
>>284
お前の論理展開もおかしいぞ。

> そんな糞仕様だったら携帯使ってるやつは自演しまくり、
頻繁に変わるIPでIDが決まるなら、自演なんか出来ないだろw
お前馬鹿すぎ。
0288nobodyさん2007/08/31(金) 03:15:10ID:icDPlmBN
>>284
俺自身個体識別番号でIDなんて知らなかったんだから仕方がないだろ。
携帯に関してIPでIDという意見だったんだから、その可能性は低いだろうということを指しただけだ。

>>286
効率のいい方法が気になるんですけど、速度的にも違うんですかね?
0289nobodyさん2007/08/31(金) 03:16:17ID:???
いいから、さっさとお前が書いたコード書け
0290nobodyさん2007/08/31(金) 03:18:45ID:icDPlmBN
コードは明日でいいですか?
0291nobodyさん2007/08/31(金) 03:19:33ID:???
あぁ、来月で良いよ。
0292nobodyさん2007/08/31(金) 03:22:00ID:icDPlmBN
まずは出来る限り自分でしてきます。ヒント貰えましたから。
お休みなさい。
0293nobodyさん2007/08/31(金) 03:24:27ID:nPx6LHaB
夏休みの宿題は大変そうだな、こんな時間まで。
来年はもっと早くやろうな。
0294nobodyさん2007/08/31(金) 03:24:30ID:???
強気になったり低姿勢になったり全くなんて感情の起伏が激しい子
0295nobodyさん2007/08/31(金) 03:27:18ID:icDPlmBN
夏休みの宿題なんてとっくに終わったが?
0296nobodyさん2007/08/31(金) 03:28:34ID:???
もういいから寝ろよw
0297nobodyさん2007/08/31(金) 03:30:00ID:icDPlmBN
寝たいんだが…不眠症でな…
わりぃ
0298nobodyさん2007/08/31(金) 03:35:02ID:???
不眠症か
どうりで感情の起伏が激しいわけだ
0299nobodyさん2007/08/31(金) 03:37:52ID:icDPlmBN
そうらしいな。
まぁ…今日は朝日でも見に行くかな。
0300nobodyさん2007/08/31(金) 04:03:30ID:???
発言が脂肪フラグくさいなw
0301nobodyさん2007/08/31(金) 05:02:36ID:???
強くイ`
0302nobodyさん2007/08/31(金) 05:44:34ID:qJAlQosv
JISでもダメ文字ってんの?
UTF-8→JISに変換して送信したら
勝手にエスケープ入ったんだけど。。。
0303nobodyさん2007/08/31(金) 10:15:58ID:???
さぁ、エスパーさんの出番ですよ
0304nobodyさん2007/08/31(金) 11:20:10ID:???
よーしまかせろ
>>302
それはきっとあれだ。
EUC>UTF-8>そのまま保存>取り出し>JIS
とやったんだな。うん。
0305nobodyさん2007/08/31(金) 11:29:32ID:???
popen()実行時のPATH変数はどこで設定されているのでしょうか?
CentOS4.5です。
0306nobodyさん2007/08/31(金) 11:59:02ID:icDPlmBN
分割表示出来た。(`・ω・´)
みんなありがとう!!!!!!!!!!
0307nobodyさん2007/08/31(金) 12:17:30ID:???
>>305
そもそもPHPからプロセス起動するときは常にフルパスにしてるし
そうすべきものだと思うからそんなの意識したことも無かったけど、
多分rootユーザの環境設定じゃないの?
PHPはApacheプロセスなんだから、Apache起動時のユーザ環境を
そのまま引き継いでるんだと思うけど。
0308nobodyさん2007/08/31(金) 12:30:09ID:???
バイナリ文字列をchrで作成するのって問題ないですか?
何か切り捨てられるasciiコード番号ってあるんでしょうか
0309nobodyさん2007/08/31(金) 12:34:55ID:???
>>307
Apache起動スクリプトでPATHを変更してみて確認しました。
Apache起動時のPATH変数を引き継いでました。
ありがとうございます。
0310nobodyさん2007/08/31(金) 12:35:09ID:???
>>308
特にないんじゃない?
0311nobodyさん2007/08/31(金) 12:53:41ID:???
>>308
一般にバイナリ文字列ならpack()の方が便利だと思うよ。
つか、バイトオーダーとか、charのサイズとかバイナリの基礎知識ある?
0312nobodyさん2007/08/31(金) 13:14:13ID:???
>>247-249
んーmysqlつかって掲示板システム組んでるけど目的は早い遅いじゃないなぁ。
データと外観を別個に扱いたいというか。
外観変えようと思ったら全部のファイルにバッチ流したりってのがメンドイんで
データDBに突っ込ませてるけど間違った用法かなぁ。
0313nobodyさん2007/08/31(金) 13:20:44ID:???
トンチンカンキターーー!
0314nobodyさん2007/08/31(金) 13:23:12ID:WC6dpiwK
質問です
1.hoge.com/hoge.php?test=1234

2.hoge.com/hoge.php/1234

1は$_GETなんですが、2はどうやって1234というキーを取り出せばいいんでしょうか
0315nobodyさん2007/08/31(金) 13:26:44ID:???
apache設定
0316nobodyさん2007/08/31(金) 13:26:56ID:???
>>314
$_SERVER['PHP_SELF']
0317nobodyさん2007/08/31(金) 13:28:45ID:???
>>312
データ形式(ファイルかDBか)と外観はぜんぜん関係ないと思うけど
0318nobodyさん2007/08/31(金) 13:41:36ID:WC6dpiwK
>>316
$_SERVER['PHP_SELF']でURLを拾って分解するしかないということでしょうか?
0319nobodyさん2007/08/31(金) 13:43:43ID:???
>>318
簡単な方法はそれ
.htaccessかApacheの設定で静的URLを動的URLにしてGETで取得できるけど、
そうするのだったまずググってみ
0320nobodyさん2007/08/31(金) 13:45:53ID:WC6dpiwK
>>319
なるほど、ありがとうございます
0321nobodyさん2007/08/31(金) 13:55:52ID:???
parse_url
0322nobodyさん2007/08/31(金) 14:12:15ID:icDPlmBN
…見間違えだったやっぱ分割表示出来ない…
for文でやってみたんだが…
もぅだめだ…
スクリプト教えてくれ
0323nobodyさん2007/08/31(金) 14:15:15ID:???
>>322
なんのこと言ってんだ?
0324nobodyさん2007/08/31(金) 14:15:59ID:???
コード出すんじゃなかったの?
0325nobodyさん2007/08/31(金) 14:17:50ID:???
>>322
freadで1024Byteずつとりだしてechoで吐き出せばいいんじゃね?
0326nobodyさん2007/08/31(金) 14:21:57ID:???
>>322
まず自分で書いたコードを出せ。そしたら添削してやる。
0327nobodyさん2007/08/31(金) 14:22:07ID:icDPlmBN

$source = fopen("./a.txt","r");

for($i = 0; $i < mb_strlen($source) $i++)
{
$x = fread($source,1024);
echo "$x";
}
0328nobodyさん2007/08/31(金) 14:23:06ID:???
ワロタ
0329nobodyさん2007/08/31(金) 14:24:14ID:???
>>327
> mb_strlen($source)
この条件はおかしい。fopenの戻り値はリソースIDでしかないので
文字列の長さを取得できるようなものではない。
ファイルを全部読みきったかどうかは feof() で判定できるぞ。
0330nobodyさん2007/08/31(金) 14:26:31ID:???
このソースはワロタwwwwwww

ヒント

$source = fopen("./a.txt","r");
while(){}
$x = freas($source, 1024)
echo "{$x}"


これ組み合わせれ
0331nobodyさん2007/08/31(金) 14:29:29ID:???
必要性はないが別にforでもできる。
ま、普通はwhileを使うだろうが、この場合は根本的な解決にはならん。
0332nobodyさん2007/08/31(金) 14:40:18ID:???
これはソース出せんわな ハズカシクテ
0333nobodyさん2007/08/31(金) 14:42:03ID:icDPlmBN
>>330
わからないです。
0334nobodyさん2007/08/31(金) 14:44:12ID:???
>>332
学校の宿題なんて大抵こんなもんだぞ?
03353302007/08/31(金) 14:45:47ID:???
>>333
大ヒント
マニュアルなり何なりでwhileの仕組みを調べろ
0336nobodyさん2007/08/31(金) 14:47:26ID:icDPlmBN
whileの条件がわかりません。
0337nobodyさん2007/08/31(金) 14:48:25ID:???
50人くらい釣れたのにまだ満足しないとは
0338nobodyさん2007/08/31(金) 14:50:25ID:???
>>336
わかりませんじゃねーよ、調べるんだ
携帯だったらPCが使える環境に移動して調べろ
0339nobodyさん2007/08/31(金) 14:53:35ID:icDPlmBN
学校の宿題って何の話ですか?
家に自作PC一つあるがネット繋がってないんです。

あーー、
わからねぇーーーーーーーーーーーーー、ー、
0340nobodyさん2007/08/31(金) 14:57:18ID:???
>>339
while (式)
{

}

式がTRUEの状態のときに{}内を繰り返す
FALSEになるとループから抜け出す


これでわかる?
あと、わからないなら何がわからないか明確に言え
ここにエスパーってめったにこないんだし
0341nobodyさん2007/08/31(金) 14:58:09ID:???
>>336
>>329
0342nobodyさん2007/08/31(金) 15:01:53ID:1M6g8luz
なぜ>>314の質問に$_SERVER['PATH_INFO']という答が返らないのでしょうか。
0343nobodyさん2007/08/31(金) 15:02:25ID:icDPlmBN
>>340
条件式がわからない。
0344nobodyさん2007/08/31(金) 15:02:30ID:1M6g8luz
ID:icDPlmBNがどうやってPHPを勉強しているのか、 そもそもなぜPHPを勉強しているのか、 非常に気になります。
0345nobodyさん2007/08/31(金) 15:02:53ID:???
まずマニュアル読めよ・・・
0346nobodyさん2007/08/31(金) 15:04:03ID:???
>>343
条件式の何がわからない?
0347nobodyさん2007/08/31(金) 15:05:56ID:icDPlmBN
あなたが出してくれた条件式の中身だ。
私が求める結果に適する条件式がわからない。
0348nobodyさん2007/08/31(金) 15:07:01ID:???
>>347
>>340を見て何がわからない?
0349nobodyさん2007/08/31(金) 15:10:17ID:icDPlmBN
>>348
>>347を見て俺が何がわからないかをあなたが理解出来ない理由を教えてくれ
0350nobodyさん2007/08/31(金) 15:13:44ID:???
>>349
条件式の中身←whileの()の中?{}の中?
0351nobodyさん2007/08/31(金) 15:15:04ID:icDPlmBN
()
0352nobodyさん2007/08/31(金) 15:16:06ID:???
ちょっとみてたがテキストファイルのときは
file_get_contentsのほうがなにやらいいって書いてあったよ
0353nobodyさん2007/08/31(金) 15:19:35ID:???
>>343
>>329
0354nobodyさん2007/08/31(金) 15:19:49ID:???
>>351
結果がTRUEになり、終了するとFALSEになるような式
お前がどういう条件でループしたいかだ
0355nobodyさん2007/08/31(金) 15:20:08ID:???
>>352
どこに書いてあったのさ。
0356nobodyさん2007/08/31(金) 15:23:36ID:???
>>342
Apacheの設定が必要だったりして説明が面倒くさいから。
0357nobodyさん2007/08/31(金) 15:23:52ID:???
>>355
http://www.phppro.jp/phpmanual/php/function.file-get-contents.html
0358nobodyさん2007/08/31(金) 15:26:07ID:???
>>357
>file_get_contents() はファイルの内容を文字列に読み込む方法として好ましいものです。
もしかして、これ見て何も考えずに「あ、file_get_contentsはなにやらいいんだ!」とか思ってる訳?
0359nobodyさん2007/08/31(金) 15:29:49ID:???
>>358
freadでなければならない理由が特に無ければ使わないに越した事無いだろ?
0360nobodyさん2007/08/31(金) 15:29:57ID:???
PHPプロマガジンってのがあるんだ
年4回発行かな?
0361nobodyさん2007/08/31(金) 15:32:41ID:???
>>359
使わないに越したことはないって…freadに何の不満があるんだお前。
ちなみにfile_get_contentsは「テキストファイルの場合」じゃなく
「文字列変数に取り込みたい場合」にパフォーマンスが高いもの。
ファイルの種類は全く関係ないし、入力したものを出力するだけの
今回のケースではかえってパフォーマンスが低い。
0362nobodyさん2007/08/31(金) 15:34:12ID:???
俺がfile_get_contents使うのは特定のURLのページを読み込むときくらいだが
他に使った記憶ない・・・

まぁ、DB使ってるからファイルとか全然つかんw
0363nobodyさん2007/08/31(金) 15:34:39ID:1M6g8luz
>>356
ああ、 なるほど。
0364nobodyさん2007/08/31(金) 15:35:17ID:yIsfOZYg
>>362
お前の好みの話なんて聞いてねぇ
0365nobodyさん2007/08/31(金) 15:35:36ID:???
>>361
パフォーマンスというのは速度的、若しくはメモリ的ななもの?
その実測値の比較データを見せてくれたら納得してやる
0366nobodyさん2007/08/31(金) 15:40:33ID:icDPlmBN
>>354
freadで1024づつ取り出し、ファイルの終端まで取り出したらループを停止。
0367nobodyさん2007/08/31(金) 15:41:13ID:???
>>365
は?つーか、逆におまえこそfreadを使うべきでないという理由を実測データをもって示せよ。
0368nobodyさん2007/08/31(金) 15:42:00ID:???
>>366
>>329
お前の目は節穴だ。
0369nobodyさん2007/08/31(金) 15:44:14ID:???
普通に検索すればfile_get_contentsのほうが効率的だとでているのを
たかが匿名掲示板の一人が騒いだところで何の説得力も無いわな
0370nobodyさん2007/08/31(金) 15:44:25ID:???
>>366
freadでどうすればTRUEが返る?どうすればFALSEが返る?
0371nobodyさん2007/08/31(金) 15:46:01ID:???
>>369
ファイル全部を丸ごと読み込みたい場合の話だろそれ。
今回みたいに1024バイトずつしか読み込む必要がない場合でも効率的とか
相当に頭が眠ってるようだな、おまえ。
0372nobodyさん2007/08/31(金) 15:46:11ID:icDPlmBN
>>370
もうスクリプト出してくれたほうが早い。
0373nobodyさん2007/08/31(金) 15:47:27ID:???
>>372
は?スクリプト出したら宿題にならないだろ
しかも聞いておいてその反応は何?

じゃあわからないなら学校の先生にでも聞け
俺はもう答えるのやめる
0374nobodyさん2007/08/31(金) 15:47:40ID:???
>>372
そんなの当たり前だ。
だが断る。

不勉強なやつが怠けるのを手伝うほどお人好しじゃない。
0375nobodyさん2007/08/31(金) 15:47:58ID:???
今日は盛況だね
0376nobodyさん2007/08/31(金) 15:51:26ID:???
夏休みももう終わりだ。もうしばらくの辛抱さw
0377nobodyさん2007/08/31(金) 15:51:57ID:???
今日で8月も終わりか…
0378nobodyさん2007/08/31(金) 15:52:56ID:???
全部読み込んで分割。これ最強
0379nobodyさん2007/08/31(金) 15:53:08ID:???
そっか、高校だったら明日が宿題の提出日か

>>372
ざまぁwwwwwwwwwwwwwwwww
0380nobodyさん2007/08/31(金) 15:54:04ID:icDPlmBN
商業の先生にPHPわかる奴なんていないですから
商業高校の先生にPHPの宿題出す奴いないですから。
二年、三年は知らないがな。

なぁ、恥ずかしくてソースも出せなかった俺の身にもなれよ、
あのソース見たら俺がどれだけPHPについてわかってないかわかるだろ?
なぁ、もぅソース出してくれよ
0381nobodyさん2007/08/31(金) 15:54:13ID:???
>>378
それなら分割しながら出したほうが効率よくね?
0382nobodyさん2007/08/31(金) 15:55:09ID:???
>>380
だ が 断 る

努力もしないで他人に頼ってばっかりのゆとりのお前に答えるものなどない
0383nobodyさん2007/08/31(金) 15:55:26ID:???
>>380
おまいが商業高校の1年というのはわかった。
0384nobodyさん2007/08/31(金) 15:55:57ID:icDPlmBN
>>379
馬鹿?w
明日土曜日ですけど?w
学校は9月3日ですからw
0385nobodyさん2007/08/31(金) 15:56:13ID:???
ずいぶん前に学校教育が終わってしまった人から質問だが、
実際今の普通科高校じゃどのくらいの事やるんだ?
?モレ?モレはベーシックヤッテタヨ。歳バレソウダケド。
0386nobodyさん2007/08/31(金) 15:56:47ID:???
>>380
宿題じゃないなら焦る必要もないじゃん。
まずはPHPのマニュアル本買うか、自宅のPCをネットに繋げてオンラインマニュアルにアクセス。
話はそれからでも遅くはあるまい。
0387nobodyさん2007/08/31(金) 15:57:56ID:icDPlmBN
>>382
昨日の夜からPCに向かってるが、わからないもんはわからないんだ
お前にとっちゃわからない=努力していない
かもしれないが、俺はいろいろといじくりまわして頑張ってんだよ
0388nobodyさん2007/08/31(金) 15:58:23ID:???
>>378
PHPの文字列・配列処理はそんなに効率よくねーよ
0389nobodyさん2007/08/31(金) 15:58:32ID:???
>>385
ベーシックどころか普通高校では授業でパソコンすらさわらなかった俺\(^o^)/オワタ
0390nobodyさん2007/08/31(金) 15:59:05ID:???
>>387
いいけど、すでに回答は書かれてるんだけどな…
読み落としてるお前も悪いと思う。
0391nobodyさん2007/08/31(金) 15:59:11ID:???
>>387
本当に努力しているやつは自分を「頑張ってる」なんて言わない
0392nobodyさん2007/08/31(金) 15:59:51ID:???
>>385
工業高校だったから
F-BASIC
アセンブラ
VB
0393nobodyさん2007/08/31(金) 15:59:57ID:???
>>387
きっとみんなはいろいろいじくりまわした結果達成したときの喜びをお前に教えてあげたいんだよ
0394nobodyさん2007/08/31(金) 16:00:50ID:???
>>387
エネルギーの使い道を間違ってるよ。
よく考えないでいじってるだけだろ?
0395nobodyさん2007/08/31(金) 16:02:49ID:???
>>389
うちの高校週一か二ぐらいでPC触る授業あったな。
中学からPCさわってたオレはヒーローになれたから楽しかった。
>>392
やっぱ工業高校はつよいね。モレが高校のときはVBなんて影も形もなかった。
DOSの原型はさわってたけど。
0396nobodyさん2007/08/31(金) 16:03:15ID:???
>>387
それ、なんの課題なんだ?
それを隠されてもアドバイスのしようがないし。コードだけじゃなくてさ。
あと本当にPHP勉強してるの?
なんかプログラムを全く知らない素人が適当にコードをつなぎ合わせて何とかしてるように見えるんだが。
0397nobodyさん2007/08/31(金) 16:03:20ID:icDPlmBN
BASICは中学の技術の時間にやった。
インターネットつなげたいんだが
、まだ金が貯まってない。
FTTHかADSLって考えたら俺の家は親子電話でADSL不可能
FTTHだと27800、
バイトは学校側から駄目だと言われてる

アセンブリ言語か、羨ましいな。
マジで
逆汗してkrack学習とかもしたんですか?
0398nobodyさん2007/08/31(金) 16:03:56ID:???
そもそもPHPのマニュアルは持ってるのか?
0399nobodyさん2007/08/31(金) 16:05:18ID:???
>>250 設問はこれか?150レスもよく遊んだもんだw
1024バイトづつか。2バイト文字の真ん中とかだったらどうすんだべ?
それでもぶった切るんかな?
0400nobodyさん2007/08/31(金) 16:05:19ID:???
ってか、PHP使う環境が整っていないのに
使おうとする>>397には誰もつっこまない件
0401nobodyさん2007/08/31(金) 16:05:25ID:???
ブラインドタッチできるだけで凄い凄い言われたなぁ。
ちょっとスクリプト書けたり、レジストリ弄れるだけでハカー扱いだったしw
0402nobodyさん2007/08/31(金) 16:06:10ID:???
BASICでHit&Blow作ったときは皆からすごいすごい言われたな
0403nobodyさん2007/08/31(金) 16:06:28ID:???
ネットでまかなえるが本当に勉強しようと思ったら関数のリファレンスくらいはもっといたほうが楽だぞ
0404nobodyさん2007/08/31(金) 16:07:32ID:???
俺はWebのPHPマニュアルだけでほとんど全部身に付けたよ
0405nobodyさん2007/08/31(金) 16:07:38ID:???
いい言葉を紹介しよう。

   ぐ   ぐ   れ
0406nobodyさん2007/08/31(金) 16:08:48ID:???
>>404
いくつか参考書買ったけど、
今一番気に入ってるのがPHP5大全

でも最近はネットでの検索が多いな・・・


PHPマニュアルは関数の使い方のサンプルみたいなのあるけど、
PEARってそういうサンプル載ってないのが辛いな・・・
0407nobodyさん2007/08/31(金) 16:11:08ID:???
>>406
俺もPHP5大全。
関数調べるのオンラインだとなんか作業効率悪くなるんだ
0408nobodyさん2007/08/31(金) 16:12:01ID:???
>>407
仲間いて嬉しいよ
後ろの索引での検索ができないのが辛い・・・
0409nobodyさん2007/08/31(金) 16:12:36ID:???
>>406
たしかに、今は本の売れ行きは良くないな。
Javaで本を一冊書いたけど、増刷しないことが決まっちゃった。
0410nobodyさん2007/08/31(金) 16:13:47ID:???
>>409
PEARの全てを書いて出版してくれ
PEARの本ってamazonで探しても1冊しかなかった

専門書ってかなり高いけど、あれってどうにもならないもんなの?
0411nobodyさん2007/08/31(金) 16:17:11ID:icDPlmBN
>>393
そぅでしたか。
余談だが
確かに…あの頃は感動したなぁ。
ドライアイスによる竜巻発生装置作った
まだ俺がカメラのフラッシュ回路を訳も分からずに触って感電した時だった。
コッククロフトウォルトン回路作りたかったんだ。
>>401
俺の親父はレジストリいじくってPC壊れたw
ハッカーか。凄いな。
BotVirusとか作りまくったりしてんのかな。
懐かしいがWordでメリッサやったりした。
ブラクラもやってみたり、
FLASHやったり、
crkmeいじくったり
VVSおじさんに憧れたりもしていた。
とにかく中途半端だった。
本は一冊買った。
PHP5
逆引き
500の極意
基本から勉強しようと思う。
なんかラクダの絵とかかかれてる本はどうなんですか?
0412nobodyさん2007/08/31(金) 16:18:40ID:???
>>410
多分無理だろうな。phpのニーズがそれほど大きくない上に、
PEARってライブラリーの一つに過ぎないから

どの出版社も企画会議で、類似書籍の販売実績が高くないものは通りにくいらしい。

専門書が高いのは、売れないから。
大学入試用の参考書が分厚いのにものすごく安いことを比べれば分かること。
0413nobodyさん2007/08/31(金) 16:20:11ID:???
ニーズないのか
webの発達が急速化してるのに本って売れないんだね
0414nobodyさん2007/08/31(金) 16:21:00ID:???
>webの発達が急速化してるのに本って売れないんだね

いや

webの発達が急速化してる「から」本って売れないんだよ
0415nobodyさん2007/08/31(金) 16:21:28ID:???
なるほど、そういうことか
0416nobodyさん2007/08/31(金) 16:21:54ID:???
>>410
リファレンスが日本語化されてないライブラリでも中学校程度の英語力でもなんとかなる。
っていうかなんとかなってる
0417nobodyさん2007/08/31(金) 16:24:15ID:icDPlmBN
なぁ、
俺が先生に「今からPHPやります」って言った時、
何て言われたかわかるか?
0418nobodyさん2007/08/31(金) 16:25:07ID:???
>>417
中途半端に終わるからやめとけ


ってか、ここはお前のスレじゃないから
とっとと消えろよ
0419nobodyさん2007/08/31(金) 16:25:37ID:???
>>417
「今から、PHP出版を殺(や)るのか?」
と言われたとか。
0420nobodyさん2007/08/31(金) 16:25:59ID:icDPlmBN
「今頃PHP(笑」
今頃って何なんだ!!!!!!!!!!!!!!!!!!!!!!!!!
0421nobodyさん2007/08/31(金) 16:26:41ID:???
>>411
基本構文くらい理解していれば
後はネットにあがってる他人のコード追ってみて
ちょっとあそんでればそれなりに習得できるのがphp。

できなければ素質が無かったと思ってあきらめる。
0422nobodyさん2007/08/31(金) 16:29:58ID:icDPlmBN
>>421
…今から公共のPC使いに行ってくる…
片道一時間だけどな…
0423nobodyさん2007/08/31(金) 16:30:31ID:???
>>422
勝手に行ってくれば?
いちいち報告しなくていいよ


ところでSmartyのスレってないの?
0424nobodyさん2007/08/31(金) 16:31:10ID:???
こーりゃ ID:icDPlmBNは大学生じゃまいか?
他の言語一つでもやったことあればPHPはかなり入りやすいとおもうけどな。
0425nobodyさん2007/08/31(金) 16:32:26ID:???
デバグはちとメンドクサイかもしれんが。
環境なんてレンタルサーバ月150円だせばどんだけでもうごかせるし。
0426nobodyさん2007/08/31(金) 16:32:44ID:hmrJM+EB
現状ではPHP以外に選択種はないからな
0427nobodyさん2007/08/31(金) 16:33:21ID:???
>>423
その質問よくあるけど、Smartyのレスはないよ。

Smartyなら、今まで何回も案件こなしているし、
カスタマイズもしているから、俺に聞けば分からないことはない。
0428nobodyさん2007/08/31(金) 16:34:04ID:???
>>411
早くスクリプトキディを卒業できるといいですね
0429nobodyさん2007/08/31(金) 16:35:03ID:???
>>427
PHP+MySQL+PEARがある程度理解できてきたのでSmaryでも勉強してみようかなと・・・
Smartyスレ立てたらたたかれるのかな・・・
0430nobodyさん2007/08/31(金) 16:35:12ID:icDPlmBN
>>424
actionscript
とXHTML.HTMLかじった程度
http://arazikai.lxl.jp/index.xhtml
拡張子がxhtmlには訳がある。
携帯サイト。
じゃ
0431nobodyさん2007/08/31(金) 16:37:01ID:icDPlmBN
>>428
余計なお世話ですw
0432nobodyさん2007/08/31(金) 16:39:57ID:QupiSU+k
phpinfo()を実行すると、マニュアルにある紫色の画面ではなくて、
違った画面がでるんですが、これは何でしょうか?
http://www.nya-taloda.jpn.org/2MB/src/mamitasu10627.jpg
0433nobodyさん2007/08/31(金) 16:41:35ID:QupiSU+k
>>432
よく分からないけど、インストールの際のオプションとかどうしたの。

通常は、phpinfo()で出力されるはずだけど。
あとは、文法的にエラーってない?
0434nobodyさん2007/08/31(金) 16:42:34ID:???
ちょwwww

何がだよwww
0435nobodyさん2007/08/31(金) 16:44:28ID:???
>>432
どうせ変な所からソースを引っ張ってきたんだろ、ちゃんとした所からダウンロード
してやり直した方が良いぞ。
0436nobodyさん2007/08/31(金) 16:52:48ID:???
神奈川県 株式会社 インターリンク なんだこりゃ?
0437nobodyさん2007/08/31(金) 17:07:35ID:hmrJM+EB
>>432
お前の醜き心を現した写真か
0438nobodyさん2007/08/31(金) 17:15:07ID:???
面倒くさくて軽く100レスくらい読み飛ばしたけどなんか問題ありますか
0439nobodyさん2007/08/31(金) 17:16:08ID:???
1+1=
0440nobodyさん2007/08/31(金) 17:19:40ID:???
>>439
<?
1+1=
?>
Parse error: parse error, unexpected '=' in C:\www\test.php on line 2
0441nobodyさん2007/08/31(金) 17:21:20ID:???
>>432
それはお前の顔が画面に映ってるだけだ
0442nobodyさん2007/08/31(金) 17:22:02ID:???
1 + 1 = 2
Google 電卓機能について

このキーワードを含むドキュメントを検索する 1+1= .
0443nobodyさん2007/08/31(金) 18:07:01ID:???
ちんこまんこー
0444nobodyさん2007/08/31(金) 18:37:06ID:???
もしかして、このスレの住人は工業(商業)高校の出身多いの?
0445nobodyさん2007/08/31(金) 18:43:59ID:???
高校 普通科
大学 医学部
0446nobodyさん2007/08/31(金) 18:45:19ID:???
俺は平均偏差値74の超進学校だぃ(^_^




・・・ウソだけど
0447nobodyさん2007/08/31(金) 19:16:21ID:???
医学部2年ですが・・・なにか?
0448nobodyさん2007/08/31(金) 19:25:08ID:???
馬鹿田大学医学部ですが、なにか?
0449nobodyさん2007/08/31(金) 19:50:12ID:???
桐堂大学ですが・・・?
0450nobodyさん2007/08/31(金) 19:59:37ID:???
武蔵中学3年ですが、何か文句がありますか?
0451nobodyさん2007/08/31(金) 20:05:54ID:???
幼稚園児ですが、PHPのエキスパートです
0452nobodyさん2007/08/31(金) 20:31:05ID:???
胎児です。こんにちは。
0453nobodyさん2007/08/31(金) 20:32:13ID:???
どうも。精子です。
0454nobodyさん2007/08/31(金) 20:33:12ID:FU/+7uRQ
フォームから入力された文字列に「'」が入っている場合があります。
これをhtmlspecialchars使ってもサニタイズされず、困っています。

どうしたらよいのでしょうか?
0455nobodyさん2007/08/31(金) 20:34:31ID:???
まずマニュアルのhtmlspecialcharsのページを全文コピペしろ
0456nobodyさん2007/08/31(金) 20:34:52ID:???
addslashes
0457nobodyさん2007/08/31(金) 20:37:00ID:???
>>456
初心者乙
04584542007/08/31(金) 20:43:09ID:???
自己解決しました。。↓ですね。
htmlspecialchars($_POST["name"], ENT_QUOTES);
0459nobodyさん2007/08/31(金) 20:46:37ID:???
こんだけヒントもらっといて自己解決たぁいい度胸だ
0460nobodyさん2007/08/31(金) 20:54:31ID:???
姫井ゆり子で自家発電中です。
0461nobodyさん2007/08/31(金) 20:59:25ID:???
>>460
お前は人間として最悪だな。
お前のような腹黒い人間は早く死んだほうが世の中のためになるよ。
0462nobodyさん2007/08/31(金) 22:39:41ID:7jATCbIM
phpのセーフモードで一部のユーザーやディレクトリを非適用にしたいのですがどういった方法がありますでしょうか?
ググってもわかりやすい回答に出会えませんでした
よろしくお願いします
0463nobodyさん2007/08/31(金) 23:44:14ID:???
変数の前の&ってなにを意味してるんでしょうか。ビット演算子じゃないっぽいし…
例) hoge( &$ss , $int ){
04644632007/08/31(金) 23:47:28ID:???
吊ってくる
FAQにありましたね・・
0465nobodyさん2007/09/01(土) 00:22:33ID:2rZ2o9PE
あるテキストにある単語の中で、もっとも使われている単語などを順番にリストアップしたいです
どうすれば良いのでしょうか?
0466nobodyさん2007/09/01(土) 00:26:12ID:???
>>465
英文か日本語か、又はどこかの言語かによって違う。
活用形がある場合とかも考えて揺らぎ除去するとか考えるともっと複雑。
0467nobodyさん2007/09/01(土) 00:29:49ID:???
>>466
レスありがとうございます

kakasiなどを利用すればきちんと出来るのかもしれませんが
今回の場合は「ゆらぎなし」の「日本語」を想定しています
言葉足らずで申し訳ありません
0468nobodyさん2007/09/01(土) 00:36:28ID:???
>>467
日本語を単語レベルで集計するのにphpの力だけでやろうとしているの??
形態素解析器から出力したものを集計する方が早いだろ?
0469nobodyさん2007/09/01(土) 00:48:43ID:2rZ2o9PE
「形態素解析」恥ずかしながら知りませんでした
もっと簡単なものだと思っていましたが、私がやろうとしていることはそんなに面倒なことなのでしょうか?
0470nobodyさん2007/09/01(土) 00:50:52ID:???
文字レベルでやるならphpの力でも出来るけど。
単語レベルなら、自然言語処理の知識がないと無理。
0471nobodyさん2007/09/01(土) 00:58:01ID:???
>>470
ありがとうございます
もう少し自分で勉強してみます
0472nobodyさん2007/09/01(土) 01:38:21ID:???
kakasiを知ってて形態素解析がわからんとは
0473nobodyさん2007/09/01(土) 01:48:09ID:???
                 ,.    _,...   __,..
               /レ' |,, -‐''´∠-‐'´,∠-z_,.
             _l         ´   ∠__
             、)   /           ∠___
             〉 _l_.∠..__/      -‐<_
             〉´:::7:。'´ ̄`'ー-、_,. -  -‐<__
            __l;;;;;;;;|;゚_......,,∠@ `ヽ._,..-  -<_        よんだ?
      ,-r―‐‐''''´| ト、`i/'´..三.ヾ.     \  Z´ ̄`''ー-、 
     λ|     | ト、_|、 ´、_゚_,` iヽ.   。゚/Y'T´       |ト、
    /人 |      | |:::::ト、ー--‐'⌒'‐`ー、∠イ |        | K}  
   く`'´::::::\  、、、、ゝヽ;:::::\       /:::ノ ノ    ........ ノ人}
   /`:::::::::::;;;;;〉、 ゛゛゛。`X'、::::::`::、_____,.::´::::;:'X´o"""""__./∩::/7
   〉:::::::::::;;;;;;;;;イ`ー--‐'^'、ヽ;::::::::::::::::::::::::ノノ`'ー-、...____/;;::::H/./
   ノ:::::::::::::::;;;;;イ=〒〒=i `'''ー===i===‐'''´r=〒〒=iト;;;;;;;ハつ /7-,
  /::::::::::::::::::;;;フ}{==+=+==}}     ||    {{=+==+==}{;;;;;;;i,::::`iー'-^j
0474nobodyさん2007/09/01(土) 02:12:32ID:???
バカはスルーして
つづきどうぞ↓
0475nobodyさん2007/09/01(土) 02:22:08ID:Ym+xGTAW
そんなの関係ねぇ!
そんなの関係ねぇ!

つづきどうぞ↓
0476nobodyさん2007/09/01(土) 02:24:24ID:KtjHm3MJ
携帯サイトのアクセス解析のため、簡単なスクリプトを書いて対象のサイトにimgタグで貼り付けて動作させているんですが、
imgでphpファイルを指定すると画像表示不可能を表すマーク(×など)が表示されて見栄えが悪くなってしまいます
これなんとか非表示にできませんか?
0477nobodyさん2007/09/01(土) 02:27:28ID:???
できます。
0478nobodyさん2007/09/01(土) 02:31:17ID:???
はい、オッパッピー

ってだれかのってくれよ
0479nobodyさん2007/09/01(土) 02:44:40ID:KtjHm3MJ
自己解決しました
無能ども死んでください
0480nobodyさん2007/09/01(土) 03:23:06ID:???
PHP暦二ヶ月です。
>>250
ID:icDPlmBN が言ってるやつを試しにwhileとfreadで書いてみたんですが、
2バイト文字が境目で切られて、文字化けしてしまいました。
これの対応策を教えてくれませんか? 残念ながら見当が付きません。

まあ「区切ってないテキストを○○文字ずつ出力」という事は多分しないですけど。
0481nobodyさん2007/09/01(土) 03:28:23ID:???
自演乙
0482nobodyさん2007/09/01(土) 03:57:33ID:???
>>481
自演じゃないよ、別の馬鹿だよ。
>>330 さん見てて、とりあえずこう書いた。

$fh=fopen("test.txt","r");
while($str=fread($fh,1024)){
print "<p>".htmlspecialchars($str,ENT_QUOTES)."</p>\n";
}

実行したら、境目の文字が化けた。
↑のやり方で、境目の2バイト文字の片割れと1バイト文字の判別法がわからない。
0483480,4822007/09/01(土) 03:59:01ID:pRNvjrEd
ごめんID表示忘れてた。
0484nobodyさん2007/09/01(土) 06:28:53ID:r9rVpK15
さくらのレンタルサーバーでhtmlの拡張子のままphpを動かそうとしています。
.htaccessに
AddHandler myphp-script .html
Action myphp-script /php.cgi
と記述してアップしたところ、○○.phpのファイルはそのまま読めますが、
○○.htmlのファイルは500Internal Server Errorになってしまいました。
php拡張子のものが読み込めるということはパーミッションの設定ミスというわけでもなさそうですし
(念のためすべて755にしました。)
実は昨日までは普通に動いていたものをミスで.htaccessを削除してしまっため、もう一度アップしたらこの現象となってしまいました。
どなたかわからないでしょうか?
さくら以外のサーバーでは「AddType application/x-httpd-php .html」だけでいけたのですが、さくらだけはどうにも。
0485nobodyさん2007/09/01(土) 06:52:57ID:???
>>484
http://www.google.co.jp/search?q=500Internal+Server+Error&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja-JP-mac:official&client=firefox-a
04864842007/09/01(土) 08:06:30ID:r9rVpK15
>485さん
どもです。
検索ワードに.htaccessも加えてあちこち探して、
telnet直接乗り込みviで作り直したらうまくいったとあったので、
やったらうまく行きました。
たぶん改行コードかFTPのときのエラーかと思います。
どうもでした!
0487nobodyさん2007/09/01(土) 12:49:26ID:oiOJU//q
自ファイルへのリンクってどうでしたっけ?
$_POST[self]だったかと思ったら違いました
0488nobodyさん2007/09/01(土) 12:52:13ID:???
ファイルポインタを一行だけ戻したいんだけど
04894882007/09/01(土) 12:57:16ID:???
自己解決しました><
0490nobodyさん2007/09/01(土) 13:29:56ID:WrlGqUhd
すいませんしてないです
id出してなくてすいません
0491nobodyさん2007/09/01(土) 13:31:33ID:???
>>487,488
二人とも、人に聞く前にまず自分で調べることを心がけたほうがいいよ
0492nobodyさん2007/09/01(土) 14:51:25ID:???
配列のインデックスを、数値にする=4バイトも使う
1文字の文字列にする=1バイトで済む
こう考えると、インデックスは文字にした方がよいのでしょうか?
0493nobodyさん2007/09/01(土) 15:56:15ID:NfVJpLYy
末尾が\の文字列を表記する時に、
'hoge\'や"hoge\"だと、クオートがエスケープされてしまうのでエラーになります
'hoge'."\\"
とか書くしかないですか?
もっといい方法あれば教えて下さい
0494nobodyさん2007/09/01(土) 16:01:14ID:???
"hoge\\"
0495nobodyさん2007/09/01(土) 16:12:30ID:???
>>494
盲点でしたw
ありがとうございました
0496nobodyさん2007/09/01(土) 16:41:48ID:???
>>487
$_POSTはクライアントから渡されるパラメータじゃん。
システム系の情報は$_SERVERだよ。
ttp://www.php.net/manual/ja/reserved.variables.php
↑ブックマークするか保存しておくといい。
0497nobodyさん2007/09/01(土) 16:45:02ID:???
>>488
1行読み込む前に現在のファイルポインター位置をftell()で保存しておいて
戻したいときはそのデータをfseek()でセット。

元の位置を保存しないでやるとしたらfseek()で現在位置を1文字ずつ
前にずらしながら読み込んでいって、改行文字を探しだすとかしないと
無理なんじゃないかな。
0498nobodyさん2007/09/01(土) 16:49:48ID:???
>>482
読み込んだデータの末尾1文字の文字コードを調べて
プリンタブルコードの最後の文字よりコードが大きい場合は
切り捨てて、次のファイル読み込み位置を1バイト手前に設定、
って感じじゃないのかな。
SJISで半角カナを含む場合は該当文字コードの範囲に気をつけないといかんけど。
0499nobodyさん2007/09/01(土) 17:02:07ID:???
文字コードで悩んでいるなら、素直にUTF-8にしとけよ。
時間の無駄だよ。

この辺が、Javaと違ってphpの言語仕様が糞なところだが、
どれでも使えるから使っていいじゃなくて、
何が使いやすいかを考えて文字コードを選択しないと、
あとで余計な時間を費やすことになるぞ。

趣味で時間がありあまっているなら、勝手にすればいいと思うが。
0500nobodyさん2007/09/01(土) 17:37:28ID:???
誰宛のレスだ
0501nobodyさん2007/09/01(土) 17:44:48ID:HTX0SqTD
ちょっとしたことですが、気になったので質問です。
フォームから受け取った値を出力する時、
$_POST["name"]というようにしていますか?それとも変数に変換して
$nameとして出力していますか?

郵便番号の書式を変換したりするとき、$zipというように変数に代入していますが、
それ以外は$_POSTのまま出力しています。こちらの方がセキュリティ的に
良いのかな?っと思いまして。皆さんの場合を教えて下さい。
0502nobodyさん2007/09/01(土) 18:22:34ID:???
・グローバル変数を増やしたくない
・同じ内容の変数が複数あるのは無駄
・スーパーグローバル変数である(関数内でglobal宣言無しにアクセス可能)
ってな理由でそのまま使ってるな。
0503nobodyさん2007/09/01(土) 18:30:27ID:epTGamb+
>>501
値を出力するときは常にhtmlspecialcharsを通す。
htmlspecialcharsを通された値が代入されていることが分かる変数であれば、 そのまま出力する。

echo $_POST['name']; // これは危険

echo htmlspecialchars($_POST['name'], ENT_QUOTES); // これは安全

echo $safeName; // htmlspecialcharsに通された値を 「safe」 が付く変数に代入するという規則が決めてあれば、 これは安全

参照:
間違ったコードは間違って見えるようにする
(http://local.joelonsoftware.com/mediawiki/index.php/%E9%96%93%E9%81%95%E3%81%A3%E3%81%9F%E3%82%B3%E3%83%BC%E3%83%89%E3%81%AF%E9%96%93%E9%81%95%E3%81%A3%E3%81%A6%E8%A6%8B%E3%81%88%E3%82%8B%E3%82%88%E3%81%86%E3%81%AB%E3%81%99%E3%82%8B)
0504nobodyさん2007/09/01(土) 18:34:42ID:???
↑つながらん
0505nobodyさん2007/09/01(土) 18:52:25ID:???
>>501
元々のデータをそのまま使うなら$_POSTのまま、
データを様々加工する場合は別途変数に入れて、
としてる。

そのまま扱うのに別の変数に入れるってのは意味が分からん。
加工がある場合は元データを消失する構造にしてると
後の仕様変更で困ることが多いのでこれは別変数とする。
セキュリティはDB登録時やHTML出力時にそれぞれに合った形で
逐次エスケープするわけだから、別変数に入れる必要は全くない。
0506nobodyさん2007/09/01(土) 19:49:34ID:Ca6l/pzb
とりあえず変数(ローカル)に叩き込む派。
無駄でもなんでも変数ぐらいわかりやすく使えよ。さほどメモリ減るもんじゃなし。

自分の言い訳を考えるに、 読み込み→加工→出力 の一般的プロセスを分かりやすくするため
最初にリードしてる気分でローカル変数に叩き込んでる、つーかんじなのかもしれん。

グローバル変数で受け取る?つーかグローバル変数使うなんて阿呆のすることだと思うが?
05075012007/09/01(土) 20:12:35ID:???
皆さん、ありがとうございます。自分は今まで505さんの言う方法をしていました。
それでふと「他の変数に入れた方が、わかりやすいんじゃないか?」っと
思って、他の方はどうしているか気になった次第です。

とりあえずこれまで通り、加工しない場合は$_POSTのまま出力し、
加工する場合は、別途変数に入れる出力方法で行きます。
ちなみにhtmlspecialcharsは常にやっています。
0508nobodyさん2007/09/01(土) 20:15:41ID:???
>>506
またすごい奴来たなwグローバル変数使ってると阿呆だって言い切ってるしw
0509nobodyさん2007/09/01(土) 20:29:33ID:???
そんなそんなグローバル変数がどこで入力されて、内容が加工されて、出力されてるか
プログラムを瞬時に理解できてミスもしない神プログラマーの>>508さんには間違っても勝てませんて。
0510nobodyさん2007/09/01(土) 20:44:02ID:???
必要時にローカル変数化するならともかく、「とりあえず変数に叩き込む」レベルで
そのローカル化したという変数がどこで加工されて出力されてるか把握できるのもすごい。
というか、ローカルって言うけどPHPの先頭がいきなりmain()とかの関数呼び出しになってるの?
関数内ならともかく、PHPのメイン処理で変数にぶち込んだらそれグローバル変数だと思うんだけど。
0511nobodyさん2007/09/01(土) 20:47:14ID:???
神ではないが普通にグローバル変数使うときは、変数破壊には注意を払うね。
全く使わないというのは無理。
0512nobodyさん2007/09/01(土) 21:00:50ID:???
グローバル変数の意味とりちがえてるかも。
少なくとも俺はPHPはじめてglobal宣言はサンプル以外で書いたことはない。
全部関数に引数与えて処理してるし、スコープ考えて処理してる。
main()て書いて、いきなりスコープかましてるわけではないけど、

入力したデータはなにで、どこでしてるか
加工はどこでしているか
出力してるとこはどこか
ぐらいは簡単になるまで関数化、引数として何が必要か明確にしてるけど。

つか、そうそうソースの中のルートに書いた変数を関数内で扱う事に抵抗が無いわけ?
それじゃ簡単なものは作れても後々こまってくるとおもうんだが?
0513nobodyさん2007/09/01(土) 21:26:07ID:???
>>512
関数に引数として渡すこと=ローカル変数化、って言ってるの?
だったらこっちも同じだよ。
ってかふつーそんなの「とりあえず変数に叩き込む」って言わないだろう。
0514506,509,5122007/09/01(土) 21:38:22ID:???
んーまた物議を醸し出しそうでこわいが、(w)
ほぼオレの書いたソースはこれに近い形になってる(してる)んだが。
やっぱオレ間違ってる?なんか説明まちがった?よろしくw

<?php
//入力
$a=$_POST[〜]; //←変数に叩き込み
//処理
$b=process($a);
//出力
output($b);
function process($aa){

}
function output($ab){

}
?>
0515nobodyさん2007/09/01(土) 21:42:29ID:???
>>514
確かに「とりあえず”グローバル変数に”叩き込んでる」のね。

> $a=$_POST[〜]; //←変数に叩き込み
> $b=process($a);

…これって意味あるのか?($a代入)
セキュリティ以前に開発ミスを防ぐって意味でも。

セキュリティ的な意味合いでは「それが外部から来たデータであること」を
常に意識できる形になってないと極めて危険、というのが俺の経験則。
0516nobodyさん2007/09/01(土) 21:45:27ID:???
>>514
global宣言したものをグローバル変数というのではなく、
グローバルスコープの変数をグローバル変数というのだよ。

$_POSTのままの方がユーザー入力だと解りやすいと思うけどね。
0517nobodyさん2007/09/01(土) 21:54:34ID:???
なーんかオレが劣勢っぽいけどw

もちろんprocess関数内では「グローバルとしては扱ってない」よ。
$aが外からきた変数の明示 ($a=_POST[〜];)と
加工部内でその$aが使われている証明($b=process($a);)
があるからいいんじゃね?

もしprocess内で$_POST[]がつかわれたらそれこそどこの環境の
どのデータとってきてるんだってことになるとおもうが?

どのデータを処理に使ってるか処理順序で明示してやるほうが分かりやすかろう
とおもってこうしてるわけだが。

>>516 んではサンプルのprocess内でも$_POSTで値とってきたほうが分かりやすいのか?
0518nobodyさん2007/09/01(土) 22:00:47ID:???
$_POSTにポストデータ以外の出所なんてあるのか。
0519nobodyさん2007/09/01(土) 22:03:40ID:???
ああ、あと一つ。

もし$_POSTをprocessにかける前に加工する必要性がでたら・・・・


おまえらソース書き換え大変だろwwwww
0520nobodyさん2007/09/01(土) 22:10:14ID:???
>>517
なんで関数内からグローバル変数を参照することを前提に書いているのか謎だが、
>>501が質問したのは$a=$_POST[〜];が必要かどうかってことでしょ。
>>502の直接参照出来るってのは利点として挙げただけでそうしろってことではないでしょ。
それに関数内からグローバル変数を参照することはほとんどないといってもケースバイケースだし。
0521nobodyさん2007/09/01(土) 22:14:31ID:qAbTQU9w
今まで、自分の考えていることに間違えなんて無いと思っていたけど、
このレスに来て、俺にも間違えが生じることがあることに気付かせてくれた。
悔しいけど、ありがとう。
0522グローバルは馬鹿っていってごめんなさい。とはいうものの2007/09/01(土) 22:28:54ID:???
> >>517
> なんで関数内からグローバル変数を参照することを前提に書いているのか謎だが、
ああ、これはオレのグローバル変数の取り違え。正直すまんかった。
わざわざスーパーグローバルと同じ動きさせるために global $a; $a=$_POST[]なんてやんのか?
とかおもったんでアホか!っておもって書いた^^;

> >>501が質問したのは$a=$_POST[〜];が必要かどうかってことでしょ。
>>519で論破でいいか?

> >>502の直接参照出来るってのは利点として挙げただけでそうしろってことではないでしょ。
べつにおれもそうしろとはいってないよ。アホだとはいってしまったけど。^^;
プログラムはうごきゃいいんだよ。保守性なんて保守する必要なければ必要ないしね。
でも分かりやすく、ミスなく、とかおもったら俺の経験則でこうなったが。

> それに関数内からグローバル変数を参照することはほとんどないといってもケースバイケースだし。
ケースがないわけないじゃない。globalが用意されてんだから。
でも明示してないものを関数内で入力として使う危険性のほうがおれは経験則で怖いんで俺は明示するよ?
というかんじかな。

>>521 >>519で論破でOK?
0523nobodyさん2007/09/01(土) 22:33:07ID:???
もう、完敗宣言しているんだから、勘弁してやれよw
0524nobodyさん2007/09/01(土) 22:44:58ID:VWNhFO8z
PHPスクリプトを配布しているおすすめのサイトを教えてください。
ソースを見て勉強したいと思っています。
0525nobodyさん2007/09/01(土) 22:51:55ID:???
>>524
PEAR
0526nobodyさん2007/09/02(日) 00:23:30ID:???
俺はglobal宣言せず、どうしても必要なら$GLOBALを使う派。
global宣言した変数ってコード追ってるときに判別しづらくて
バグの元にならない?
0527グローバルは馬鹿っていってごめんなさい。とはいうものの2007/09/02(日) 01:20:55ID:???
つかったことないけど、俺がそんな状況におちいったら
変数名$gblABCとかって接頭文字くっつける

かもしれない。
0528nobodyさん2007/09/02(日) 01:44:25ID:???
>>527
変数名にプリフィックス付けるなんて、VBじゃないんだから止めろよバカ
お前の頭は、10年前から進歩ないのかよ
0529nobodyさん2007/09/02(日) 02:02:17ID:???
>>528
お前、まさかハンガリアン記法とプリフィックスを
ごっちゃにしてないよな?

型を示すプリフィックスのハンガリアン記法は否定されているが、
スコープを示すプリフィックスは否定されてねーよ。

Javaだってメンバ変数の前かあとに _ をつけたりしてるだろ。
0530nobodyさん2007/09/02(日) 02:14:22ID:QvprOJVv
お揉めのところ申し訳ないのですが、質問です。

アクセス解析をつくっているのですが、ユニークをどうやって取得・カウントすればいいか検討もつきません
つまらない素人質問で恐縮ですが、ご教示願います
0531nobodyさん2007/09/02(日) 02:26:42ID:???
その日アクセスされたIPと照合
0532nobodyさん2007/09/02(日) 02:32:34ID:QvprOJVv
レスありがとうございます。
そこまでは自力でわかりましたが、具体的にどのようにすれば良いのでしょうか?
0533nobodyさん2007/09/02(日) 02:36:52ID:???
ifで条件判断すりゃいいだろ。
そこまでわかってんなら書け
0534nobodyさん2007/09/02(日) 03:05:17ID:t27ykBXA
apacheユーザで動かしているwebサーバ上でphpを使用しwebmailを作ろうと思っているんですが、
システムユーザを作らないとユーザが作成できません。
rootユーザでapacheを動かせば作れるんですが。。。。。

一時的にrootで動かすにはやっぱりsudoを使わなければならないでしょうか?
宜しくお願いします。
0535nobodyさん2007/09/02(日) 03:07:12ID:???
>>534
ちょwww 人が眠ろうとしているときにメールするなよ!!
0536nobodyさん2007/09/02(日) 03:26:09ID:???
答えられないのに無理に答えなくてもいいと思うよ
05375342007/09/02(日) 03:27:06ID:t27ykBXA
>>535
( ゚д゚)ダレニモメールシテナイヨ
0538nobodyさん2007/09/02(日) 03:40:21ID:QvprOJVv
>>533
ありがとうございました
0539nobodyさん2007/09/02(日) 03:45:09ID:???
>>534
webmail とシステムユーザの作成に何の関係が?
たぶんシステムのユーザのメールボックスを使いたいのだろうが、
エイリアスで不足な理由は?

やっぱり使わなきゃダメかなぁみたいなノリでroot権限を使わない方がいいよ。
05405342007/09/02(日) 03:49:52ID:t27ykBXA
>>539
Web上でユーザの作成、削除をしたいんです。
formにて必要な情報を管理メールアドレスへ送ればいいのでしょうけど、
リアルタイムで作成したいと思っています。(yahooやgmailのような仕組み)
なのでやっぱりsudoとshellscript又はsystem()関数を使わなければいけないかなと思ったんですが。。。
0541nobodyさん2007/09/02(日) 03:54:37ID:???
>>540
いやいや、だからメールボックスだけが必要なら、
システムのユーザを作る必要はどこにもないんだよ?
エイリアスで十分でしょ。

postfixなどには、エイリアスをデータベースに格納する設定があるから、
まずはそいつを調べるんだ。
0542nobodyさん2007/09/02(日) 04:06:36ID:???
array(5,6,7,8,9,10)とか
連番の配列を作るにはどうしたらいいですか?
0543nobodyさん2007/09/02(日) 04:11:49ID:???
>>542
for($i=5; $i<=10; $i++){
$array[] = $i;
}
05445342007/09/02(日) 04:11:50ID:???
>>541
Postfixにそんな機能があったのか、thxです!
ちょっと調べてみます。
ありがとうございました。
0545nobodyさん2007/09/02(日) 04:24:42ID:???
>>542
range(5,10)
0546nobodyさん2007/09/02(日) 04:54:05ID:???
>>543
それならできます
>>545
ありがとうございました
0547nobodyさん2007/09/02(日) 04:55:15ID:???
こんなに優しくされたの初めてです♪
0548nobodyさん2007/09/02(日) 11:59:26ID:IAvjtU3B
【やりたい事】
・HTMLのフォームに初期値を表示したい。
・初期値は別のテキストファイルからphpで呼び出したい。
・下記のソースではフォームに「$file_data[0]」,「$file_data[0]」と表示されてしまいます。
・本当に表示させたいメッセージは「名前を入力してください」,「問い合わせ内容を入力してください」です。

【data2.txtの中身】
名前を入力してください
問い合わせ内容を入力してください

【環境】
サーバーのOS:CentOS 4.5
Webサーバー:Apache 2.0.52
PHP:5.1.6
0549nobodyさん2007/09/02(日) 12:00:44ID:IAvjtU3B
>>548の続き
【index.htmlの中身】
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd";>
<html lang="ja">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>フォームに初期値を表示する</title>
</head>
<body>

<?php
$file_data = file("data2.txt");
?>

<form method="post" action="form.php">
お名前:<input type="text" name="name" value="$file_data[0]">
<br>
問合せ:<input type="text" name="contact" value="$file_data[1]">
<br>
<input type="submit" value="送信">
</form>

</body>
</html>
0550nobodyさん2007/09/02(日) 12:09:48ID:???
>>549
お名前:<input type="text" name="name" value="<?php echo $file_data[0] ?>">
問い合わせも同様
0551nobodyさん2007/09/02(日) 12:22:39ID:IAvjtU3B
>>550
ありがとうございます。
正常に動作する事を確認しました。

※補足
>>550さんの記述+index.htmlをindex.phpにする事で動作しました。
何となく過去の経験上、phpは拡張子がhtmlでも動作した気がしたのですが、htmlのままでは動きませんでした。
0552nobodyさん2007/09/02(日) 12:30:49ID:???
>>551
AddType application/x-httpd-php .php .html
0553nobodyさん2007/09/02(日) 12:44:03ID:3ZNK8eVt
テキストファイルに"5"が見つかったらその上の行を表示するようにしたいんので

$file = fopen("xxx.txt","r");

while (!feof($file)) {

$line = fgets($file,1024);

if ($line == 5){

fseek($file, $get);

$line = fgets($file,1024);

echo ("$line<br>");
}

$get = ftell($file);
}


fclose( $file );

これじゃできないんです。どうすればいいでしょうか
0554nobodyさん2007/09/02(日) 13:33:02ID:???
if(strpos($line,'5') !== false)
0555nobodyさん2007/09/02(日) 13:37:02ID:IAvjtU3B
>>552
ありがとうございます。
ググッて意味が理解でき、htmlでも動作するようになりました。
0556nobodyさん2007/09/02(日) 15:36:12ID:bbqIMTHD
ここに書いてある方法でphp.ini設定してもphpファイル読み込めば勝手に西ヨーロッパ言語(ISO)でエンコードされて文字化けしてしまう
http://allabout.co.jp/internet/database/closeup/CU20050321A/index5.htm
まあ読み込むたびに手動でエンコード変えればちゃんと見れるのだが・・・
どうすりゃデフォルトでShift-JISやEUC-JPで読み込んでくれるのよ?


0557nobodyさん2007/09/02(日) 15:50:42ID:???
htmlの勉強をしてください。
0558nobodyさん2007/09/02(日) 15:56:19ID:???
>>556
今時ブラウザの自動判定に頼らずに、
ちゃんと文字エンコーディング情報を伝えてあげてください。
0559nobodyさん2007/09/02(日) 16:06:39ID:bbqIMTHD
IEの自動判定ってどこで設定すんだよ
FFxだとうまく表示されるんだがIEだとなぜか西ヨーロッパ言語(ISO)になっちまうんだよ
ちなみにFFxだとエンコードはうまくいってるのにPHP5がちゃんと動作しない
どうすりゃいいのさ
0560nobodyさん2007/09/02(日) 16:10:25ID:???
だからhtmlの勉強をしろ。
0561nobodyさん2007/09/02(日) 16:11:35ID:???
>>559
>ちなみにFFxだとエンコードはうまくいってるのにPHP5がちゃんと動作しない
なんでPHPがブラウザに依存するんだよ
0562nobodyさん2007/09/02(日) 16:15:54ID:???
ずるぽんあぷろだのソースはもう配布されてないのですか?
どこかに落ちてませんか?
0563nobodyさん2007/09/02(日) 16:16:38ID:???
あんなもん1から作った方がいい。あれソース汚すぎ。
0564nobodyさん2007/09/02(日) 16:25:36ID:cq55lstZ
function jikan(){
$jikan = time();
$_SESSION['jikan'] = $jikan;
}


jikan();
echo $_SESSION['jikan']

jikan関数を定義して、$jikanに現在の時間を入れて、$getに$jikanを代入したのですが、
ブラウザを更新するたびに$getの値が変わってしまいます。
$getにはtime()って関数がそのまま代入されてるからでしょうか?
$getにはじめに取得した時間のまま値を変えずにするにはどうしたらいいのでしょうか?
0565nobodyさん2007/09/02(日) 16:32:35ID:???
>>564
$_SESSION['jikan']が存在すればjikan();に行かないようにすればおk
0566nobodyさん2007/09/02(日) 16:34:15ID:cq55lstZ
アドバイスくださったとおりでした。
なんども定義関数を呼び出してました。
ありがとうございました。
0567nobodyさん2007/09/02(日) 16:37:14ID:???
ソースから余分な改行等を抜いてつめつめにしたら
高速化できますか?
0568nobodyさん2007/09/02(日) 17:06:14ID:???
できるよ
0569nobodyさん2007/09/02(日) 17:08:25ID:???
なるんじゃね?

1GhzのCPUは一秒間に1000000000の命令を実行できるから
改行一つ当たり0.00000001秒ぐらい。
0570nobodyさん2007/09/02(日) 17:13:53ID:???
>>569
CPUの命令の意味が全然分かっていない、知ったか厨
0571nobodyさん2007/09/02(日) 17:15:13ID:???
>>570
本当はお前がわかっていないんだろうなw
反論するときは、その理由を書くもんだよ。
0572nobodyさん2007/09/02(日) 17:16:21ID:???
>>571
その手に乗らねよ、厨www
知りたかったら自分で調べろ。
0573nobodyさん2007/09/02(日) 17:22:33ID:???
お前の(間違った)考えを
ネットで調べろとは、また無茶なことを言うな。

ほれみろ、反論できやしない。
0574nobodyさん2007/09/02(日) 17:25:14ID:???
>>573
馬鹿丸出しw
0575nobodyさん2007/09/02(日) 17:25:48ID:???
>>570
たかが改行を一つ飛ばすぐらい。
機械語でも、比較命令・アドレス加算、ジャンプの
数命令程度ですむわけだが?
0576nobodyさん2007/09/02(日) 17:26:27ID:???
コードキャッシュ入れたら無意味になるけどな。
0577nobodyさん2007/09/02(日) 17:27:00ID:???
>>573は、自分の疑問を他人に調べさせようとしています。
以後、餌をあげないように。
0578nobodyさん2007/09/02(日) 17:28:14ID:???
>>570はPHPの1命令は機械語に直すと
もっとかかると言いたかったのだろうが、
改行を飛ばすコードなんて機械語でもほんの数命令でしか
ないことに気づかなかった馬鹿ということでFA?
それ以外に何を言いたいのかわからない。
0579nobodyさん2007/09/02(日) 17:29:36ID:???
盛り上がってまいりました
0580nobodyさん2007/09/02(日) 17:29:40ID:???
>>577
お前さ、自分で反論していて、
その反論の理由をいえないなんて恥ずかしくないの?

私はあなたの意見の反論する。
その理由はお前がググレ。

これを議論の場で言ったら恥をかくだけだと思うよ。
0581nobodyさん2007/09/02(日) 17:32:58ID:???
これでどっちが知ったかかはっきりしましたねw

もちろん>>570のことですよ。
0582nobodyさん2007/09/02(日) 17:33:18ID:???
とりあえずネットよりまずPHPのC言語ソースを調べろと。
スクリプトの解析処理がどういう仕組みになってるかによって
改行コードの有無による処理コストは変わってくるし、
そこを調べずに論議してもまるで無意味。

でも多分、改行コードは単独で判定されてるわけじゃなく、
正規表現での構文解析で他の記号とまとめて処理されてると思うので、
構文解析としては改行があっても無くても速度はまるで変わらず、
差が出るのはディスクから読み込むときにバッファが小さくて済み、
サイズが数十〜数100バイト小さい分だけディスクI/Oが早く完了する、
という点に尽きると思う。
この速度差はCPUのクロックだけじゃなく、ディスクのI/O速度にも依存する。
0583nobodyさん2007/09/02(日) 17:36:40ID:7yTluSfa
PHP4+Apache+MySQL(PostgreSQL)+Smartyが使用できるおすすめのフレームワークを教えてください
できればデファクトスタンダードになりそうなので
0584nobodyさん2007/09/02(日) 17:37:22ID:???
>>583
今更PHP4がデファクトスタンダードになるわけないじゃん。
公式サポートはもう終了しちゃったよ。
0585nobodyさん2007/09/02(日) 17:37:49ID:???
>>582
正規表現といっても、結局は最終的には
単純な機械語による比較とループとして実行されるわけで、
結局改行一つで増加するコードは10命令文にもならないだろうな。
0.00000001秒は妥当なんじゃね?むしろそれ以下。

0586nobodyさん2007/09/02(日) 17:40:01ID:cq55lstZ
$array = array("aa"=>"1234","bb=>"2314","cc"=>"5814","dd"=>"3501");

$arrayに格納された値に含まれる1を削除したいのですが、
以下のコードよりももっと良い書き方ありませんでしょうか?

foreach($array as $k => $v) {
$hairetu[] = str_replace("1", "", $v);
}
0587nobodyさん2007/09/02(日) 17:41:55ID:???
>>584
> 今更PHP4がデファクトスタンダードになるわけないじゃん。

デファクトスタンダードになりそうな
フレームワークを聞いてるんだろ。

お前は日本語もわからんのかw
0588nobodyさん2007/09/02(日) 17:43:55ID:???
>>583
CakePHP
05895832007/09/02(日) 17:47:43ID:7yTluSfa
>>584
Zend FrameworkのようにPHP5のみじゃなくて
現状でPHP4が使えて今後デファクトスタンダードになりそうなフレームワークということです。
0590nobodyさん2007/09/02(日) 17:49:19ID:???
改行を全て削除したらファイルサイズが1割くらい減るから
1割くらいは高速化するだろう
0591nobodyさん2007/09/02(日) 17:50:01ID:???
スカスカのプログラムだなw
0592nobodyさん2007/09/02(日) 17:50:17ID:7yTluSfa
>>588
ありがとうございます
試してみます
0593nobodyさん2007/09/02(日) 17:51:07ID:???
>>590
お前は>>570か?w
0594nobodyさん2007/09/02(日) 17:52:23ID:???
>>590
しねーよw
0595nobodyさん2007/09/02(日) 18:05:50ID:???
>>586
コールバック関数使うとか参照foreachとか。
0596nobodyさん2007/09/02(日) 18:25:02ID:???
>>586
それで十分じゃないのか?
0597nobodyさん2007/09/02(日) 18:37:55ID:SjqAaNKw
内容:
初心者です 参考書を片手に勉強中なんですが
PHP mysqlでチェックボックスを使い フォームでチェックされた名前のも
のだけを取り出したいのですが 上手くいきません
チェックボックス側
<form method="GET" action="./hoge.html" >
<table width="778" border="0" cellpadding="0" cellspacing="1" bgcolor="#999999">
<tr> <td width="70" height="32" valign="top" bgcolor="#FFFFFF" class="unnamed2"><b>名前</b></td>
<td valign="top" width="229" bgcolor="#FFFFFF" class="unnamed2">
   <?php
for ($si = 1; $i <=10; $i++) {
echo <input type=\"checkbox\" name=\"c1[]\" value=\"{$row['id']}\">{$row['id']};
}
?>
表示側
//データーを受け取る
$c1 = @$_POST["c1"];
$sql = "SELECT * FROM hoge";
//データーが選択されているときはWHERE以下を組み立てる
if (count($c1) > 0) {
//分割されたここのキーワードをSQLに反映
$where = "WHERE (id IN (";
for ($i = 0; $i < count($c1); $i++) {
$where .= $c1[$i];
if ($i < count($c1) - 1) {
$where .=","; }
else {
$where .= "))"; } } }
for ($i = 0; $i < count($c1); $i++) {
echo "$c1[$i]"; }
echo "<p>e".$sql.@$where;
0598nobodyさん2007/09/02(日) 18:38:39ID:SjqAaNKw
↑よろしくお願い致します。
0599nobodyさん2007/09/02(日) 18:44:42ID:???
何が上手くいかないんだよ
何を教えてほしいんだよ
ひどい質問だ
0600nobodyさん2007/09/02(日) 18:46:15ID:???
とりあえず、inputのvalueを改ざんされて
" 1 )); delete * from hoge; --"
とか送ってこられたら楽しいことになるぜ。へっへっへと
関係ないことを指摘しておく。
0601nobodyさん2007/09/02(日) 18:47:16ID:???
@$_POST["c1"];
.@$where;

何言語?
0602nobodyさん2007/09/02(日) 18:49:26ID:???
>>586
array_map
06036022007/09/02(日) 18:50:51ID:???
ちなみにarray_mapはforeachとかより若干遅い。でも便利だから使ってる。
0604nobodyさん2007/09/02(日) 20:20:58ID:???
>>601
マヌアル嫁
0605nobodyさん2007/09/02(日) 20:57:00ID:lMwXxY/u
Javaのパッケージみたいな概念はありませんか?

あと、PHPでのファイル・クラスのネーミングルールとか。
0606nobodyさん2007/09/02(日) 22:08:55ID:???
$a="うんこ";
として、

echo "$a ちんちん";

echo $a." ちんちん";
のどっちが速いっすかね?
0607nobodyさん2007/09/02(日) 22:14:30ID:???
>>606
かわらん
0608nobodyさん2007/09/02(日) 22:37:36ID:O0vZytK1
すいません。
http://pc11.2ch.net/test/read.cgi/php/1188731930/
これわかる人いませんか?
ぜんぜん表記されないのですが、かいてもよまれないと
言われたんですが、なんとかしたいんです。
0609nobodyさん2007/09/02(日) 22:52:44ID:???
>>608
これ読めってのは無理あるわー
zipで固めてどっかのうpろだにでも上げた方がよくね?
0610nobodyさん2007/09/02(日) 23:00:17ID:???
テンプレートエンジンのsmartyを自鯖(Linux)にセットアップしてみたけど上手くいかないorz
検索するとたくさんヒットしたので試してみたけど上手くいかず
誰かセットアップ方法の解説願います
0611nobodyさん2007/09/02(日) 23:18:10ID:pKjcWHTr
>>608
なんでろだにあげなかったの?バカなの?
0612nobodyさん2007/09/02(日) 23:38:24ID:O0vZytK1
http://www.mywave.co.jp/~ike50/chapter5.zip
UPしました。
よろしくお願いします。
0613nobodyさん2007/09/02(日) 23:38:49ID:???
>>612
めんどいからみないよ
0614nobodyさん2007/09/02(日) 23:40:52ID:???
>>610
セットアップというか
Smarty.class.phpをincludeする
$smarty = new smarty;
$smarty->template_dir = "./templates/";
$smarty->template_c = "./templates_c/";
みたいに宣言する

./templates/ 内にテンプレートファイルを作成する。
./templates_c/ のパーミッションを707や777にする

PHPファイルで
$smarty->display("template.html");
のようにテンプレートを指定して表示する。
0615nobodyさん2007/09/02(日) 23:40:55ID:pKjcWHTr
本丸写しかよ
本作ったトコにでも聞け
自分で作れないうちは会社で運用なんてすんな
0616nobodyさん2007/09/02(日) 23:43:46ID:???
>>612
とりあえずショートタグ「<?」は推奨されないからやめとけ。
最近のPHPのデフォルトじゃ動作しない可能性がある。
正しくは「<?php」と書く。
0617nobodyさん2007/09/02(日) 23:48:36ID:???
>>612
ちなみにこれ、最初に表示されるページはどれ?
あと ktouroku.php はPHPコードを含んでないようだけど、これも表示されないの?
0618nobodyさん2007/09/03(月) 00:10:05ID:???
>>616
> とりあえずショートタグ「<?」は推奨されないからやめとけ。

それよく聞くんだけど、この前理由を探したんだけど
よくわからなかった。なんで?

あとショートタグは<?=とは違うんだよね?
こっちは使っていいの? 単純に変数の内容を表示するだけなら
タイプ数が減っていいんだけど。
0619nobodyさん2007/09/03(月) 00:17:29ID:KucjbbQW
最初はktouroku.phpです。
これは表示されます。
それ以降が表示されません。
<?phpって
<?でいいのかな?
0620nobodyさん2007/09/03(月) 00:17:43ID:???
>>618
「<?=」もショートタグの1種。これは「<?php echo 」の省略形。

ショートタグはPHPしか使わない環境であればそれほど困らないけど、
XMLなどの他にも「<?***」形式の特殊タグを使うシステムが混在すると
「<?」だけでPHPと認識することはできなくなるので、将来性・拡張性に欠ける。
特に昨今はXMLとの混在環境も増えてきているので推奨されないというわけ。

その辺をきちんと意識して設計できる上位の人間なら好きにすれば、ってとこだが
分かってもいないのにその環境に慣れてしまうのは教育上よろしくないかと。
0621nobodyさん2007/09/03(月) 00:25:41ID:???
>>619
ktouroku2.phpを呼び出すと何も表示されない、ってこと?
ちなみにURL直打ちでktouroku2.phpを呼び出しても真っ白?
require('./include/init.inc');
の行を
//require('./include/init.inc');
とコメントアウトしてみたらどーなる?

ところで凄い気になるんだが、
<meta http-equiv=content-type content="text/html;charset=euc-jp">
とEUC-JP指定してるようだがソースはSJISで書かれてるよな。
これは本当はどっちにしたいんだ?
0622nobodyさん2007/09/03(月) 00:36:02ID:KucjbbQW
真っ白です
やってみました。
ktouroku2.phpが表示されました。
でも登録画面のktouroku3.phpはだめでした。
EUCでやりたいです。
このソースの書き方ではだめなの?

0623nobodyさん2007/09/03(月) 00:38:21ID:???
>>620
あー。やっぱり人間(コンピュータも?)の混乱が理由なのね。
もっと重大な、セキュリティ上の問題があるのかと思っていた。

<?=もやっぱり使っちゃだめなのだろうか?
php以外でこれ使うやつある?

まあ、phpだとわかりにくいが理由なら
その理由には納得するから、大きなプロジェクトでは
<?=も使わないけどね。

ただ、セキュリティ上の問題がないのなら、
個人的な小さなツールやテスト的になら使うけど。
0624nobodyさん2007/09/03(月) 00:39:08ID:KucjbbQW
ktouroku3.phpもrequireの部分をコメント
アウトしたら表示されました。
どうしたらいいのでしょうか?
0625nobodyさん2007/09/03(月) 00:40:12ID:???
>>622
つまりini.incの実行で失敗してるわけだ。
こいつの内容は
$con = pg_connect("dbname=touroku");
とDBに接続してるだけなんだが、ちゃんとDBは用意されてるのか?

まずDBのアクセスだけの実験プログラムを作って
テストしてみた方がいい。
このプログラムだと接続失敗時はエラー表示がされるはずだが
それすら出てこないとなるとタイムアウトを起こしてる可能性が高い。
接続先のDBサーバー自体が正常動作してない可能性もありうる。

>EUC
だったらまずEUCのテキストが書けるまともなテキストエディタを用意すれ。
0626nobodyさん2007/09/03(月) 00:42:52ID:???
>>623
人間は別に混乱しない。コンピュータが混乱するので使えない。
「<?=」は他に無いというか、これも「<?」までの時点でPHPかどうかを判定できないと
PHPに処理を回せないので結局使えない。
セキュリティ的な問題はないと思うので、ちゃんと理解して使う分には問題ないかと。
0627nobodyさん2007/09/03(月) 00:47:21ID:???
<?=使ったことないけどなんでみんなこれ使うの?
0628nobodyさん2007/09/03(月) 00:50:43ID:???
楽だから。
余計な単語が混じらずほとんど変数埋め込み気分で使えて見やすいし。
0629nobodyさん2007/09/03(月) 00:51:01ID:???
>>627
使わない。<?=を使う時点でロジックとデザインを分離されていな糞プログラマーだから。
まぁ、趣味でやるなら別にいいけど。
0630nobodyさん2007/09/03(月) 00:54:50ID:???
ロジック混在??
<?php if() 〜 ?> とかならともかく、<?=変数?> だけならテンプレのパラメータ埋め込みと一緒だぞ。
それをロジックが分離されてないと思うのは単なる脊髄反射思考だろう。
0631nobodyさん2007/09/03(月) 00:56:55ID:kOE1ZsUi
PHP初心者です。
サーバーはxamppを使っています。
mysqlを使わずにindex.php , archive.php , post.phpの3つで
フォーム入力、提出(post.php)すると、自動的にfilesにタイトル.txtを作って保存
(index.php)では提出した記事を表示とpost.phpへのリンクと(archive.php)へのリンク。
archive.phpへのリンクはindexの画面で、記事ごとのリンクになっている。
これは可能なんでしょうか?
ついでにphpの簡単なブログのコードがあるサイト知っていたら教えてもらえませんか?
よろしくお願いします。
0632nobodyさん2007/09/03(月) 00:57:24ID:???
>>630
いや、だから趣味でやるなら別にいいって言ってんだけど。
まぁ、多少心得がある人なら{変数}とやるけどな。
0633nobodyさん2007/09/03(月) 01:02:21ID:???
>>631
大雑把すぎて何とも言えないけど、多分可能。
0634nobodyさん2007/09/03(月) 01:06:39ID:KucjbbQW
<?php
$con =pg_connect("dbname=test2");
if(!$con){
print "DB接続成功"
}else{
print "DB失敗"
}
?>
で成功と出ているんだけど実際はtest2です。
後どこ見ればいいのでしょうか?
DBもちゃんと作ってあるんですが、
0635nobodyさん2007/09/03(月) 01:08:01ID:KucjbbQW
したと上が反対です。
0636nobodyさん2007/09/03(月) 01:09:53ID:???
>>634
tourokuってDBは作ってあるの?
<?php
$con =pg_connect("dbname=touroku");
if(!$con){
print "DB接続成功"
}else{
print "DB失敗"
}
?>
を動かすと接続成功って出るの?
0637nobodyさん2007/09/03(月) 01:14:48ID:KucjbbQW
接続成功って出ます。
後プログラムのinit.incに名前とパスワードを入れたら
ほかのものも一気に表示はされるようになりましたが、
うけわたしてDB登録ができません。
0638nobodyさん2007/09/03(月) 01:17:42ID:???
>>626
> 「<?=」は他に無いというか、これも「<?」までの時点でPHPかどうかを判定できないと

「<?」までの時点でPHPかどうかを判定する方法なんてあるのかよ?w
0639nobodyさん2007/09/03(月) 01:18:47ID:KucjbbQW
またktouroku2.phpと
ktouroku3.php
はrequireをコメントアウトしないとでてこない。
ほかはでてきます。
0640nobodyさん2007/09/03(月) 01:19:47ID:???
>>631
学校の課題ですか?
0641nobodyさん2007/09/03(月) 01:20:35ID:???
>>637
DBのGRANT設定を間違ってるとかいう落ちじゃないだろうな。

ktouroku3.phpの
<a href=./kensaku.php>戻る</a><br>
下記のとおりに登録しました。<br><br>
の下辺りに
<?php echo pg_last_error($con); ?>
って1行入れたら何かエラーメッセージが出てこないか?
0642nobodyさん2007/09/03(月) 01:23:03ID:???
>>639
requireをコメントアウトしてちゃDBへの登録は絶対できないだろ…。

ktouroku2.phpの
require('./include/init.inc');
の行を
$con = pg_connect("dbname=touroku");
と差し替えたらどうなる?
0643nobodyさん2007/09/03(月) 01:23:47ID:???
>>638
だから使えないって書いてるんじゃ?
0644nobodyさん2007/09/03(月) 01:27:15ID:KucjbbQW
DBのGRANT設定だと思います。
これの意味がわからんくて。
教えてください。
nobodyとかよくわからないんです。
grant allon kaiin_id to nobodyの意味がわかりません。
入れてないのですが.....
これの説明がなかったんです。
これが原因でしょうか?
0645nobodyさん2007/09/03(月) 01:32:17ID:???
>>643
だからな。<?phpであっても、
「<?」までの時点じゃPHPかどうかは判定できないんだよ。
0646nobodyさん2007/09/03(月) 01:32:40ID:KucjbbQW
エラーはでてきませんでした。
なんにも表示されなかった。
0647nobodyさん2007/09/03(月) 01:33:19ID:KucjbbQW
学校の宿題ではないです。
0648nobodyさん2007/09/03(月) 01:38:16ID:???
>>644
PHPの前にDBの勉強してくるか、
PHPからDBを使うのをやめるかどっちかにしろ。
0649nobodyさん2007/09/03(月) 01:48:59ID:KucjbbQW
grantの設定をpublicにしました。
でも表示されません。
なんででしょうか?
0650nobodyさん2007/09/03(月) 01:57:20ID:???
<?=変数?>は普通にテンプレで使ってるなぁ。
まあ自分しか触らない奴だからいいか。
0651nobodyさん2007/09/03(月) 01:58:50ID:???
>>649
<html>
<?php
$con = pg_connect("dbname=touroku");
var_dump($con);
$sql = "insert into kaiin_table (kaiin_id,company,name,address,tel,email,password) values('1', '2', '3', '4', '5', '6', '7')";
$res = pg_query($con, $sql);
var_dump($res);
echo pg_last_error($con);
$sql = "select * from kaiin_table";
$res = pg_query($con, $sql);
echo pg_num_rows($res);
?>

これ実行したらどんな内容が表示される?(pg_connectのとこはパスとか直せよ)
0652nobodyさん2007/09/03(月) 02:15:13ID:KucjbbQW
bool(false) bool(false)
です。
0653nobodyさん2007/09/03(月) 02:24:44ID:???
>>652
DBの接続からして失敗してる。
<?php
$con =pg_connect("dbname=touroku");
if($con){
print "DB接続成功"
}else{
print "DB失敗"
}
?>
これで接続成功って出るんじゃなかったのか?
あーもー、最初からやり直し!

<html>
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL);
$con = pg_connect("dbname=touroku");
var_dump($con);
echo pg_last_error($con);
?>
これで何かエラーメッセージは出てこないか?
0654nobodyさん2007/09/03(月) 02:33:33ID:KucjbbQW
bool(false) です。
0655nobodyさん2007/09/03(月) 02:35:15ID:???
bool(false) bool(false) bool(false)です
0656nobodyさん2007/09/03(月) 02:59:45ID:???
よく馬鹿に付き合って時間無駄に消費できるな。
0657nobodyさん2007/09/03(月) 03:04:33ID:???
>>654
pg_connectのパラメータ内容を改めて再考すれ。
っつーか、コマンドラインのクライアントからは接続できてんの?これ。
0658nobodyさん2007/09/03(月) 03:17:51ID:KucjbbQW
だめだ。わかんない。どこが理由なんだろう....
接続できてない。
でもDB
<?php
$con =pg_connect("dbname=touroku");
if($con){
print "DB接続成功"
}else{
print "DB失敗"
}
?>
はOKと出る。
なぜだ?
0659nobodyさん2007/09/03(月) 03:20:58ID:???
まさかとは思うけど !$con みたいに"!"付いてないよね?if文のところ。
0660nobodyさん2007/09/03(月) 03:23:32ID:???
if文の方はどっか書き間違えてる可能性が高いから
var_dumpの結果の方を信用するのが吉。
0661nobodyさん2007/09/03(月) 03:30:18ID:KucjbbQW
<?php
$con =pg_connect("dbname=touroku");
if(!$con){
print "DB失敗"
}else{
print "DB成功"
}
?>
を動かすと接続成功って出る
0662nobodyさん2007/09/03(月) 03:47:03ID:Fj5tywcD
セッションを発行したばあい、サーバーのテンポラリディレクトリにセッションデータが作成されますが、
これは放っておいても、有効期限が過ぎれば勝手に消えるものなのでしょうか?
0663nobodyさん2007/09/03(月) 03:50:44ID:???
>>662
消える。
0664nobodyさん2007/09/03(月) 04:42:03ID:KucjbbQW
さっき別のテーブルをつくり入れようとしたんだが
エラーになった。
DBの根本的にだめなのかもしれないな。
でもまずDBを作る前にモジコードをEUCにして
テーブルを作るinsertで入力していくのだが
invalid byte sequence for encoding "EUC_JP": 0xe988
というエラーが出ます。
0665nobodyさん2007/09/03(月) 04:53:17ID:???
>>664
\xe9\x88 == '驤' // SJIS

DBの根本的にだめなのかもしれないことより
自分が何してるか根本的にわかってないことのだめなのかもしれないね。

// 何語なんだ?
0666nobodyさん2007/09/03(月) 05:37:34ID:KucjbbQW
僕のfedoracoreってUTF8がデフオルト
なんだが、それをeucに直してDBを入れていく様式
にしている。
根本的に間違っているのか、どう勉強していけばいいのだろうか?
eucとshiftjisの区別がわからないんだ。
0667nobodyさん2007/09/03(月) 05:51:43ID:KucjbbQW
なんかここ嫁。とか
こうするんだよ。とかあれぜひお願いします。
たぶん全部わかっていないと思うんですが、
ぜひご教授をお願いします。
0668nobodyさん2007/09/03(月) 06:02:19ID:???
>>667
>>1嫁。
0669nobodyさん2007/09/03(月) 06:13:11ID:???
Unix板にでもいってこれば?
だいぶそれてるし
0670nobodyさん2007/09/03(月) 06:26:48ID:KucjbbQW
1を読んでみようと思います。
今から寝ようとおもうので、ここが違うよとか
あれば至急直すので、わかった人コメントください。
0671nobodyさん2007/09/03(月) 06:45:45ID:KucjbbQW
後ほんみても本はeuc-jpがデフォルトなんだが、
俺のはUTF8でうまく入力できないんだが....
0672nobodyさん2007/09/03(月) 07:05:20ID:KucjbbQW
データベースの言語がeuc-jpが最初から書いてあって
俺のはUTF8なんだが、
それを無理やり変換してEUCで入力しようとすると、
invalid byte sequence for encoding "EUC_JP"
のエラーがでます。
0673nobodyさん2007/09/03(月) 07:23:58ID:KucjbbQW
さきほど書き忘れましたが、深夜遅くまで付き合ってくれた
方ありがとうございます。
また、意見くれた方もなんとかしたい一身でお礼の言葉
も忘れてしまいました。
立て方等ミスがありましたが、もう少しだけ教えてください。
よろしくお願いします。
0674nobodyさん2007/09/03(月) 11:44:43ID:???
php講座のサイトや本を見ると

環境変数を使うとき
$ua = $_SERVER['HTTP_USER_AGENT'];
if(!preg_match('/hoge/',$ua))

というように一度$uaなどに代入して使っている場合が多いですが
そのまま

if(!preg_match('/hoge/',$_SERVER['HTTP_USER_AGENT']))

としない理由があるのでしょうか?
0675nobodyさん2007/09/03(月) 11:46:04ID:ipYR2CKm
==とか!=とか<とか、==←こういうのを総称して呼ぶ名前って何?
0676nobodyさん2007/09/03(月) 11:50:07ID:???
>>674
多分メンテナンスとかのためじゃないかな。
たとえば、$uaに任意の値を入れてテストしたいときとか、
手間が多少違う

これはスタイルの問題だから、気にくわなければ従わなければいいだけ。
0677nobodyさん2007/09/03(月) 11:52:17ID:???
>>674
分かりやすい変数名を
タイピングの減少
くらいか?
特にこうしなければならないってわけじゃないがやると少し幸せになれるかもしれないおまじない

>>675
比較演算子
0678nobodyさん2007/09/03(月) 12:59:28ID:ipYR2CKm
>>677
>比較演算子
これって英語にすると?
0679nobodyさん2007/09/03(月) 13:00:54ID:ipYR2CKm
operatorでいいのかな?ありがとー
0680nobodyさん2007/09/03(月) 14:24:38ID:???
>>678
PHPマニュアルで比較演算子のページを英語にしたら
Comparison Operators
だったよ
PHP5.2.4が出てた
0681nobodyさん2007/09/03(月) 14:36:42ID:???
phpの掲示板の中にアクセス解析(忍者TOOL)を入れたいんですけど
javascriptを入れるとエラーになります。どうすればいいですか
06826812007/09/03(月) 14:53:02ID:???
ごめんなさい、自己解決しました。
0683nobodyさん2007/09/03(月) 14:55:14ID:???
>>674
環境変数などは繰り返し使う場合一度ローカル変数に落としたほうが
動作が早くなる
微々たる物だが・・・
0684nobodyさん2007/09/03(月) 14:57:30ID:???
>>681
もちつけ
PHPのエラーなのかjavascriptのエラーなのか
その書き方だとわからん
06856812007/09/03(月) 15:00:19ID:???
>>684
もちろんPHPのエラーでした
0686nobodyさん2007/09/03(月) 15:07:30ID:9rbjiygj
PHP+Sendmailでメールの自動返信プログラムを組みたいのですが、
メールを送り、特定のアドレスに送られたメールをhoge.phpに渡し処理させるというのを
してみたいのですが、Sendmailの設定をどのようにすれば良いのでしょうか?

Sendmailは「/usr/sbin/sendmail」のパスで通っていて使えるようです。
他に何か調べるようなことはありますでしょうか。
06876862007/09/03(月) 15:10:03ID:9rbjiygj
ちなみにメールを受けたときに実行したいので、
.forwardが使えないといけないと聞いたのですが、これが使えるかどうか調べる方法はありますか?
0688nobodyさん2007/09/03(月) 15:27:27ID:5z4DsU1G
mbを使えないサーバで、mb_detect_encoding相当の機能を実装したいんですが、
何か良いライブラリのようなものはありますでしょうか?
同梱したいので、ライセンスフリーのもの(大体そうなのかな?)がいいんですが・・・。
0689nobodyさん2007/09/03(月) 16:09:28ID:???
>>845
エラー文にはなんて書いてあるの?
おそらくそれで全て解決するんでない?

>>687
メール受信時の転送先をコマンド実行のPHP書けばOK
.forwardは鯖缶にきくのが一番早い
0690nobodyさん2007/09/03(月) 16:11:26ID:9rbjiygj
>>689
使い方は.htaccessと同じような感じでいいのですね
有難うございます
0691nobodyさん2007/09/03(月) 16:18:26ID:???
>>688
jcode.php
0692nobodyさん2007/09/03(月) 16:25:27ID:???
質問です。
PHPのページをブラウザ(IE6/火狐)で開くときに、まれに30秒〜60秒待たされます。
サーバの設定が悪いのでしょうか。ご存知の方、お願いします。
-環境-
PHP 5.2.3 ソースからコンパイル
Apache 2.0.54
Oracle xe client 10.2.0.1
OS Debian sarge
設定 ほぼ初期値
0693nobodyさん2007/09/03(月) 16:30:17ID:???
エスパーおまちしてます
0694nobodyさん2007/09/03(月) 16:31:17ID:3A8ZdpHH
文字列の入った変数を外部のサーバに送信したいんですが、どうすればできますかね?
0695nobodyさん2007/09/03(月) 16:32:15ID:???
>>688
ttp://sourceforge.jp/projects/mbemulator/
こいつはGPLなのでライセンスフリーじゃないけど。
0696nobodyさん2007/09/03(月) 16:54:06ID:???
ネットで見つけたファイルロックの例で分からない部分があります

while (!@mkdir(DE_LOCKFILE))

mkdirが成功するまでループするという意味らしいことは分かるのですが
@は何ですか。どういう意味があるんですか?
php @ で検索しても要領を得ないので教えてください
0697nobodyさん2007/09/03(月) 17:02:39ID:???
>>696
>>4
06986962007/09/03(月) 17:03:28ID:???
自己解決しました。
マニュアルに書いてました
0699nobodyさん2007/09/03(月) 17:04:41ID:???
>>697
どうもありがとうございます
0700nobodyさん2007/09/03(月) 17:13:26ID:???
mkdirが成功するまでループする処理とかってどんだけ・・・
0701nobodyさん2007/09/03(月) 17:27:07ID:???
権限がなければ実質無限ループかあ
0702nobodyさん2007/09/03(月) 17:43:59ID:???
@はPHPで最もコストの高い文字
0703nobodyさん2007/09/03(月) 17:52:32ID:???
ftp関数と
HTTP_Download あたりで
FTPサーバのデータを
直接ブラウザからダウンロードできるようにできないでしょうか。

現在は、
ftp_get で一旦サーバにダウンロードしてから
それをHTTP_Download で指定してダウンロードしてます。
ファイルを一旦サーバに落として、
ではなく、あくまでPHPはデータを
左(FTPサーバ)から右(ブラウザ)へ受け流す、
という感じでいきたいのです。
0704nobodyさん2007/09/03(月) 17:54:03ID:???
>>703
>>1
0705nobodyさん2007/09/03(月) 17:54:51ID:???
HTTP_Download使ってるくせにFTPからダウンロードしたいってどんだけ〜
0706nobodyさん2007/09/03(月) 17:55:43ID:7Ly2K7mT
ftp関数と
HTTP_Download あたりで
FTPサーバのデータを
直接ブラウザからダウンロードできるようにできないでしょうか。

現在は、
ftp_get で一旦サーバにダウンロードしてから
それをHTTP_Download で指定してダウンロードしてます。
ファイルを一旦サーバに落として、
ではなく、あくまでPHPはデータを
左(FTPサーバ)から右(ブラウザ)へ受け流す、
という感じでいきたいのです。
0707nobodyさん2007/09/03(月) 18:05:50ID:kOE1ZsUi
初心者です。
タイトルと文の2つのフォームがあって、提出ボタンを押すと
自動的に毎回タイトル.txtを作るにはどう書いたらいいんでしょうか?
0708nobodyさん2007/09/03(月) 18:10:02ID:???
>>707
とりあえずどの程度まで出来ているのか書け

$name = "自動的に毎回タイトル.txt";

fopen($name, "w");
0709nobodyさん2007/09/03(月) 18:10:48ID:???
fwrite
0710nobodyさん2007/09/03(月) 18:20:02ID:9rbjiygj
Smartyをインストールしたのですが、

#Smartyクラス用の定義
$smarty->template_dir = "テンプレートフォルダ";
$smarty->compile_dir = "コンパイルフォルダ";
$smarty->cache_dir = "キャッシュフォルダ";

と書いてあるのですが、各フォルダが見つかりません
自分で作成するものなのでしょうか?
0711nobodyさん2007/09/03(月) 18:22:15ID:???
>>710
そうだよ。つーか実行して試すなり、解説サイト見たほうが早いだろ。
0712nobodyさん2007/09/03(月) 18:27:06ID:kOE1ZsUi
>>708
今作っているのは、post.phpで、上の2つのフォームがあって
提出すると、タイトル(例:今日の晩御飯)に.txtをつけたファイルが
自動的にサーバーのfilesの中に作られる。
そして、次に作りたいのがメイン画面(index.php)で。それぞれのファイルへのリンクが表示され、
クリックするとその記事のみが表示される(archive.php)。
メイン画面にはその他にも最新の記事10個が上から順番に表示され、その下にはpost.phpへのリンクがある。

post.phpは最初からファイルを作っておけばそこに追加できるんですが、新しいファイルを記事ごとに
作る方法がわかりません。
そして、index.phpはデザインはできるんですが、postへのリンクと、archive.phpへのリンクの作り方が今いち。
結局ほとんどわかってないんですが、海外なもので日本語の本を探せず、困ってます。
0713nobodyさん2007/09/03(月) 18:28:58ID:???
>>712
意味がわからん
フォーム入力してpost.phpにデータを送信するのはできるの?
0714nobodyさん2007/09/03(月) 18:30:27ID:???
>>706
FTP関数じゃムリじゃないかな。
curlならいける。
HTTP_Download を使うのもAPI的にムリっぽい。
でも中身のファイルを読む部分をオーバーライドすりゃいいだけだね。

ていうか、単純にHTMLリンクをつかえばいいと思うが。
0715nobodyさん2007/09/03(月) 18:38:26ID:???
>>713
post.phpにフォームがあるんです。
そしてフォーム入力して送信すると、2つあるフォームのうち
タイトルがファイル名の.txtの前に自動的に行くようにしたいんです。
しかも、毎回送信するたびにタイトル.txtは作られます。
0716nobodyさん2007/09/03(月) 18:40:28ID:???
お前が勝手に作ったファイル名をくだくだ言われても分わかんねーよ。
もっと一般化して質問しろ。
0717nobodyさん2007/09/03(月) 18:41:26ID:???
>>715
とりあえず質問している間は常にID出しておけ

post.phpからどこにフォームのデータを送信するの?
タイトルがファイル名意外の.txtは作れるの?
ってか、ファイルを作る方法知ってるなら名前自分で決めてるの知ってるよな
0718nobodyさん2007/09/03(月) 18:42:47ID:EPVlEXdm
PHP5 + firebird2 on Apache2(win)

ibase_fetch_object で BLOB を含む SQL を実行すると、

Warning: ibase_fetch_object() [function.ibase-fetch-object]: conversion error from string "BLOB" in hogehoge.php on line 1183

と言われて失敗する。
マジ助けてくれ・・・

ちなみにSQLは単純なSELECT。
0719nobodyさん2007/09/03(月) 18:44:25ID:???
>>718
「予約語」でググれ
0720nobodyさん2007/09/03(月) 18:46:54ID:???
>>716
タイトルフォーム
本文フォームがあって
データ送信はできるんですが、タイトルを使ったファイルの作り方がわからないんです。
07217182007/09/03(月) 18:52:08ID:EPVlEXdm
>>719
即レスthx!!

どこで予約語使ってるのかまったく不明・・・

SELECT IDXTEXT FROM HOGETABLE WHERE UPPER(IDXTEXT) LIKE UPPER('%hoge%')

上の IDXTEXT が BLOB(string) なんだけど、もしかして LIKE だめ?
0722nobodyさん2007/09/03(月) 18:53:34ID:???
>>721
http://www.hitachi.co.jp/Prod/comp/soft1/manual/pc/d635700/W3570234.HTM
0723nobodyさん2007/09/03(月) 18:58:34ID:???
>>720
http://jp.php.net/fopen
で作れる
07247182007/09/03(月) 19:01:38ID:EPVlEXdm
>>722
thx!!

ただ・・・俺は本気で頭が悪いようだ。
何が問題なのかまったくわからん。
IDXTEXT は問題ないみたいだし、LIKE も単純な演算子だし UPPER は関数だし・・・

頼む答えを教えてくれ><
0725nobodyさん2007/09/03(月) 19:05:01ID:KucjbbQW
608です。
http://pc11.2ch.net/test/read.cgi/php/1188731930/
を削除依頼出しておきました。
もっと勉強をしてわからないところを
きちんとわかってから質問できるようにしたいと思います。
昨日、今日とすいませんでした。
0726nobodyさん2007/09/03(月) 19:10:21ID:ZgE8wfr0
ファイルロックってどちらにしてます?

A,

while(file_exists($lf)){
sleep(1);
}
mkdir($lf,0755);

B,

while(mkdir($lf,0755) === false){
sleep(1);
}
07277182007/09/03(月) 19:11:41ID:???
自己解決しますた。

BLOB に対し UPPER(BLOB) はサポートされてなかった・・・
INSERT 時に UPPER することにした。

スレ汚しスマソ。
0728nobodyさん2007/09/03(月) 19:20:10ID:???
>>726
C.
flock
0729nobodyさん2007/09/03(月) 19:34:50ID:LZnRmggr
>>728
それだとwで開いた時にデータが空になりますし
r+で開くとゴミに注意しないといけない。
0730nobodyさん2007/09/03(月) 20:11:16ID:???
( ゚д゚ )
0731nobodyさん2007/09/03(月) 20:13:17ID:???
>>729
( ゚д゚ )
0732nobodyさん2007/09/03(月) 20:17:11ID:???
>>729
なんのためにflock関数があると・・・
0733nobodyさん2007/09/03(月) 20:18:42ID:M+H83k8j
>>726
mkdirは時間がかかるから使えないだろ
0734nobodyさん2007/09/03(月) 20:23:24ID:LZnRmggr
あれ、flockって窓とかマルチスレッドだと使い物にならなかった記憶があるけど
今はそんな事ないのかな?
0735nobodyさん2007/09/03(月) 20:34:28ID:???
>>734
flock()により、(ほとんどのUNIXやWindowsさえ含む) ほとんど全てのプラットフォームで使用可能な簡易な読み手/書き手モデ ルが実現されます。
0736nobodyさん2007/09/03(月) 20:58:50ID:???
いろいろ見てきました。API以外は関係ないみたいですね。

基本的には読み書きに関わらずfopenする度にflock($fp, LOCK_EX); とすれば良いのかな。
掲示板などの処理だとそうなりますよね?。
0737nobodyさん2007/09/03(月) 21:39:44ID:???
名前付きのミューテックス使え
0738nobodyさん2007/09/04(火) 00:40:49ID:???
>>614
返信が遅くなって申し訳ない&レスありがとう
こちらの書き方に問題があったようで、実はそのレベルには達してなかったりしますorz
ただ今後必要になると思うので、参考にさせてもらいます。

セットアップと言うかインストール自体出来てなかったのですが、↓を参考に一応インストールだけは出来たようです。
ttp://www.zend.co.jp/tech/index.php?PHP%A5%A2%A5%D7%A5%EA%A5%B1%A1%BC%A5%B7%A5%E7%A5%F3%2FSmarty%2F002%20%C6%B3%C6%FE

また分からない事があったらご指導ください。
0739nobodyさん2007/09/04(火) 01:28:40ID:???
うぷろだを作成してるのですが、
ダウンロード機能をつけるのに一つ懸念があります。
ダウンロードするファイルに対するエスケープ?処理のような
ものを行なわなくてもいいんでしょうか。
ダウンロード時にXSSのように働くデータをアップされて、
それをダウンロードすると・・・・
みたいな心配はしなくてもいいんでしょうか。

ほかのうpろだのソースを見た限り、特にこの点を心配している
様子がないのですが。
0740nobodyさん2007/09/04(火) 01:42:34ID:???
> ほかのうpろだのソースを見た限り、特にこの点を心配している
> 様子がないのですが。
どうせ知らないだけ。

http://internet.watch.impress.co.jp/cda/news/2004/08/03/4124.html
http://slashdot.jp/security/05/05/19/088246.shtml
0741nobodyさん2007/09/04(火) 02:10:38ID:bPRYri3Q
phproxy を、ブラウザからではなく、コマンドラインからアクセス出来るようにする事はできますでしょうか?

環境は、php 5とMAC OS X SERVER 10.3です。

宜しくお願いいたします。
0742nobodyさん2007/09/04(火) 02:30:42ID:???
Macだからだめだなw
0743nobodyさん2007/09/04(火) 02:35:25ID:bPRYri3Q
>>742

ご回答ありがとうございます。MACからじゃ駄目ですかorz
0744nobodyさん2007/09/04(火) 04:06:26ID:9L3FCPFc
PHPってPerlと違ってflockしなくてもPHPが保証してくれるんじゃなかったっけ?
最近はデータをDBに格納するのが当たり前になってきたから、それで悩まないけど。
0745nobodyさん2007/09/04(火) 04:21:41ID:???
>>744
SQLiteか何かを使ってる場合と混同してない??
0746nobodyさん2007/09/04(火) 04:24:50ID:???
PDO::prepare()の説明に、

>プリペアドステートメントに渡すパラメータは、引用符で括る必要は ありません。
>それはドライバが自動的に行います。 アプリケーションで明示的にプリペアドステートメントを使用するように
>すれば、SQL インジェクションは決して発生しません

とあるんですけど、mysql_real_escape_stringをしなくても問題ナッシング。
つう解釈でokなんですか?
0747nobodyさん2007/09/04(火) 05:12:23ID:E1xjDifv
---------------------
if($esse == 1) {
$flag = 0;
$length = count($eles) - 1;
foreach($_POST as $key=>$var) {
$key = strtr($key, $string_from, $string_to);
if($var == "eweb_submit") ;
else {
for($i=0; $i<=$length; $i++) {
if($key == $eles[$i] && empty($var)) {
$errm .= "<FONT color=#ff0000>「".$key."」は必須入力項目です。</FONT><BR>\n";
$flag = 1;
}
}
}
}
---------------------
フリーのメールフォームのソースなのですが、
ここの中の
if($var == "eweb_submit") ;
else {
ってどうゆう意味でしょうか・・・
$varがeweb_submitならその下のelseの中を実行する・・・ってことでしょうか?
0748nobodyさん2007/09/04(火) 05:36:20ID:???
>>747
逆。$varがeweb_submitじゃないときにその下のelseの内容を実行する。
if($var != "eweb_submit"){
と同義。
0749nobodyさん2007/09/04(火) 09:21:07ID:???
PHPってperlのmy関数みたいなのってないの?
0750nobodyさん2007/09/04(火) 09:24:06ID:???
>>749
普通に書いていればmyみたいなもの
0751nobodyさん2007/09/04(火) 09:34:16ID:???
なるへそ。グローバルのやつだけ明示的にすればいいわけね。
0752nobodyさん2007/09/04(火) 10:14:43ID:???
昨日NHK特集で総務の仕事を中国では時間換算(人件費・経費込み込み)で650円でやるらしいが、
日本じゃ時間換算で5000円も掛かるらしい。

phpを仕事でやっている奴は、もう駄目だなぁ。
総務の非定型な仕事に比べて、日本語ができなくて誰でも手軽にできるphpじゃ、中国人なら500円位でやりそうだ。
0753nobodyさん2007/09/04(火) 10:16:59ID:???
中国人が売り込みに必死だなw
0754nobodyさん2007/09/04(火) 10:21:30ID:???
中国人PGって多いのかな。意外に今まで聞いたことなかったけど。
07556752007/09/04(火) 10:22:38ID:9L3FCPFc
昨日、比較演算子について聞いたもんです。その節はどうも。
今日は新しいクエスチョンについて教えて下さい。

if( $a and $b) continue;

↑このandですが(orの場合もあり)、and や or は総称して何と呼べばいいんでしょうか?
英語での呼び方もついでにお願いします。
07566752007/09/04(火) 10:25:10ID:9L3FCPFc
そういえば、以前、あるプロジェクトの発注を中国にしたことがあります。
でも日本のベンダーが間に入っていたので、発注額としては普通に安いくらいだった。
間に入ったベンダーが儲かってるんだろうなぁ。
0757nobodyさん2007/09/04(火) 10:29:05ID:???
>>755
http://jp.php.net/operators
0758nobodyさん2007/09/04(火) 10:32:42ID:???
>>755
これからずっと質問していくつもりか
前回の質問でヒント出したんだからマニュアル見るとか検索するとかしましょうよ
0759nobodyさん2007/09/04(火) 10:33:57ID:???
数年前からoffshore開発は言われ続けているけど、
業界全体として未だにメジャーにはなっていない。
昨今の技術者不足で単金が下がる所か上がっているしw
0760nobodyさん2007/09/04(火) 10:39:41ID:???
中国人は金儲けなら良い意味でも悪い意味でもなんでもする人間だよ。
日本では犯罪や、日本人が嫌うようなやり方で金儲けてる輩が目立つけど、
あれだけ人口がいれば多種多様なわけで、真剣に頑張ってるやつもいる。
ハングリー精神じゃないけどね。
そういうわけで学校すらいけなかったなんていう貧困層でも、
ちゃんと教えれば真剣にやって、そこそこ使えるようになるのが中国人。
これは貧困層の話だけど、中級層↑では学術機関で学んだハッカーもたくさんいる。
日本人相手にウイルスばら撒いたり、巨大な著作権違反SNSみたいのを開設したりするのは、
わりとこういう階級の人間。
07616752007/09/04(火) 10:40:03ID:9L3FCPFc
おーマニュアルみてなかったよーサンキュ−
0762nobodyさん2007/09/04(火) 10:41:22ID:???
つまり>>1の1行目すら読んでいなかったということか
おとといきやがれ
0763nobodyさん2007/09/04(火) 12:40:03ID:???
>>761
少しは反省しようよ。
0764nobodyさん2007/09/04(火) 12:48:17ID:???
>>739
うpされたデータをあくまでも意味づけのないバイナリデータとして
扱ってる限り問題は特に問題はないよ。ただ勝手に意味があるものとして
処理してしまうブラウザとかがあるが。
0765nobodyさん2007/09/04(火) 13:47:51ID:kR6gSNsI
ftp_putでサイズに上限ってありますか?
10Gを超えるファイルを実行するとfalseを返して終了してしまいます。
300M程度のファイルを実行するとうまく行ってるのですが・・。
0766nobodyさん2007/09/04(火) 14:42:53ID:t7FQpoBy
forwardの質問はどこですればいいですか?
0767nobodyさん2007/09/04(火) 15:33:38ID:???
>>726
安全なmkdir

アクセスが以上に多くなければflock
0768nobodyさん2007/09/04(火) 15:35:48ID:???
>>739
昨日のftpとhttp_downloadの質問したやつか
idだしましょうね
0769nobodyさん2007/09/04(火) 15:51:51ID:???
>>766
MTAのフォワードの設定と仮定すると、
Unix板のくだ質か、該当のMTAスレじゃないかな。
0770nobodyさん2007/09/04(火) 15:55:05ID:t7FQpoBy
>>769
サンクス
いってまいります
0771nobodyさん2007/09/04(火) 16:22:15ID:t7FQpoBy
Unix板、この板より人少ないのかな・・・
0772nobodyさん2007/09/04(火) 16:29:07ID:???
少ないよ 笑
0773nobodyさん2007/09/04(火) 16:30:28ID:t7FQpoBy
そか、気長に回答待つか・・・
それまでに自己解決できれば理想なんだが・・・
0774nobodyさん2007/09/04(火) 17:46:28ID:???
windowでphpを始めて
ブラウザで動作確認をしているのですが
エラーメッセージは何処で確認できるのでしょうか
上手く動いていなくても空のHTMLのページが表示されるだけで
何が悪いのか分からないのですが
0775nobodyさん2007/09/04(火) 17:56:54ID:???
>>774
とりあえず、サーバーのエラーログを見てみようとか思いませんか?
0776nobodyさん2007/09/04(火) 17:57:00ID:jHnRn6Rz
sleep 関数 についてですが、

hoge.htmlに以下を記述
$i =0;
while($i < 500){
sleep(10);
$i++;
}

とした場合 hoge.html を 10秒ごとに 500回アクセスするのと、サーバーへの
負荷は変わらないのでしょうか。
0777nobodyさん2007/09/04(火) 18:08:35ID:???
>>776
何がやりたいかよくわかりませんがたぶん10秒リロードが必要なのでしょう。
そう仮定するとsleepは負荷以前に目的に合わないはずです。
0778nobodyさん2007/09/04(火) 18:08:56ID:???
>>775
サーバーのエラーログは何処にありますか
0779nobodyさん2007/09/04(火) 18:45:16ID:EHN55NHE
phpのsystem()関数について教えて下さい。

やりたいことは、
・ブラウザは web serverを稼働させる端末でのみ動作させる を条件で、
 動作中のブラウザ(自身)を終了させたいのですが。

 ボタンクリックで system( "ABC" ); を起動します。
 コマンドABCは ブラウザのpid を調べてkillする Cで記述したプログラムです。

コマンド自体は実行されるのですがブラウザが死にません。
コンソールから ABC を実行するとkill出来ます。
実行ユーザーは同じです。

PHP-4.3.9

よろしくお願いします。
0780nobodyさん2007/09/04(火) 18:48:40ID:5f+cO2zZ
あるpearのクラス(B)を別のクラス内(A)で継承して使用したいのですが、
Aクラスの中で使用した変数をBクラスへ渡す方法が分かりません。

PHP4 / linux です。
どなたかヘルプミー
0781nobodyさん2007/09/04(火) 18:58:34ID:???
>>774
htmlじゃないんだからデバッガーつきのIDEで開発して下さい
0782nobodyさん2007/09/04(火) 19:48:20ID:???
>>774
php.iniの
error_reporting = E_ALL
にすれば出るはず
0783nobodyさん2007/09/04(火) 20:46:49ID:???
>>780
AでBを継承したのにAの変数をBに渡すってどういうこっちゃ。
「A内で」とか書いてるのを見るとまぁ継承じゃないんだろうが。
0784nobodyさん2007/09/05(水) 00:50:24ID:MdOFDt2P
16進数文字列(ffe1aa8033…)をバイナリ文字列にする
いい方法を教えて下さい
0785nobodyさん2007/09/05(水) 00:56:10ID:???
>>782
display_errors=ON
からじゃね?
0786nobodyさん2007/09/05(水) 01:59:28ID:???
>>779
>>1

勝手に推察するが、WinでApacheのNTサービスが相手なら、
サービスじゃなくすか、コンピュータの管理のサービスで、
「デスクトップとの対話をサービスに許可」してやってみれ
0787nobodyさん2007/09/05(水) 02:00:00ID:???
>>784
pack('H*','ffe1aa8033')
0788nobodyさん2007/09/05(水) 02:07:30ID:???
>>776
sleep中は負荷がないとでもいいたいのかね、きみ
0789nobodyさん2007/09/05(水) 02:09:06ID:???
>>787
こりゃいいですね
ありがとうございました
0790nobodyさん2007/09/05(水) 02:14:37ID:???
>>789
感謝しろよ
0791nobodyさん2007/09/05(水) 02:19:27ID:???
なんかずいぶん上から目線なやつが沸いてますね^^;;;;;;;
0792nobodyさん2007/09/05(水) 02:23:03ID:???
配列の値は何でも入りますが
キーにも何入れてもいいのでしょうか?
たとえばリソースやオブジェクト等を入れても問題ないですか?
0793nobodyさん2007/09/05(水) 02:41:40ID:???
>>792
ダメ。整数か文字列。

#マニュアルより
配列またはオブジェクトをキーとして使用することはできません。 これを行なうと、warning: Illegal offset type を発生します。
0794nobodyさん2007/09/05(水) 02:48:10ID:???
>>793
そんな表層的な回答じゃなくて、もっと本質を突く回答をしろよ。
0795nobodyさん2007/09/05(水) 02:56:19ID:QMlng57L
ディレクリー内のファイル数を取得する関数はありますか?

自作はできたのですができれば効率が悪すぎて実用的ではありません。
$dir = dir('hoge');
$cnt = 0;
while($file = $dir->read()){
 if($file!='.'||$file!='..') $cnt++;
}
echo $cnt;
0796nobodyさん2007/09/05(水) 03:16:21ID:???
count(glob("hoge/*"));
0797nobodyさん2007/09/05(水) 04:06:24ID:???
ひさしぶりに公式見に行ったら5.2.4でてたのか
バグ修正だけだね
0798nobodyさん2007/09/05(水) 04:09:32ID:???
来年はPHP4のバージョンアップがなくなるから
4つかってるひとはいまのうちに5に移行したほうがよさげね。
0799nobodyさん2007/09/05(水) 05:45:15ID:???
バージョンアップしなければいいだけじゃね
0800nobodyさん2007/09/05(水) 06:44:55ID:???
それより6の正式リリースはまだか
0801nobodyさん2007/09/05(水) 06:52:30ID:???
PHP3使ってる俺には関係ない話
お前らも悟ればおk
0802nobodyさん2007/09/05(水) 09:46:04ID:HTNqPBp7
sage
0803nobodyさん2007/09/05(水) 09:48:40ID:HTNqPBp7
>>781
phpごときにIDEなんて必要?
で、PHPのIDEってDWのこと?Eclipceのこと?その他?
0804nobodyさん2007/09/05(水) 10:04:48ID:???
ミスをなくすためにもIDEを使うのは至極当然
DWはPHPのIDEとしては機能的に弱い
俺はEclipse使ってるが他者は知らない
専スレがあるからそれみてどれ使うか決めればいい
http://pc11.2ch.net/test/read.cgi/php/1154082822/
0805nobodyさん2007/09/05(水) 10:06:07ID:???
てか、何処でエラーが出ているのかわからんような奴に手書きができるわけないだろw
0806nobodyさん2007/09/05(水) 11:01:56ID:HV9qeu+U
データをダウンロードさせて、
完了した時点で、削除、という処理をしたいのですが、
どうもうまくいきません。
データ自体が正常にダウンロードできておらず、
例えば、画像だと1/10程度が表示され、残りが壊れているような
感じの画像としてダウンロードされます。容量も本来の
10分の1程度になります。

なんとなくダウンロードしきる前に削除しちゃってる気がします。

クライアント側でデータのダウンロード・取得が完了、
というのをサーバ側で判断したりすることは可能なのでしょうか。

ちなみに8kb以下程度なら正常にダウンロード・削除できます。

または別解決方法がありましたらおながいします
0807nobodyさん2007/09/05(水) 11:45:36ID:HTNqPBp7
>>804
Eclipceはiアプリの開発で使ってたから、PHPでも使えると聞いて、早速
Eclipceでやってみようと思ったけど、設定が多すぎてその時点で嫌になった。
Perlで苦労した俺からしたら、PHPなんて楽チン過ぎて、これ以上なにを求める?!
って感じなんですが。
0808nobodyさん2007/09/05(水) 11:46:26ID:???
ファイルのアップロードでmove_uploaded_fileではなくcopyでファイルを取ると
環境によっては取れない事があるんだっけ?
0809nobodyさん2007/09/05(水) 12:12:04ID:???
>>806
ダウンロードさせて、っていうことは、
ファイルシステム上に直接ファイルを作成して、それを参照させてるってこと?

PHPで直接データを送ればいいんじゃないの?
やることは適切なContent-Type: ヘッダをを渡すことだけ。

0810nobodyさん2007/09/05(水) 12:23:04ID:???
>>806
Ajaxをトリガーにして削除ってのが簡単カモネ
0811nobodyさん2007/09/05(水) 13:37:39ID:???
strposのサーチ対象の文字を複数("/" or "("など)にしたいんですが
そういう関数ないですか
0812nobodyさん2007/09/05(水) 13:40:13ID:???
正規表現
0813nobodyさん2007/09/05(水) 13:48:31ID:iFbT+y59
レン鯖のPHP実行ファイルまでのフルパスってどうすれば確認できますか?
phpinfo()でそれらしい設定が見つからなかったのですが・・・
0814nobodyさん2007/09/05(水) 14:28:23ID:vAG+Wys0
掲示板みたいなものを作るときテキスト保存で、
httpを含むその行の文字列をアンカーリンクとするようにしたいのですが、
何か巧い方法を教えていただきたいです
0815nobodyさん2007/09/05(水) 14:29:48ID:???
>>814
正規表現
0816nobodyさん2007/09/05(水) 14:30:19ID:???
>>813
1、鯖かんに聞く
2、dirname(__FILE__)
3、あきらめる
すきなものを選べ
0817nobodyさん2007/09/05(水) 14:33:06ID:vAG+Wys0
すみません、自己解決いたしました。
ありがとうございます
08188082007/09/05(水) 14:48:19ID:???
すまん、気づいたらいた違いの質問だったな。
0819nobodyさん2007/09/05(水) 14:52:06ID:???
あ、思い出した、。あの時はSELinux絡みで設定しなおしたんだった

>>818
貴方は誰ですかw
0820nobodyさん2007/09/05(水) 16:01:49ID:x3JtEU0u
<input type="text" name="name" value="<b>" />

valueの<b>という値はXSSが起こりうるのでしょうか?
一応確認してみたのですが、この行以降の文字は太文字にはなりませんでした。
0821nobodyさん2007/09/05(水) 16:05:00ID:???
htmlのお約束を覚えろ。
0822nobodyさん2007/09/05(水) 16:10:26ID:x3JtEU0u
XSSの心配がないので<の無害化などはしないでこのままにします
0823nobodyさん2007/09/05(水) 18:57:53ID:6UMtGkQv
PHPで掲示板のスレタイだけ抜き出して、フラッシュに文字を渡そうとしてます。
やってみたら、文字コードのフォーマット?か何かが違ってるぽいです。
PHPで出力文字列をunicodeにするにはどうすればいいですか?
0824nobodyさん2007/09/05(水) 19:09:38ID:???
>>823
mb_convert_encoding( )
08258232007/09/05(水) 19:15:51ID:6UMtGkQv
$s = mb_convert_encoding($s, "unicode");
やっぱこれじゃダメですか

文字コードの知識が全然無い俺
unicodeは何て指定すればいいんですか
0826nobodyさん2007/09/05(水) 19:29:01ID:???
>>825
unicodeは、UTF-7,UTF-8,UTF-16,UTF-32と色々バリエーションがあるし、
さらにそのサブセットもあるから、detectして文字コードの種類を調べるのが先。
0827nobodyさん2007/09/05(水) 19:40:57ID:???
>>820
<input type="text" name="name" value="ココ" />
ってことだろ?
" /><script>alert("XSSですけど?")</script> <a href="
って値を入れてみようか。

<input type="text" name="name" value="" /><script>alert("XSSですけど?")</script> <a href="" />
駄目じゃね?
0828nobodyさん2007/09/05(水) 19:47:01ID:???
>>825
多分
$s = mb_convert_encoding($s, "utf-8", "sjis");
08298232007/09/05(水) 20:05:18ID:6UMtGkQv
>>828さんの方法でできました!

皆さんありがとうございました。
0830nobodyさん2007/09/05(水) 20:49:40ID:9ANsBxrb
質問させてください。

◆やりたい事
・phpの中にindex.tplを表示する場合とend.tplを表示する場合の条件を記述したい。
・普通にphpにアクセスした時はindex.tplを表示させたい。
・end.tplはテキスト入力欄に入力した状態で登録を押した時に表示させたい。
・現状は分岐のさせ方が分からないため、index.tplの内容を表示し、その下にend.tplの内容が表示されてしまいます。

◆環境
CentOS 4 & PHP 4.3.9

◆index.php
<?php
require'Smarty/Smarty.class.php';
function get_smarty_object(){
$smarty = new Smarty();
$smarty->template_dir = "tmp/templates/";
$smarty->compile_dir = "tmp/templates_c/";
return $smarty;
}
$smarty = get_smarty_object();
// ここに何かしらの分岐を書く必要があると思いますが、書き方が分かりませんでした。
$smarty->display( "index.tpl" );
// ここに何かしらの分岐を書く必要があると思いますが、書き方が分かりませんでした。
$smarty->display( "end.tpl" );
?>
0831nobodyさん2007/09/05(水) 20:50:52ID:9ANsBxrb
>>830の続きとなります。
◆index.tpl
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd";>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<title>月入力前</title>
</head>
<body>
<form method="post" action="index.php">
<input name="month" type="text">月<br>
<input name="submit" type="submit" value="登録">
</form>
</body>
</html>

◆end.tpl
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd";>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<title>月入力後</title>
</head>
<body>
<form method="post" action="index.php">
{$month}月が入力されました。<br>
<a href="index.php">戻る</a>
</form>
</body>
</html>
0832nobodyさん2007/09/05(水) 20:54:04ID:???
まずはHTMLのフォームについて勉強したほうが
0833nobodyさん2007/09/05(水) 20:56:17ID:Owa32j3Y
全角「ABC」という文字列をgoogleに与えるキーワードとして
「%EF%BC%A1%EF%BC%A2%EF%BC%A3」という文字列にしたいのですが
何か上手い方法ありますか?
bin2hex使えば16進になることは分かったのですが、後%入れる方法がわかりません。
0834nobodyさん2007/09/05(水) 20:58:24ID:???
URLエンコードとかでググルと幸せになれるかも
0835nobodyさん2007/09/05(水) 21:03:41ID:Owa32j3Y
>>834 ギャーとっても幸せになれましたサンクス
$result=urlencode($keyword);
0836nobodyさん2007/09/05(水) 21:13:33ID:xhirHVJB
test
0837nobodyさん2007/09/05(水) 22:10:46ID:JCAEvDAB
phpによってphpファイル生成してもエラー出て実行できないよね?あれ実行できるようにできないの
0838nobodyさん2007/09/05(水) 22:24:31ID:9ANsBxrb
>>832
レスどうもです。
一応html+phpで動かす事は出来たのですが、ソースを見た所、htmlとphpが混在していて見にくかったので
php+tplに移植を試みていたのですが、中々難しいようで。

多分
if (submit押下後) {
$smarty->display( "end.tpl" );
} else {
$smarty->display( "index.tpl" );
}
でいけそうな気がしたのですが、このsubmit押下後をこの時点で判定するのは難しそうですね。

素直にhtml+phpで、htmlのsubmit押下でphpを呼び出す方向で検討しようと思います。
0839nobodyさん2007/09/05(水) 22:28:01ID:???
>>838
そのコードじゃ、ViewとControllerが全く分化できていない。
テンプレート使っている意味がないと思うけど。
0840nobodyさん2007/09/05(水) 22:37:28ID:9ANsBxrb
>>839
そうなんですか。
正直元のソース(html+php)がカオスすぎて
>>830>>831程度に分化してくれれば後から修正しやすいかなと思ったのですが、
本当はもっときっちり分化するものなんですね。

テンプレート難しいorz
0841nobodyさん2007/09/05(水) 22:41:39ID:???
いやだから、こんなの書いてる時点でHTMLのフォームからやり直したほうがいいって。
<form method="post" action="index.php">
{$month}月が入力されました。<br>
<a href="index.php">戻る</a>
</form>
0842nobodyさん2007/09/05(水) 22:52:30ID:9ANsBxrb
>>841
あ、そこはまだダミーの記述で未検証の所です。
まず分岐ができない事にはそこにたどり着かないので、
その部分はhtml+phpで書いた物をこんな感じかなと当てはめただけです。
0843nobodyさん2007/09/05(水) 22:55:03ID:9ANsBxrb
>>831の<body>と</body>の間は
<p>入力されました</p>
となっていると思っていただければ大丈夫です。
0844nobodyさん2007/09/05(水) 22:59:20ID:???
それじゃフォームとが何をするかググるんだ。
分岐する方法は全部そこに書いてあるから。
0845nobodyさん2007/09/05(水) 23:30:39ID:9ANsBxrb
>>844
ありがとうございます。
フォームでググッてきます。
0846nobodyさん2007/09/06(木) 04:55:02ID:5gplVXTA
>>827
ああ、、、、タグ閉じでXSS可能ですね。
無害化することにします。
ありがとうございます。
0847nobodyさん2007/09/06(木) 07:07:26ID:???
だめだこりゃ
エスケープは基本なのに
0848nobodyさん2007/09/06(木) 09:34:23ID:???
エスケープ・・・つまり逃げるってことか。
逃げるのは基本。
0849nobodyさん2007/09/06(木) 09:43:53ID:5gplVXTA
逃げたらそこで試合終了ですよ
0850nobodyさん2007/09/06(木) 09:44:24ID:???
しまった!sageわすれたw
0851nobodyさん2007/09/06(木) 10:45:07ID:???
あいかわらず暇そうだな
0852nobodyさん2007/09/06(木) 11:37:58ID:???
暇。その通り。エスケープにはサボるという意味がある。和製英語だけどな。
0853nobodyさん2007/09/06(木) 12:31:25ID:acTwpTPv
サーバー監視用のスクリプトを作っています。
stream_socket_clientで接続できるかどうかで判断しているのですが、
どうもサーバが動いてるかどうかだけしかわからないようです。
正常に稼動してるか、してないかまでチェックしたいのですが、
何か他に最適な関数や方法ありませんでしょうか?
具体的な例として、 ttp://rosv.lln.jp/
こちらのサイトでは ttp://rosv.lln.jp/status.html の説明で、
Good, Closed, Dead, Downとステータス分けしていますが、
stream_socket_clientでは、GoodもClosedもDeadもおそらく同じ結果として返ってきます。
これをこのサイトのように別々のステータスとして受け取りたいのですが可能でしょうか?
0854nobodyさん2007/09/06(木) 12:33:26ID:dac6pXjB
2chのアンカーリンクみたいに掲示板に>>1で指定URLに飛ぶような関数を作りたいのですが、
function A_Link($str,$url)
{
}
として、引数$strには投稿された文章、引数$urlには相対パスを入れようとおもっているのですが、
この場合どうすればいいでしょうか

splitで>>で区切って配列1のデータで作ってみましたが、文章全体がリンクになったりとうまくいかず・・・
0855nobodyさん2007/09/06(木) 12:43:09ID:???
>>854
難しく考えず
<a href="#1">1</a>みたいにレス番号全てにアンカーつけといて
書き込み時に正規表現で>>intのものを繰り出して
<a href="#int">int</a>に置き換えすればいいんじゃない?
0856nobodyさん2007/09/06(木) 12:50:00ID:???
>>854
PHPのリファレンス(関数一覧)を見ることをオススメする。
split以外の関数にどんなものがあるのか探せ
0857nobodyさん2007/09/06(木) 12:52:48ID:???
>>853
そのサーバがきちんと動いているかどうかは、
そのサーバの喋るプロトコルに沿ってアクセスして、返答を見る必要があるだろう。
タイムアウトか、エラーが帰ってきたら死んでるのでいいじゃん。
0858nobodyさん2007/09/06(木) 13:14:34ID:???
リファレンスはざっとでもいいから見ておくだけで、かなり勉強になるしな
なんというか知ってて当たり前のような事を知らない奴が多すぎる
こんなとこで質問する前に、まずはリファレンス嫁って感じ
08598542007/09/06(木) 13:17:01ID:dac6pXjB
正規表現だけでなんとかできました・・・
>>855
最初それにしようとおもったんですが、ページ切り替えを作ったときにそれだと飛ばないので
無理にでもこの方法にしてみようとおもってました
0860nobodyさん2007/09/06(木) 15:02:26ID:???
プロファイリングのために
tickで割り込んだ時、元々いた場所の情報を知りたいんですが
どうすればいいですか?
0861nobodyさん2007/09/06(木) 15:39:37ID:???
phpでフォームを作ってるんだがサファリ以外は全てうまくいくのに
このクソブラウザだけがうまく動かん。
フォームに入力された内容が全く引き継げていない。
<form >タグにactionとmethodしか設定してないんだけど
他に設定すべき情報ってありますか??
0862nobodyさん2007/09/06(木) 15:42:01ID:???
>>861
actionとmethodが正しく指定されていればSafariでも問題ないはず。
まずは落ち着いて状況を再現できる最低限のコードを晒してはどうか。
0863nobodyさん2007/09/06(木) 16:11:21ID:???
>>862
最低限のコードなのでこんな感じかな(スマーティ使用)。
かなり省いてるけど分かる人には分かると思う。
どうもphp側の問題ではないような気がして、もしかしたらスレ違いなのかもしれない。

[index.html]
<form action="./confirm.php" method="post">
 <input type="text" name="f_name" value="{$input.f_name}">
 <input type="submit">
</form>

[confirm.php]
$f_name = $_POST["f_name"];

//エラー判断
if( $f_name == "" ){
 //リダイレクト
}

以下、テンプレートconfirm.htmlを読み込んで表示。

エラー判断の時点で何も入っていないと解釈され元のページに戻されてしまう。
もちろん何回もやったので入れ忘れたとかはない。
他のブラウザなら全く問題なく動く。
SafariはSafariでもバージョンによっては不具合が出るとかあるのだろうか。
0864nobodyさん2007/09/06(木) 16:18:56ID:???
最低限ってfieldsetとlegendもいれないとinvalidじゃないのか
俺が馬鹿だったのか
0865nobodyさん2007/09/06(木) 16:29:40ID:dALDE1iv
アップローダー作ってます。
任意のファイルのアップロード・ダウンロードをできるようにしてます。
ダウンロード側で、以下のようにして正常に動作はしてますが、
$down_file のソース自体の影響でXSSなどが行われる心配はないでしょうか。
仮に行われる可能性がある場合、
ファイルのデータ自体のエスケープ処理なんてどのようにすればよいんでしょうか。

<?php

$down_file = $_GET['down_file'];
if( !mb_eregi("^[a-z0-9]+$", $down_file )){
exit();
}
Header("Content-type: text/plain; name=\"".$down_file."\"");
Header("Content-disposition: attachment; filename=".$down_file."");
readfile("/data/".$down_file);
exit;
?>
0866nobodyさん2007/09/06(木) 16:36:36ID:???
>>864
それってタブで移動できるようにする為のタグではないの?
Safariはそれでグループ化しないと値が引き渡されない?
そんなはずは・・・
0867nobodyさん2007/09/06(木) 16:41:31ID:???
昔サファリで投稿すると文字化けするって話あったよね
まだ初期のころ
0868nobodyさん2007/09/06(木) 16:49:24ID:???
>>867
なるほど、、色々といわく付きのブラウザって事ですな。
素直に諦めるか。。。
あえてそんなクソブラウザを使うようなやつが悪い。
0869nobodyさん2007/09/06(木) 20:19:46ID:BwUmyBl/
file関数を使ったファイルのように変数を配列化する方法を教えてください。

$file="a\nb\nc\nd\n";
(何らかの処理)
print "$file[0]";
で、「a」と表示といった感じです。
0870nobodyさん2007/09/06(木) 20:36:53ID:???
$file = explode("\n", $file);
0871nobodyさん2007/09/06(木) 20:45:53ID:BwUmyBl/
神様仏様>>870様、初心者の質問に答えてくださりありがとうございます
0872nobodyさん2007/09/06(木) 23:23:05ID:???
BBSを作っています。
1レスのデータを1行にまとめてテキストファイルに記録しているのですが
新しい書き込みをテキストの上に記録していくには、
一度配列に全レスを読み込み、新しいレスを加えてファイルに書き込む方法
しかないのでしょうか?
ファイルポインタの位置から、テキストエディタのようにインサートで書き込む
ような命令はないのでしょうか?

一度配列に全レスを読み込むしか方法がない場合、例えば全書き込みが1000程で
安いレンタルサーバで利用する場合、高負荷と判断されるような処理なのでしょうか?
08738722007/09/06(木) 23:46:45ID:???
友達に聞いて自己解決しました。
やっぱりデータベースを利用することにします。
SQLiteって便利ですね!
0874nobodyさん2007/09/06(木) 23:56:38ID:???
関数のオーバーライドを実現する方法を教えて下さい
0875nobodyさん2007/09/07(金) 00:15:17ID:iXE96r/B
すみません
for文で
0001〜0010〜0100〜1000
というふうにしたいのですが、
可能でしょうか?
0876nobodyさん2007/09/07(金) 00:19:11ID:???
日本語でおk
0877nobodyさん2007/09/07(金) 00:49:11ID:???
なんとなくsprintfでFAっぽい
0878nobodyさん2007/09/07(金) 00:49:57ID:fIAEM3os
phpで文字列比較を行う場合、"=="演算子を使っちゃっていいのかな?
javaのequal()メソッドみたいな物はありますか?
0879nobodyさん2007/09/07(金) 01:14:41ID:???
自分は==使ってます。関数で比較したのはみたことないからあっても有名ではないと思う。
0880nobodyさん2007/09/07(金) 01:17:45ID:iXE96r/B
0001〜1000でインクリメントさせたい
0を表示したまま
0881nobodyさん2007/09/07(金) 01:20:01ID:???
>>880
>>877
0882nobodyさん2007/09/07(金) 02:11:06ID:???
>>881
あん?それがなんなん?
0883nobodyさん2007/09/07(金) 02:15:53ID:Y/cI9Wol
>>878
文字列の比較なら 「==」 よりも 「===」 がお勧めです。

以下のスクリプトは、 驚くべきことに 「True」 を表示します。

$x = 0;
if ('string' == $x) {
echo 'True';
} else {
echo 'False';
}

「==」 を使って比較すると、 'string' は0と同値とみなされてしまうのです。
「===」 なら型まで比較するので、 このようなことにはなりません。
08848782007/09/07(金) 02:39:35ID:fIAEM3os
>>879>>883
レスどうもです。

>>883さんの例で、'string'という文字列だけが0と同値とみなされるって事は
'string'以外の文字列の比較だったら気にしなくてもいいって事かな・・・

あと、「==」が型を無視するって事は、下のサンプルはtrueを出力する
事になるんですか?

$iX = 5;
$sStr = "5";
if ($sStr == $iX) {
echo 'True';
} else {
echo 'False';
}

そうだとしたら、ちょっと気になるな・・・
文字列の比較は、「===」にして、数字と比較したいときは型変換する
ってコーディングルールを今後自分の中で作ろうかな。
これってまずいかな? なんか一般的な決め事ってあるんですか?
0885nobodyさん2007/09/07(金) 02:47:19ID:???
>>884
おまえバカって周囲によく言われない?
0886nobodyさん2007/09/07(金) 02:57:47ID:Y/cI9Wol
>>884
'string' は例であって、 'foo' でも 'bar' でも0と同値とみなされます。
ただ、 '3' や '49ers' のように整数型に変換すると0でなくなるものは0と同値とみなされないようです。
08878782007/09/07(金) 03:04:10ID:???
>>'string' は例であって、 'foo' でも 'bar' でも0と同値とみなされます

そうですか。
'string'という文字列だけ例外とかおかしいですよね、失礼しました。
「===」演算子を使うようにしますわ。教えてくれてありがとう。
0888nobodyさん2007/09/07(金) 04:32:50ID:rfOwdTtE
>>866, >>868
>それってタブで移動できるようにする為のタグではないの?
いや、HTMLはPHPのように動作を命令する言語ではない。

たしか、form要素直下にインライン要素は文法違反だったと思う。
これが直接の原因とは考えられないが。
0889nobodyさん2007/09/07(金) 04:42:50ID:OvuyfN7a
BBSを作っていて、>>872さんと同じような事で悩んでいます

>BBSを作っています。
>1レスのデータを1行にまとめてテキストファイルに記録しているのですが
>新しい書き込みをテキストの上に記録していくには、
>一度配列に全レスを読み込み、新しいレスを加えてファイルに書き込む方法
>しかないのでしょうか?
>>872さんはデータベースを使う事で解決したらしいですが
データベースを使えないサーバでは、この方法でしか不可能でしょうか?
0890nobodyさん2007/09/07(金) 04:48:06ID:???
SQLiteはDB使えない鯖でも使えるんですが。
0891nobodyさん2007/09/07(金) 05:10:28ID:???
レンサバじゃ使えないとこもあるんですが。。。。?
0892nobodyさん2007/09/07(金) 05:17:45ID:???
PHP 5.2.4のインストールと設定 - [データベース]All About
ttp://allabout.co.jp/internet/database/closeup/CU20061118A/index.htm

・このふざけた日付は何? → 掲載日:2006年11月18日
・古の設定手順載せてやる気あるんだろうか?
・マニュアルはおろかInstall.txtすら目通してないんじゃないかと思う

こういうサイトが平然と存在していて悪影響及ぼさないのかね
0893nobodyさん2007/09/07(金) 05:26:36ID:???
>>892
場ジョン5.2.4に変えただけで中身は一緒かよ
0894nobodyさん2007/09/07(金) 05:27:07ID:???
>>892
スポンサーに苦情だせば?
0895nobodyさん2007/09/07(金) 05:55:11ID:???
All Aboutっててきとー記事多いよね。
0896nobodyさん2007/09/07(金) 06:30:54ID:???
allaboutの技術記事なんて見る奴いねーだろ
0897nobodyさん2007/09/07(金) 06:54:42ID:???
>>896
そんなallaboutも上場しているんだよな。
mixiもkakaku.comもphpで実装しても大したことがない機能ばかりなので、
あれで上場できるとは、誰でも上場できるような気がする。
0898nobodyさん2007/09/07(金) 07:13:15ID:???
>>896
そこらのblog覗くとphpの設置だけで四苦八苦してサイト徘徊してるらしいよ。
んなわけだから、中にはallaboutに引っ掛かる人もいるかもしれんわ。
0899nobodyさん2007/09/07(金) 07:34:26ID:5n6DmJVT
php+postgresqlでデータベースシステム
を作っているんですが、
構築中にpostgresqlモジュールのインストールをしないと
php、postgresqlはうまく動かないと書いてあるのですが、
その方法にてマニュアルや乗っているサイトはないでしょうか?
PHP5です。postgresqlは8.1.3です。

0900nobodyさん2007/09/07(金) 07:37:11ID:???
>>899
> うまく動かないと書いてある
どこに書いてあったの。
0901nobodyさん2007/09/07(金) 08:30:28ID:9skKCQS9
>>898
俺も何も知らないときひっかかった
今はXAMPPですぐなのにね
0902nobodyさん2007/09/07(金) 08:51:44ID:???
XAMMPこそ糞だろ
09038722007/09/07(金) 09:29:39ID:???
>>872ですが
>>873で騙りで事故解決されてしまってます。
まあ873はSQlite使えと言いたいのだとは思いますが。
0904nobodyさん2007/09/07(金) 09:51:42ID:???
Windowsユーザのインストール記録は多種多様
Installerによるセットアップはさておき、php-zipファイル解凍後の作業パターン

case1
 php.iniリネーム後、ini, *.dll全てシステムディレクトリにコピー

case2
 php.iniリネーム後、phpフォルダにpathを通す
 ini, php*ts.dllをシステムディレクトリにコピー

case3
 php.iniリネーム後、PHPIniDirを設定
 php*ts.dll他、拡張モジュールをシステムディレクトリにコピー

case4
 php.iniリネーム後、phpフォルダにpathを通し、PHPRCを設定
 ini, php*ts.dllをシステムディレクトリにコピー
 動作不具合により拡張モジュールまでシステムディレクトリにコピー

みんな、自分が何やってるのかわかってないだろ?
国内のみならず海外までこの調子だからな
0905nobodyさん2007/09/07(金) 09:52:27ID:???
>>902
糞な理由をどうぞ
0906nobodyさん2007/09/07(金) 10:43:04ID:???
>>903
自己主張したいならIDくらい出せ
0907nobodyさん2007/09/07(金) 13:09:45ID:???
>>904
たしかに俺もわからんな
Apache+PHPの関連付けというくらいしか・・・
具体的にどうなっているのかはサッパリだ
0908nobodyさん2007/09/07(金) 13:13:14ID:???
面倒だからxamppに一任してます
0909nobodyさん2007/09/07(金) 13:19:27ID:???
テスト環境としたらxamppで十分すぎ
0910nobodyさん2007/09/07(金) 13:20:08ID:???
今時PHP4のレンタル鯖が多くてウザい
0911nobodyさん2007/09/07(金) 13:26:12ID:h8X9ZIw7
PHPでCGIモードをモジュールモードの違いって何でしょうか?
さくらレンタルサーバーを借りようと思っているのですが、
モジュールモードで実行できるのがプロからなんです。
今までPHP5で動作を確認してきました。
0912nobodyさん2007/09/07(金) 13:42:09ID:???
モジュール版は拡張子がphpってファイルをあげてそこにアクセスすればそのまま動く。
cgiモードはcgi-binとか専用のディレクトリ作ってそこでCGIが動くように設定しなきゃいかん。
ファイルの拡張子もcgiにしなきゃいかんし色々と不便。
0913nobodyさん2007/09/07(金) 13:45:01ID:h8X9ZIw7
>>912
つまり、全てのphpの先頭に「!#usr/bin/php」とかつけないといけないのかな?


さくら借りるの辞めたorz
0914nobodyさん2007/09/07(金) 13:50:38ID:nZ/hNLzg
>>912

ビジネス・プレミアム両方とも、
!#usr/bin/php つけなくても、さくらサバ動きますよ。
いたって普通に動きますよ。

質問ですが

・phpのsleepを使う意味(処理を遅くさせて何のメリットがあるのか。処理を
遅くさせることによってサーバーへの負荷を少なくするという解釈でOKなのでしょうか)
・php5 の private とか外から読めないようにする意味

を教えていただけませんでしょうか。お願いします!

0915nobodyさん2007/09/07(金) 13:51:38ID:nZ/hNLzg
>>914

すいません、
・php5 の private とか外から読めないようにする意味
これは class を使うときのことです。
0916nobodyさん2007/09/07(金) 13:52:48ID:h8X9ZIw7
>>914
なるほど、でも自分はスタンダートの予定ですorz

PHPのsleepはWindows(Winアプリ?)で実行させれる形にするときに長保しますよ。
それ以外では使ったことがないですが・・・
0917nobodyさん2007/09/07(金) 14:00:28ID:???
>>910
確かにレンサバにphp4しかないのは問題
今からphp4用作るなんて時間をどぶに捨てるようなもの
0918nobodyさん2007/09/07(金) 14:08:30ID:???
>>902
そもそもXAMMPって何?
0919nobodyさん2007/09/07(金) 14:09:41ID:???
>>918
>>1
http://www.google.co.jp/
0920nobodyさん2007/09/07(金) 14:14:08ID:???
>>919
XAMPPなら知ってるけどXAMMPなんて聞いた事なかったんよ
0921nobodyさん2007/09/07(金) 14:15:40ID:???
>>920
>>1
0922nobodyさん2007/09/07(金) 14:16:53ID:???
皮肉で聞いてるのも分からないなんて酷いな。どうせ本人だろうけど。
0923nobodyさん2007/09/07(金) 14:20:49ID:???
>>922
質問するならID出せってことだよ
それすらできないなら最初から質問するな
0924nobodyさん2007/09/07(金) 14:24:03ID:???
>>923
なんでそんなにピリピリしてるの?笑
質問する意図があった訳じゃないのは>>922見て分からないの?
頭悪いの?
0925nobodyさん2007/09/07(金) 14:24:41ID:???
>>924
>>918
0926nobodyさん2007/09/07(金) 14:26:21ID:rbBQhYL0
ここって本当に心にゆとりがない人多いよね。
頭はゆとり全開だけどさ。じゃあID出して質問しますね^^

XAMMPって何ですかー?
そんなの聞いた事ないんですけどー?
XAMPPなら聞いた事ありますけどー?
0927nobodyさん2007/09/07(金) 14:26:37ID:lQ1e3Ppz
>>917
php4とphp5の違いを教えてたもれ
0928nobodyさん2007/09/07(金) 14:27:31ID:???
>>926
おそらく>>902氏のうち間違いだと思われます
0929nobodyさん2007/09/07(金) 14:28:19ID:???
>>927
使える関数など
最近のFWもPHP5.x以上のみになってきてるんじゃないかな?
0930nobodyさん2007/09/07(金) 14:43:07ID:???
http://www.php.net/manual/ja/install.windows.php
>警告
>インターネットでオールインワンのインストーラがいくつか見かけられます。 しかし、いずれも PHP.net により公認されたものではありません。
>システムを最適化し、また、安全を保つためには、 マニュアルインストールがもっとも良い選択ではないかと我々は考えています。

だからXAMPPはやめとけな。
それぞれの手動インストールをマスターした上で使うのならいいが、初心者が楽だからといって使うのはただの思考停止。
0931nobodyさん2007/09/07(金) 14:54:20ID:???
クローズドなテスト環境の構築には便利だし問題ないだろ、xampp
0932nobodyさん2007/09/07(金) 15:21:29ID:???
>>913-914あたり
だれもつっこんでないが
!#usr/bin/phpっておかしいだろ
#!/usr/bin/phpだろ
0933nobodyさん2007/09/07(金) 15:42:48ID:???
Win版をソースコンパイルしてる香具師っている?
0934nobodyさん2007/09/07(金) 15:52:35ID:???
PHP4滅ぶのマダー
0935nobodyさん2007/09/07(金) 17:00:15ID:3IipQzMp
こんにちは。今日のお昼は蕎麦でした。
preg_replace で e指定子を付けるとシングルクォートがエスケープされるのですが、
これは必ずそうなるのでしょうか?
php.ini などの設定で抑制されるものなのでしょうか?

echo preg_replace('/./', '$0', "'") ; // そのまま
echo preg_replace('/./e', '"$0"', "'") ; // シングルクォートがエスケープされる
0936nobodyさん2007/09/07(金) 17:15:46ID:???
よろしくお願いします。

$day = date("d");
if ($day = 1){
echo "こんにちは";
}

これで1日に"こんにちは"が表示されるようになったのですが、
15日にも表示させたい場合、($day = 1)の部分をどのように記述すればよいのでしょうか?
0937nobodyさん2007/09/07(金) 17:19:14ID:???
>>936
>>1
0938nobodyさん2007/09/07(金) 17:19:40ID:???
幼稚園並みのつりだなw
0939nobodyさん2007/09/07(金) 17:32:30ID:???
>>931
テストならできるだけ本番と同じ環境の方がよろしいような...
ま、開発だけならパッケージのバイナリもいいかもね。
0940nobodyさん2007/09/07(金) 17:37:27ID:???
>>936
そのif文だと1日以外でも表示されると思われる
0941nobodyさん2007/09/07(金) 17:49:59ID:???
>>936
式は変更する必要ないよ。
if を while に変えればいいと思うよ。
0942nobodyさん2007/09/07(金) 17:51:10ID:???
>>933
VC++6持ってなきゃ cygwin か .NET版VC++ & platfosm SDK 用意しなきゃならんでしょ?
面倒臭くてやってられない。 (C++Builder5 しか持ってないもん)

だったら
・zip解凍→ルートディレクトリ(C:\ etc.)にフォルダを移動
・システム環境変数 Path & PHPRC 設定
・テンプレートファイルから php.ini 作成&編集
・httpd.conf 編集
・システムリブート
って、バイナリ展開の方が手間入らずで済むからいい。 by ナマケモノ
0943nobodyさん2007/09/07(金) 17:54:47ID:???
s/platfosm/platform/g
0944nobodyさん2007/09/07(金) 18:06:20ID:ArMFnOZS
>>937-940
>>936です。
すみません確かに1日以外でも表示されていました。
ifをwhileに変えた場合、その後のelse {でエラーが起きている表示になりました。
if($day == 1)にしたら今度は上手く行ったようなので、

if ($day == 1){
echo "こんにちは";
}
if ($day == 15){
echo "こんにちは";
}

にしてみようと思います。
0945nobodyさん2007/09/07(金) 18:09:24ID:ArMFnOZS
2番目のifをelseifにしたら出来ました!
さっき試した時に出来なかったのは==じゃなかったからなんですね・・・
ありがとうごじました
0946nobodyさん2007/09/07(金) 18:23:53ID:q1A+s3Q8
>>945
同じような事をcaseでやってるよ
0947nobodyさん2007/09/07(金) 18:35:17ID:???
if($day == 1 || $day == 15) echo "こんにちは";

1行で済ませないのはおじいちゃんの遺言か?
0948nobodyさん2007/09/07(金) 18:53:05ID:ArMFnOZS
>>946-947
おおお、ありがとうございます。
1行にまとめる方法が分かりませんでした。早速直しますm(__)m
0949nobodyさん2007/09/07(金) 20:28:54ID:5n6DmJVT
php5はpostgresqlモジュールのインストールしなくても
php+postgresqlで動くのかな?
今本見て勉強しているんだが、
書いてあるのと書いてないのがある。
php4とphp5どっちをイントールすればいのだろうか?
0950nobodyさん2007/09/07(金) 20:33:52ID:???
>>949
php.iniで;extension=php_pgsql.dllのセミコロンを外して再起動するだけでおk。
バージョンは5
0951nobodyさん2007/09/07(金) 20:49:11ID:???
習うならPHP5やっておけばPHP4の違いも比較しながらつうのが
時期的に多いから結果PHP4にも対応できるようになるお
0952nobodyさん2007/09/07(金) 21:15:18ID:???
OSも書かない動作質問はするー
0953nobodyさん2007/09/07(金) 21:34:28ID:???
>>872>>889について
unix系環境のもとならcatとかsort使うとか。

fopen("newfile", "w");
1行書き込んでファイル閉じる
system('cat newfile , currentfile > tempfile', $ret);
で、rename("tempfile", "currentfile");やってリネーム
newfile…新規1行レコードファイル currentfile…既存ファイル

または
fopen("writefile", "a"); アペンドでファイルオープン
末尾に1行追加してファイル閉じる
system('sort -r writefile > currentfile', $ret);
ソートで書き込み一気に反転やぁ〜
writefile…書き込み専用 currentfile…読み出し専用

なんか問題出そうな気がしてきた…
0954949です。2007/09/07(金) 21:40:26ID:5n6DmJVT
fedora core4です。
自分はphp5はfedora core4でパッケージでインストールされているの
を使ってpostgresqlと連携したいのですが、可能ですか?
0955nobodyさん2007/09/07(金) 22:00:43ID:???
>>954
可能
0956nobodyさん2007/09/07(金) 23:02:10ID:???
突然ですが、文字コードってUTF-8にするべきなんですかね?
最近、EUCに戻したんですけど、他のスレでは馬鹿にされました。
0957nobodyさん2007/09/07(金) 23:10:19ID:???
いまどきのサイトはUTF-8
俺はEUCだけどな
0958nobodyさん2007/09/07(金) 23:14:56ID:???
>>956
んなこたぁない
選択肢の一要素であって総てではない
そんな馬鹿にする奴は無視しとけ
0959nobodyさん2007/09/07(金) 23:17:24ID:???
でもいまさらEUCにする理由が思いつかない・・・
0960nobodyさん2007/09/07(金) 23:21:11ID:???
古くさいがこういうところだろうか

UTF-8>>>EUC-JP>>>(越えられない壁)>>>Shift_JIS
09619562007/09/07(金) 23:24:37ID:???
みなさん、ありがとうございます。

Ajaxと連携させる時、EUC-JPだと引っかかる時はありますが、
それでもmb_convert_encodingなどを使うと解決できますし、
なによりEUCの方が使い勝手が良いのです。サーバ的にも。
UTF-8だとしょっちゅう文字化けするので、最近EUCに戻した次第です。
0962nobodyさん2007/09/07(金) 23:29:07ID:???
       │
       J
  ∩_∩    ∩_∩
 (・(ェ)・ )   ( ・(ェ)・)
0963nobodyさん2007/09/08(土) 00:14:01ID:???
> UTF-8だとしょっちゅう文字化けするので、
AddDefaultCharset EUC_JP
していたら藁う
0964nobodyさん2007/09/08(土) 00:20:20ID:svFpDSCn
ftp接続時期取得できる関数があると聞いたのですが、ド忘れしてしまいました。
教えてくれると嬉しいです。
0965nobodyさん2007/09/08(土) 00:57:25ID:GqfKG+Kz
php4でのコンパイル時の --with-pear指定して入るpearライブラリと

php5の--with-pearで入るのって違いあるの?
0966nobodyさん2007/09/08(土) 01:03:48ID:g7GcVLEJ
すみません、PHP5で構造体の使い方おしえてください(><;)
0967nobodyさん2007/09/08(土) 01:06:48ID:g7GcVLEJ
PHP5でJNDI使いたいんです(><;)
0968nobodyさん2007/09/08(土) 01:08:11ID:???
構造体なんていらないよ。
0969nobodyさん2007/09/08(土) 01:08:27ID:???
PHP6になったら、メッセージドリブンBeanが使えるって言うのは

本当なんですか(>ω<;)
0970nobodyさん2007/09/08(土) 01:12:14ID:???
>>966
連想配列で十分じゃないの?
0971nobodyさん2007/09/08(土) 01:54:53ID:???
>>958
UTF-8でやっと解決しそうなのにグダグダ言うお前みたいな奴がいるから
いちいち文字コードに対して気を使わないといけないことになる

無視すべきなのはお前の発言だ
0972nobodyさん2007/09/08(土) 03:19:03ID:???
>>956のストーカー乙

いるんだよな、勝手にスレに乗り込んできて無関係なヤツに噛み付く基地外ってw
0973nobodyさん2007/09/08(土) 03:31:38ID:???
>>972
野次馬乙
0974nobodyさん2007/09/08(土) 03:32:53ID:???
>>965
バカ発見
0975nobodyさん2007/09/08(土) 09:26:48ID:???
盛り上がって参りました
0976nobodyさん2007/09/08(土) 11:25:39ID:???
プログラマー(笑)ってなんか決めつける奴多いね。
文字コードはUTF-8じゃないといけないとか、
フレームワークをつかえとか
正規化しろとか、オブジェクト指向にしろとか

型にはめないと気持ち悪いからか?
0977nobodyさん2007/09/08(土) 11:29:36ID:???
文字コードはUTF-8だと変な所で躓かないで済む
フレームワークは小規模であれば個人の好みでおk
オブジェクトも一人でやっているなら気にする必要なし
0978nobodyさん2007/09/08(土) 11:34:28ID:???
>>976 自称フリーの契約違反自慢王子の事?
0979nobodyさん2007/09/08(土) 11:44:01ID:???
>>976
型は知らんが合理性を求めないやつは気持ち悪いな。
0980nobodyさん2007/09/08(土) 11:51:42ID:???
>フレームワークは小規模であれば個人の好みでおk

中・大規模(会員数1万越えのポータルとか)だと、
フレームワークは必須なの?
0981nobodyさん2007/09/08(土) 14:49:32ID:???
>>980
必須がどうのこうのじゃなくて、保守性を考えての話だろ
使いたくなきゃ使わなければいい
0982nobodyさん2007/09/08(土) 16:44:09ID:???
正規化やオブジェクト指向の理由が分からないなんて・・・
0983nobodyさん2007/09/08(土) 17:26:29ID:???
しつこいな
0984nobodyさん2007/09/08(土) 18:11:42ID:???
参照渡しについてですが、
function f(&$a){}
f($hoge);
 と
function f($a){}
f(&$hoge);
の違いが分かりません。どう違うのでしょうか。
まさに下らない質問ですが、ご教示いただければ幸いです。
0985nobodyさん2007/09/08(土) 18:12:13ID:DXBjKZMy
sageてしまいましたageます。
0986nobodyさん2007/09/08(土) 18:24:20ID:???
>>984
関数定義で決めるか実行時に決めるかの違い
09879842007/09/08(土) 18:26:38ID:???
ありがとうございました。
0988nobodyさん2007/09/08(土) 21:04:35ID:S9yl+KSC
よくわかるな、オラそんな説明じゃわかんねーぞ
0989nobodyさん2007/09/08(土) 22:28:15ID:YxOMf+1i
おながいします。
50が書いていることは事実ですか?


15 名前: Name_Not_Found Mail: sage 投稿日: 2007/09/07(金) 23:07:38 ID: ???
見積頼む

1)ショッピングカートを1から作る
2)オープンソースやOScommerceを使う
3)レン鯖にあるカートを流用

商品数100点。必要最小限の機能は商品登録・編集・削除、一覧・表示表示
商品検索ぐらい。管理画面のデザインも作成。

50 名前: Name_Not_Found Mail: sage 投稿日: 2007/09/08(土) 21:52:59 ID: ???
>>35-36
いいか、冷静に考えろ。試しに15の内容をWebPro板でも持っててみろ。
「お前、10時間もかかるのかよwww」って笑われるのがオチだぞ。
今やフレームワーク使って、既存ライブラリもあるだろうし、
管理画面のデザインもあらかたCSSで基礎は作ってるだろ。

仕様書はディレクターが客から要望聞いて作ってくるだろ。
15程度の内容なら、要件定義も少ない。DB構造すら既存の構造でOKだろ。

煽る前に冷静に考えろって。15程度の案件、どう考えても3桁いかん。
学生PGがバイト感覚でやるレベルだろ。
0990nobodyさん2007/09/08(土) 22:41:58ID:???
そのスレの50はアマチュアかIT土方だろうね。ってスレ違い
0991nobodyさん2007/09/08(土) 23:08:12ID:bfmJS6ID
次のコードについて質問です。
 if (isset($HTTP_POST_VARS)) { $this->p = &$HTTP_POST_VARS; }
 elseif (isset($_POST)) { $this->p = &$_POST; }
 if (isset($HTTP_GET_VARS)) { $this->g = &$HTTP_GET_VARS; }
 elseif (isset($_GET)) { $this->g =& $_GET; }

なぜ、$HTTP_POST_VARSと$_POST、
$HTTP_GET_VARSと$_GET、を両方チェックしているんでしょう。
両方とも同じ内容に見えるのですが。
サーバの環境によっては片方が無いことがあるのでしょうか?
0992nobodyさん2007/09/08(土) 23:12:44ID:???
>>989
どうせ、そいつの言っている”作る”は
オープンソース(シェアウェアでもいいが)のソフトを
どっかから手に入れてアップロードするだけだろ。
0993sage2007/09/08(土) 23:32:31ID:xzLOD/vM
仕様書書く人をディレクターって呼ぶ業界じゃないと思ったんだけど、
そういう会社あるのかね?

不具合があって商品購入ができない
→客が逃げて売り上げ激減
不具合があって他の商品が購入されてしまう
→金の絡んだ不具合は普通に考えて大打撃

まあとりあえず動くモノ作れるようになったサンデープログラマーの
たわごとじゃないかね。
カート作ったことないんで技術的難易度はよく分からんけども。
09949932007/09/08(土) 23:33:21ID:???
あらミスっちゃった。
09959912007/09/08(土) 23:35:11ID:???
自己解決しますた。
 http://www.php.net/manual/ja/reserved.variables.php

古いPHPだとスーパーグローバル変数が無いのですね。
スレ汚しすんまそん。
0996nobodyさん2007/09/08(土) 23:56:51ID:???
PHPで、ランダムに文字列を取り出す事は出来ますか?
0997nobodyさん2007/09/09(日) 00:06:55ID:???
>>996
このあたりを読むとよろしいかと。
http://www.php.net/manual/ja/function.rand.php
http://www.php.net/manual/ja/function.count.php
http://www.php.net/manual/ja/function.shuffle.php
0998nobodyさん2007/09/09(日) 00:23:48ID:???
取りあえず、決済絡みの機能を10時間程度で作ってしまう
アマチュアプログラマーには頼みたくないな。
0999nobodyさん2007/09/09(日) 00:42:08ID:???
>>998
決算絡みっていう条件無いよ。
単に申込みフォームだけだろ。SSLもないとみた。
1000nobodyさん2007/09/09(日) 00:45:16ID:???
1000なら脱童貞
10011001Over 1000Thread
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。