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

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

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2007/11/03(土) 19:07:37ID:EzkHevL1
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り

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

◆質問する時の注意
・ sage進行(メール欄にsageと記入すること)「sage進行」とはスレを目立つ上部に上げないことによって、荒らしが発見できないようにすることです
・ サーバーのOS(Linux、Windows他)、WebサーバーとPHPの種類やバージョン等を明記すること。
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
・ 書き込むときには、「公式マニュアル、リファレンス本は読みました」と明記すること
(でないと、公式マニュアル読めと煽られます)

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

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
・質問者が「公式マニュアル読んだ」と書いていないからといって、
公式マニュアルに書いてもいないのに、公式マニュアルよめと適当なことを言わないこと。
質問者は公式マニュアルを読んでいるかもしれない。

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0693nobodyさん2007/11/13(火) 16:38:36ID:???
くんくん
なんか昨日の粘着みたいな臭いがするなw
0694nobodyさん2007/11/13(火) 16:41:54ID:???
>>689
cgiがあるところは外部サーバ?
それならimageとして読み込んでやればOK
0695nobodyさん2007/11/13(火) 16:46:23ID:Bvnlm0Kv
>>692
今知りうる知識のキーワードでググってみましたが、
wrapper関数の作り方は出てこなかったです

ヒントください
06966892007/11/13(火) 16:54:33ID:???
>>694
ありがとうございます。
ちなみにcgiは同じサーバー内です。(gdで作成,出力はpng)
$img = imagecreatefrompng($url);
では駄目でした。
0697nobodyさん2007/11/13(火) 17:08:01ID:???
>>696
fontまでのURLは指定してあるんだろうな?
ていうかコード省略せず張れよ。
てめえのコードなんざありふれてんだからパクられるの気にすることでもない
0698nobodyさん2007/11/13(火) 17:13:50ID:???
判断式で当てはまっても抜け出さないで、とりあえず全ての条件に通すことって可能?
if文は条件分岐なんだから目的が元々違うだろうし、適当な既存の構文とかあんのかな。
でなければ一つ一つif文を網羅していく方法しかないのだろうか。
0699nobodyさん2007/11/13(火) 17:14:27ID:???
id出し忘れ
07006982007/11/13(火) 17:15:10ID:w5Alq5vf
すんません
07016892007/11/13(火) 17:30:02ID:???
>>697
ありがとうございます。コードですがFPDF+PDIでテンプレ読み込みそこに
CGIで作成した画像を埋め込む事をしたのです。実際のコードは下記の通りです。
<?php
define('FPDF_FONTPATH','font/');
require('fpdi.php');

$GLOBALS['EUC2SJIS'] = false; // このファイルがS-JISの場合
$pdf =& new fpdi();
$pagecount = $pdf->setSourceFile("test.pdf");
$tplidx = $pdf->ImportPage(1);

$pdf->addPage();
$pdf->useTemplate($tplidx,5,5,200);

//画像 ※ここからがわかりません。
$url = 'http://www.hoge.com/cgi-bin/hoge.cgi?dt1=1+2+3+4';
$img = @imagecreatefrompng($url);
$pdf->Image($img,100,100);
// 表示
$pdf->Output();
imagedestroy($img);
?>
07026982007/11/13(火) 17:42:40ID:w5Alq5vf
自己解決しました。
0703nobodyさん2007/11/13(火) 17:43:08ID:???
>>700
条件たくさん書いて真の時にフラグもたせて
最後にフラグが真なら処理実行させたら良いだけなんじゃないの
0704nobodyさん2007/11/13(火) 18:00:50ID:???
>>691
ええ?? 何がどう「高度」なんだよ??www

お前自身が>>688で書いてるif文とかの処理を単純に関数化するだけだろうが。
もし「自作関数を作ったことがありません」レベルで、
しかもググってもやり方が分からないんだったら氏んでくれ。もう何も言えん。
07056932007/11/13(火) 18:51:55ID:???
自己解尻しました。
0706nobodyさん2007/11/13(火) 19:00:13ID:???
>>695
煽られてもめげずに丁寧に対応しているあなたの姿勢に感動した。
俺は
foreach ((array)$somevar as $value) {
}
でやってるがどうかね
0707nobodyさん2007/11/13(火) 19:02:02ID:???
>>698
判断式って何?条件式とは違うの?ifで当てはまらなくても実行させたいの?
謎すぎる質問で分かりにくいけど文章読む限りではswtich〜case文が該当するのでは?
0708nobodyさん2007/11/13(火) 19:12:19ID:???
>>706
自作自演はよくないよ。
0709nobodyさん2007/11/13(火) 19:18:26ID:???
すいません質問です
html.txtの内容を単純にサイトのタグ内に進入するのに、いろいろと試してみましたが、

<?php require("html.txt"); ?>

と

<?php include("html.txt"); ?>

でできましたが、どちらがいいのでしょうか?
0710nobodyさん2007/11/13(火) 19:27:00ID:???
http://www.google.co.jp/search?client=firefox-a&rls=org.mozilla%3Aja%3Aofficial&channel=s&hl=ja&q=php+include+require&lr=&btnG=Google+%E6%A4%9C%E7%B4%A2
0711nobodyさん2007/11/13(火) 19:27:05ID:???
@include_once
0712nobodyさん2007/11/13(火) 19:27:12ID:???
>>709
おれもタグ内に進入してみたい

> エラーが発生するとどちらも Warning を出力しますが、
> require() を使用している場合は Fatal Error となります。
> 言い換えると、指定されたファイルが無い場合に処理を停止したい場合は
> require() を使用した方が良い、ということになります。
0713nobodyさん2007/11/13(火) 19:27:41ID:???
readfile('html.txt');
0714nobodyさん2007/11/13(火) 19:45:22ID:???
http://side-b.sto.co.jp/weblog/archives/217

みなさん有難うございました。
コレを読んでinclude_onceでいきます ^^

0715nobodyさん2007/11/13(火) 19:46:20ID:???
君の場合は0.00001秒も変わらないから速度のことなんて気にするだけムダ
0716nobodyさん2007/11/13(火) 19:48:49ID:???
>>714
バカ?
0717nobodyさん2007/11/13(火) 19:49:50ID:???
>>715
言っときますが、彼女に「進入」しても最低3分はもちますよ。

速度じゃなくてfatal errorがいやなのでincludeにしたんです。
0718nobodyさん2007/11/13(火) 19:50:22ID:???
>>717
バカ?
07196652007/11/13(火) 19:53:55ID:???
入力値のチェックを質問したものです
いろんな意見くれてありがとうございました。FWは今回は見送りますが
いただいた意見参考にがんばります。 サンキューでした。
0720nobodyさん2007/11/13(火) 19:56:56ID:???
>>717
ならfile_exists使うべき
0721nobodyさん2007/11/13(火) 19:58:52ID:???
txt形式を読み込むのにinclude, requireは使わないな
is_readableとかしてから>>713かな
0722nobodyさん2007/11/13(火) 20:04:12ID:???
php5とmysql5をapache2で使ってる環境で、アクセス負荷をプログラム側で
軽減しようとしたら、どういうことに気をつけたらいいんですか?
コーディング上最低限やるべきマナーとかありますか?
0723nobodyさん2007/11/13(火) 20:08:30ID:???


  いま俺のことバカって言った奴でてこいっ!

0724nobodyさん2007/11/13(火) 20:08:38ID:???
>>722
負荷のみを軽減するなら無駄を減らすこと。
0725nobodyさん2007/11/13(火) 20:09:09ID:???
>>723
呼んだ?
0726nobodyさん2007/11/13(火) 20:11:15ID:???
>>723
バカ?

0727nobodyさん2007/11/13(火) 20:11:45ID:???
>>723
バカ
0728nobodyさん2007/11/13(火) 20:13:48ID:hvvlgRN4
Warning: Unknown: failed to open stream: No such file or directory in Unknown on line 0

Fatal error: Unknown: Failed opening required 'C:ディレクトリ&ファイル名' (include_path='.;C:ディレクトリ&ファイル名') in Unknown on line 0

とエラーが表示されるんですが、どうしたらなおりますか?
お願いします。
0729nobodyさん2007/11/13(火) 20:14:37ID:???
>>728
調べてからこい
0730nobodyさん2007/11/13(火) 20:21:55ID:hvvlgRN4
>>729
ネットでいろいろ調べたが、解決できなかったのでここにきました。
0731nobodyさん2007/11/13(火) 20:24:53ID:???
>>728
バカ?
0732nobodyさん2007/11/13(火) 20:25:03ID:???
>>730
php使うの諦めたら?
0733nobodyさん2007/11/13(火) 20:26:33ID:???
>>728
ファイルが無い
0734nobodyさん2007/11/13(火) 20:26:46ID:???
>>728
全然調べてないでしょ?
ファイルが見つからないって事だから、パスが通るようにすれば解決。
0735nobodyさん2007/11/13(火) 20:31:05ID:JpvZapzB
横からだけど

> Unknown: (error detail) in Unknown on line 0

俺、こういう Warning や Fatal 見たことがないんですけど、
どういう状況で出るんですか?( in test.php on line 15 とかは見ます)

質問なのでID出します。
0736nobodyさん2007/11/13(火) 20:32:41ID:???
>>735
自演乙
0737nobodyさん2007/11/13(火) 20:32:52ID:hvvlgRN4
他のPHPファイルは正常に動作するんですが・・。
0738nobodyさん2007/11/13(火) 20:34:05ID:???


  いま俺のことバカって言った奴マジでてこいっ!

  やったる。



0739nobodyさん2007/11/13(火) 20:35:31ID:???
>>738
よう、バカ
0740nobodyさん2007/11/13(火) 20:36:42ID:???
エラーがでたPHPのソースだしてみればいいでしょうに
該当ラインわからんのなら全体像みておかしいところ見つけるしかないでしょう
0741nobodyさん2007/11/13(火) 20:50:37ID:???
>>737
エスケープシーケンスって知ってる?
ていうかスラッシュ使えよ
0742nobodyさん2007/11/13(火) 22:29:26ID:???
php.iniでの読み取りファイルのパスの設定をしていて、今のphp.iniを見たら
すでにpearへのパスが指定されてました
コレにsmartyへのパスを追加するのは以下の書き方でOKですか?
include_path = ".;c:\php\includes;c:\php\pear"
include_path = ".;c:\php\includes;c:\webroot\libs\Smarty\libs\"
0743nobodyさん2007/11/13(火) 22:49:49ID:???
>>742
いいんじゃない?pearは消えてるけど
0744nobodyさん2007/11/13(火) 23:05:55ID:Az3IX4ek

すみません。ご教授ください。
3000行程あるテキストファイルの処理を行っています。
全ての行を読み込み、必要な情報がある行に関しては、
if文とeregを使用して行番号を抽出しているのですが、
eregでのマッチングが出来てる行と出来ない行があります。
記述は以下のように、#や|、半角スペースなどが混じる文字列になります。

if ( ereg("aaa# /aaa/bbb | ccc ddd", $line[$i]) ) {
$test = $i;
} elseif ( ereg("eee# /fff/ggg | hhh iii", $line[$i]) ) {
$test2 = $i;

マッチングしない行が特に、他と大きく異なって
特別な記号などを使用している訳では無く原因がつかめません。
対処法をご教授頂けないでしょうか。よろしくお願いします。
0745nobodyさん2007/11/13(火) 23:07:00ID:???
ありがとうございます  pearと共存しようとしたら、
include_path = ".;c:\php\includes;c:\php\pear;c:\webroot\libs\Smarty\libs\"
これでいいんでしょうか?
0746nobodyさん2007/11/13(火) 23:28:49ID:???
smartyって使ったことないからしらないが、見えるとこにおいて良いのか?
0747nobodyさん2007/11/13(火) 23:31:20ID:???
出来ればドキュメントルート以下におかないほうが良い。
出来ない場合はアクセス制限を掛けるしかないかな。
0748nobodyさん2007/11/13(火) 23:32:58ID:???
別にテンプレートディレクトリだけでいいのでは?
0749nobodyさん2007/11/13(火) 23:51:40ID:otS5xGSl
データの入り方・構造について質問です。

WEBアンケートでチェックボックスを複数選択し、登録する時
複数選択箇所はforなどで1つずつ分けてDBなどに保存するべきでしょうか?
それとも「1,2,3」として、カンマ区切りで保存するべきでしょうか?
0750nobodyさん2007/11/13(火) 23:53:31ID:???
>>749
DBの話だから微妙にスレチじゃないかな。
普通はなるべく1回で済ますと思うけど。
07517502007/11/13(火) 23:55:55ID:???
>>749
すまん読み間違えてた。
「〜するべき」とかは言えないけど、DBのほうがソートやら更新やらが楽で良いよ。
07527162007/11/14(水) 00:06:12ID:???
事故解尻しました。
0753nobodyさん2007/11/14(水) 00:08:28ID:???
格納の仕方の話だろ?
すべきかどうかの話でいうなら、正規化すべき。
MysqlならENUM型使ってもいいんじゃない。
07547442007/11/14(水) 00:30:03ID:???
744です。書き忘れましたが環境はphp4です。
些細な事でも構いませんので、何かアドバイスをお願い致します。
07557492007/11/14(水) 00:32:49ID:wV0Vxe79
>>750,753
格納の話です。フリーのアンケートなどを見ると、PHPで作っており、
かつ「1,2,3」というような格納方法が多いので、どうするのが効率良いかな?
と思い、質問させていただきました。
>>753
ENUM型って予め登録したい項目を決めておかないと駄目ですよね?
そうじゃなくて、質問文もPHPから登録して、
回答もPHPから保存したいと思っています。
0756nobodyさん2007/11/14(水) 00:41:41ID:???


  いま俺のことバカって言った奴でてこいっ!


07577442007/11/14(水) 00:51:12ID:???
事故解決しました。
あなたたちの解答は期待しないので、レスは不要です。
07587442007/11/14(水) 00:57:38ID:rpeYtezF
解決していません・・・
初心者用スレに行ったほうが良いんでしょうか
0759nobodyさん2007/11/14(水) 01:05:29ID:???


  いま俺のこと笑った奴でてこいっ!


0760nobodyさん2007/11/14(水) 01:06:16ID:???
>>744
実際に再現できるデータも見せてよ
0761nobodyさん2007/11/14(水) 01:07:13ID:???
ここは性格の悪い奴等が多いから他スレのほうが良いかも
0762nobodyさん2007/11/14(水) 01:10:18ID:???
性格悪くなったのはここ最近だよな…
0763nobodyさん2007/11/14(水) 01:12:40ID:???
>>744
元データがわからんことには正規表現の書きようがない、つーか正規表現スレ行った方がいい気が・・・
あと3000行も処理すならeregよりpreg使ったほうがいいんじゃないかな
0764nobodyさん2007/11/14(水) 01:18:48ID:7Op+OI+L
>>762
なんかおかしなのが偽装してるんだよな。
07657622007/11/14(水) 01:28:10ID:???
僕の肛門も解決されそうです・・・
0766nobodyさん2007/11/14(水) 01:31:32ID:???
eregって使ったことないんだがpregに比べてメリットあるの?
0767暗黒元帥2007/11/14(水) 01:47:25ID:Om3SUPCZ
お前らって下らない事を言うのか?
0768nobodyさん2007/11/14(水) 02:03:24ID:???
板によるけどそれが何?
0769nobodyさん2007/11/14(水) 02:07:24ID:???
なぜお前らは下らないことを言うな
0770nobodyさん2007/11/14(水) 02:43:19ID:???
>>766
eregよりpregを使えと公式よりアナウンスがありますが・・・?
0771nobodyさん2007/11/14(水) 02:55:49ID:???
>>766
元々POSIX系の正規表現を覚えてる人がそのまま書式を使える。
0772nobodyさん2007/11/14(水) 03:02:57ID:???
レベルひっく・・・

0773nobodyさん2007/11/14(水) 03:10:22ID:???
perlと互換があるからつかっときゃいいんだよクズ
0774nobodyさん2007/11/14(水) 03:14:33ID:???
こんばんは。



セックスレス中高年です
0775nobodyさん2007/11/14(水) 03:14:44ID:???
PHPがPerlの真似をする必要なんてねーだろボケナス
0776nobodyさん2007/11/14(水) 03:19:15ID:???
>>766は>>744を見て"ereg"のメリットを聞いてるんだろ
逆に捉えてる奴がいるな
0777nobodyさん2007/11/14(水) 03:22:09ID:???
ここはぜんぶnobodyさんの独り言なんだから疑問系のあとに答える小言をいってもいいだろ!
0778nobodyさん2007/11/14(水) 03:48:29ID:???
まず、eregのが全然遅い
0779nobodyさん2007/11/14(水) 04:17:16ID:X7vOzj33
>>706
ズバリ、そういうのを求めてました。
ありがとうございました。
0780nobodyさん2007/11/14(水) 05:08:11ID:???
PHPは所詮Perlの資産におんぶにだっこってことか
0781nobodyさん2007/11/14(水) 08:39:18ID:???
スレタイ読めない奴よりはマシだろ
0782nobodyさん2007/11/14(水) 10:08:04ID:yU5FBGbV
mysqlを使う場合、
PHPのインストールより必ず先に
mysqlをインストールしておかなければ駄目ですか?
後からmysqlをインストールしたり、入れ直したりしても正常に動くのでしょうか?
0783nobodyさん2007/11/14(水) 10:26:56ID:???
問題なし
0784nobodyさん2007/11/14(水) 11:16:06ID:???
>>778
だからeregのデメリットじゃなくメリットを聞いてるんだっつの。
何故こんな関数が用意されてるのか理由を言え。
0785nobodyさん2007/11/14(水) 11:33:15ID:???
>>784
マニュアル嫁よwwww
思いっきり書いてあるじゃんwww
お前にはそれすら調べる能力がないってのか?w
0786nobodyさん2007/11/14(水) 11:33:57ID:???
pregと比べたらメリットもデメリットも別にないだろ
速度面なんて大量の処理してもそこまで変わらんし
好きなように好きなほうを使えでFA

まぁpregと強引に比べてメリットいえといったらデリミタがいらんぐらいか
0787nobodyさん2007/11/14(水) 11:55:24ID:XrAX72Bt
CSRF対策というほどのこともないが、二重送信対策も兼ねてセッションでワンタイムチケットを管理しようと思い、
ざっと検索してみたところ↓を見つけたのだが
http://www.phppro.jp/phptips/archives/vol21/
この中でわざわざmd5の戻り値をhtmlspecialcharsしてるのはなぜ?
md5の結果って16進(の文字列)だから、別にエスケープする必要はないと思うんだけど……。

自分、なんかボケかましてますか?(;´∀`)
0788nobodyさん2007/11/14(水) 11:57:10ID:???
>>787
ほんとにmd5しか入らない値なら、やる必要ナッシン。
0789nobodyさん2007/11/14(水) 12:03:46ID:???
出力時にやってるからお約束みたいなもんだろ
0790nobodyさん2007/11/14(水) 12:35:39ID:???
CSRF対策って何するもんなんですか?

htmlspecialchars
mysql_real_escape_string
strip_tags
あとは確認→完了の時とかにもう一度チェック。

form系のところはこれをやってます。

他にどんなことするといいんでしょうか?
0791nobodyさん2007/11/14(水) 13:39:10ID:???
>>788
>>789
ですよねーw 安心しました(苦笑)

>>790
「ぼくはまちちゃん」でググるべし。
まぁ、ワンタイムチケットはCSRF対策とサーバー側での二重送信対策の両方、という意味合いが強いと思う。
感想だけどね。
0792nobodyさん2007/11/14(水) 13:39:47ID:???
sjisまたはeucの文字コードを使用してる場合はそんな対策しても無意味だけどね
■ このスレッドは過去ログ倉庫に格納されています