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

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

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

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

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

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

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

【その他諸注意】
・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
・SQLについての質問はデータベース板(PCカテゴリ)の各スレで
0478nobodyさん2007/11/23(金) 14:02:39ID:???
>>477
そんくらい自分で判断しろ。もしくはドキュメントを読め。
0479nobodyさん2007/11/23(金) 14:41:51ID:dy8jwYb7
全くの初心者ですが、質問させてください。
いま、gmpというものを使いたくて、マニュアルを見ているのですが、意味が分からず困っています。

インストール手順というところで、オプション --with-gmp を使用することにより〜とありますが、
「PHP オプションとは」や「PHP インストール オプション」、「PHP オプション」や「PHP --with-gmp」で検索しても
一向に意味が分かりません。

GMPに限らず、もっと基本的な「オプションを使用する」の方法や意味、解説などがなされているサイトなどはありますでしょうか?
0480nobodyさん2007/11/23(金) 14:46:04ID:???
479 があぼ〜んになってるなw
0481nobodyさん2007/11/23(金) 14:53:52ID:???
>>479
マニュアルの付録H
04824792007/11/23(金) 15:01:34ID:???
ありがとうございます。レンタルサーバーのphpinfo()のConfigure Commandに記載されていなかったのですが
使えないという事ですね。
0483nobodyさん2007/11/23(金) 15:03:09ID:???
うん
04844792007/11/23(金) 15:17:08ID:???
ありがとうございました。
0485nobodyさん2007/11/23(金) 16:30:33ID:aJzRS5bo
php4.x にてSQLite(PEAR経由)データベース内のテーブルリストを取得する
方法はありますか?
0486nobodyさん2007/11/23(金) 16:43:55ID:aJzRS5bo
自己解決しました。
0487nobodyさん2007/11/23(金) 16:44:13ID:???
show tables実行できないの?
0488nobodyさん2007/11/23(金) 16:46:21ID:???
入力された住所が存在する住所かどうかって調べるクラスないですか?
〜区町村までの住所です。
0489nobodyさん2007/11/23(金) 16:48:17ID:???
>>1
0490nobodyさん2007/11/23(金) 16:48:25ID:???
>>488
ほい
http://www.google.com/search?q=%E9%83%B5%E4%BE%BF%E7%95%AA%E5%8F%B7+%E4%BD%8F%E6%89%80+php
0491nobodyさん2007/11/23(金) 17:38:01ID:???
携帯でセッション使えない話聞いたんですが
セッションの引き回しにURLかフォームを使わないといけない情報を見つけたんですが、
セッションIDをサーバに保存してIP(携帯であればIPは一意?)でセッションIDを呼び出す
方法って王道ですか?セッションIDを引き回さない方法でもっといい方法ありますか?
0492nobodyさん2007/11/23(金) 17:54:31ID:???
携帯のIPなんて変わりまくりだろw
0493nobodyさん2007/11/23(金) 17:58:14ID:???
  ,j;;;;;j,. ---一、 `  ―--‐、_ l;;;;;;
 {;;;;;;ゝ T辷iフ i    f'辷jァ  !i;;;;;  携帯のIPなんて
  ヾ;;;ハ    ノ       .::!lリ;;r゙  変わりまくり…
   `Z;i   〈.,_..,.      ノ;;;;;;;;>  そんなふうに考えていた時期が
   ,;ぇハ、 、_,.ー-、_',.    ,f゙: Y;;f     俺にもありました
   ~''戈ヽ   `二´    r'´:::. `!
0494nobodyさん2007/11/23(金) 18:06:02ID:???
携帯「電話」であればIPアドレス持っているわきゃないな。電話番号という立派な識別子があるんだから。
端末固有番号でも使えばいいんじゃね?
0495nobodyさん2007/11/23(金) 18:26:48ID:???
携帯がwebにアクセスする場合は間にゲートウェイが挟まれる。
しかもゲートウェイは複数存在し同じ端末からでもアクセスごとのゲートウェイが一意とは限らない(負荷分散のために)
0496nobodyさん2007/11/23(金) 18:29:45ID:???
携帯のIPはアクセスしている基地局がつながっているエリアプロキシで変わるな
判別したけりゃ固体識別番号使え
0497nobodyさん2007/11/23(金) 19:42:39ID:???
  ,j;;;;;j,. ---一、 `  ―--‐、_ l;;;;;;
 {;;;;;;ゝ T辷iフ i    f'辷jァ  !i;;;;; 
  ヾ;;;ハ    ノ       .::!lリ;;r゙  level ひっくw・・・・
   `Z;i   〈.,_..,.      ノ;;;;;;;;> 
   ,;ぇハ、 、_,.ー-、_',.    ,f゙: Y;;f  
   ~''戈ヽ   `二´    r'´:::. `!

0498nobodyさん2007/11/23(金) 20:03:38ID:???
またAA好きの小学生が沸いてるな
0499nobodyさん2007/11/23(金) 21:06:49ID:???
>>496
ということは、エリアは絞れるわけか?
0500nobodyさん2007/11/24(土) 04:46:05ID:???
  ,j;;;;;j,. ---一、 `  ―--‐、_ l;;;;;;
 {;;;;;;ゝ T辷iフ i    f'辷jァ  !i;;;;; 
  ヾ;;;ハ    ノ       .::!lリ;;r゙  ちょっと回答者のlevelが低くないかい?w
   `Z;i   〈.,_..,.      ノ;;;;;;;;>  manualさえろくに理解してないIQの低(ry
   ,;ぇハ、 、_,.ー-、_',.    ,f゙: Y;;f  
   ~''戈ヽ   `二´    r'´:::. `!


0501nobodyさん2007/11/24(土) 04:58:21ID:???
↑中二病
0502nobodyさん2007/11/24(土) 05:47:19ID:???
>>500が見えない
0503nobodyさん2007/11/24(土) 06:22:21ID:6dZP+8ef
自然数のべき乗について質問です。
$sizen = exp(-int);
$sizen = bcpow(exp(1),"-int");
であると、どちらも同じを返してくれますが、

$sizen = exp(-float);
$sizen = bcpow(exp(1),"-float");
にすると、値が違ってしまいます。

マニュアルではexp()の方は確実にfloatで良いと分かるのですが、bcpowも左オペランドには小数点ありの文字列を使用しています。
値が違うという事は右オペランドには小数点使ってはいけないのでしょうか?
0504nobodyさん2007/11/24(土) 06:32:31ID:???
2chの全スレッドの最新レス日時を取得したいんですが、
最終レスを表示して取得する方法しかないんでしょうか?
スレが43万あるんで負荷を抑えたいのですが、
phpでどうにかする方法ありますか?
0505nobodyさん2007/11/24(土) 06:58:29ID:???
どうにか出来ても負荷が掛かるので止めたほうがいいです。
板単位なら構わんだろうけど、全スッドレはちょっとヤりすぎ。
0506nobodyさん2007/11/24(土) 07:08:28ID:???
dat に対して HEAD リクエスト、Last-Modified じゃ駄目なのか?
0507nobodyさん2007/11/24(土) 07:35:39ID:???
>>506
それが一番付加が少ないかな
でも勢いのあるスレで最終レス時間取得しても意味ないけどね(レスポンス取得時にはすでに次のレスが入ってたり)
0508nobodyさん2007/11/24(土) 07:39:25ID:???
つーか使い時がわからんなあ>>504
特定のスレッドならまだ分かるけど、全スレッドの最終書込時間調べて何になるのか興味ある
0509nobodyさん2007/11/24(土) 07:43:55ID:???
ゴミサイトを作ろうとしている予感がする
0510nobodyさん2007/11/24(土) 07:50:23ID:???
subject.txt と絡めれば各スレッドの勢いを調べられるね。
0511nobodyさん2007/11/24(土) 10:56:35ID:/CIDP61k
2ちゃんに投稿する際、以下のように直接投稿しようとすると「ERROR:referer情報が変です。」となります。
リファラを送るにはどうしたらいいでしょうか?
httpクライアントを自作してリファラの偽装をするしかないのでしょうか?


http://pc11.2ch.net/test/bbs.cgi
?bbs=php
&key=1195204145&time=1104688508
&submit=%8F%91%82%AB%8D%9E%82%DE
&FROM=test
6mail=sage
&MESSAGE=test

↑わかりやすいように改行して表示しました。submitは書き込むをURLエスケープしました。
0512nobodyさん2007/11/24(土) 10:56:56ID:???
Webアプリ自体が実用性から言えばほとんどゴミ。
0513nobodyさん2007/11/24(土) 11:01:26ID:???
>>512
2ちゃんねるは実用じゃなかったのかw
0514nobodyさん2007/11/24(土) 11:03:25ID:???
>>511
12ちゃんの仕様を調べる
2)rep2を解析する
好きな方を選べ
0515nobodyさん2007/11/24(土) 11:15:19ID:???
>>514
http://age.s22.xrea.com/talk2ch/#post-res
ここを参考にしたのですが、bbs.cgiに直接投稿することはできませんか?

というか、ここはなんでも質問していいスレではなくて、phpの質問スレだと今気づきました・・・
0516nobodyさん2007/11/24(土) 11:38:01ID:???
できるよ
0517nobodyさん2007/11/24(土) 11:46:26ID:/CIDP61k
>>516

すみません、教えてください
>>511みたいなブラウザのみでは無理ですか?

こういう感じのcgiを自作しないと無理でしょうか?
http://c-others.2ch.net/test/-/php/1195204145/w

ここのサイト読めばできるというところでもいいのでなにか紹介してください。
0518nobodyさん2007/11/24(土) 11:50:09ID:???
嫌です。

リクエストヘッダすら晒さない情報小出し厨には教えたくありません。
0519nobodyさん2007/11/24(土) 11:51:41ID:???
>>518
言ってることが難しくてよくわからないです・・・
0520nobodyさん2007/11/24(土) 12:01:24ID:???
>>519
それでは、はっきりいって無理
0521nobodyさん2007/11/24(土) 12:06:23ID:???
http://www.php.net/manual/ja/function.http-head.php
0522nobodyさん2007/11/24(土) 12:24:28ID:???
>>511
そもそもGETじゃ無理
POSTで送るのは基本だろ
0523nobodyさん2007/11/24(土) 12:31:28ID:/CIDP61k
基本的なことから勉強して出直してきます・・・
答えてくれた人ありがとうございました
0524nobodyさん2007/11/24(土) 12:54:04ID:???
グローバル変数の動的定義は
$_GLOBAL[$name] = $value;
でできるけど、ローカル変数の動的定義って
eval('$name = ' . "'myname'")
みたいにevalしか手はないかな?
05255032007/11/24(土) 12:54:55ID:???
もしかして自分、なにか根本的に間違ってますか?
0526nobodyさん2007/11/24(土) 13:21:05ID:???
>>524
$name = 'myname';
0527nobodyさん2007/11/24(土) 13:30:53ID:???
>>522
とりあえず釣かもしれないけど、

ばーかって言っておきますね。ばーかw ばーかw
05285242007/11/24(土) 14:08:24ID:???
>>526
そういうことでなくて・・・
連想配列に要素がいくつか入ってて、キーをローカル変数名として、
任意のタイミングで動的に定義したいということです。
もしかしてevalよりパフォーマンスの良い方法があればと思った次第。
0529nobodyさん2007/11/24(土) 14:14:10ID:???
>>528
http://jp.php.net/manual/ja/language.variables.variable.php
こいつでどうか。
0530nobodyさん2007/11/24(土) 14:14:25ID:???
>>528
可変変数
0531nobodyさん2007/11/24(土) 14:23:38ID:???
>>527
GETで渡した値を$_POSTで取り出せるのか?
0532nobodyさん2007/11/24(土) 14:45:04ID:???
$_POST = $_GET;
するとかw
0533nobodyさん2007/11/24(土) 17:00:45ID:???
$_REQUEST でいいだろ。とマジレスw
0534nobodyさん2007/11/24(土) 17:05:42ID:???
レベルたっかwwww
0535nobodyさん2007/11/24(土) 17:13:49ID:???
上級者の解答はまるで理解できないなw
0536nobodyさん2007/11/24(土) 19:35:47ID:???
  ,j;;;;;j,. ---一、 `  ―--‐、_ l;;;;;;
 {;;;;;;ゝ T辷iフ i    f'辷jァ  !i;;;;; 
  ヾ;;;ハ    ノ       .::!lリ;;r゙  $_POST = $_GET;
   `Z;i   〈.,_..,.      ノ;;;;;;;;>  
   ,;ぇハ、 、_,.ー-、_',.    ,f゙: Y;;f  
   ~''戈ヽ   `二´    r'´:::. `!



0537nobodyさん2007/11/24(土) 19:39:56ID:???
>>527って真性のばーか?
0538nobodyさん2007/11/24(土) 23:31:38ID:???
>>537
馬鹿って言ったね?父さんにも言われたことないのに
0539nobodyさん2007/11/25(日) 00:35:57ID:LIXqHyWb
ある文字列中に全角文字(漢字含む)が含まれているかどうかを調べ、
もし含まれていたらその全角部分だけを抜き出すことって出来ますでしょうか??

たとえば、
$test = "abcあいえうおdef漢字fhi";
という場合、$testの中から「あいうえお」と「漢字」だけを取り出したいのです。
0540nobodyさん2007/11/25(日) 00:47:41ID:???
>>539
正規表現
0541nobodyさん2007/11/25(日) 00:57:29ID:???
>>539
ん〜〜、逆に半角文字だけ抜き出すとかどう?

>>540
正規表現でやると恐ろしくマンドクセー気が。
0542nobodyさん2007/11/25(日) 00:58:08ID:???
>>539
$_POST = $_GET;

0543nobodyさん2007/11/25(日) 01:04:08ID:???
[^一-龠]でいいじゃん。
mbsubstr/mbstrpos/mbstrrposの絶妙な組合わせ、そんな面倒じゃないだろ
0544nobodyさん2007/11/25(日) 07:32:45ID:???
漢字切り出しなら、こんなページ見つけたよ。
http://q.hatena.ne.jp/1186561142
0545nobodyさん2007/11/25(日) 08:20:52ID:GkPF2+Rp
名前と写真を登録するフォームがあって、名前はinput type=textで、
写真は参照フォームから入力するとして、
記入ページ→確認ページ→実登録ページ って流れだとすると、実登録ページまで
どうやって写真(.jpgのファイル名)を引き回せばいいんですか?
0546nobodyさん2007/11/25(日) 08:23:33ID:???
サーバーの適当なテンポラリにでも置いておけば?


って、PHPとは全く関係がありませんね!
05475282007/11/25(日) 09:17:42ID:???
>>529-530
サンクス。PHPもいろいろあるものだ。
0548nobodyさん2007/11/25(日) 10:02:37ID:???
空砲を上に向けて撃ったっていうけど、
その実弾が地上に落下したときに人に当たったらどうするの?
0549nobodyさん2007/11/25(日) 10:11:16ID:???
PHPとは全く関係がありませんね!
0550nobodyさん2007/11/25(日) 10:41:13ID:???
>>548
宝くじ買えばいいだろ
0551nobodyさん2007/11/25(日) 11:36:39ID:???
>>542
へぼ回答者乙
0552nobodyさん2007/11/25(日) 11:43:23ID:???
>>548
>空砲を上に向けて撃ったっていうけど、
>その実弾が地上に落下したときに人に当たったらどうするの?
空砲には弾頭がないと思うんだが。
0553nobodyさん2007/11/25(日) 11:53:53ID:???
>>545
確認ページにPOSTされた段階でユニークなファイル名作って、
その1.
 しかるべき場所に移動&DB登録。実登録時にフラグを立てる。フラグが立ってないものを定期的に消す。
その2.
 Webから見えるテンポラリフォルダ作って、そこに移動。テンポラリフォルダを定期的に掃除。

実ファイル名は名前などと一緒にセッションや、hidden(シリアライズしたりして)持ち回せばよい
0554nobodyさん2007/11/25(日) 13:02:16ID:???
>>551
全くその通りですね。上級者さんかっこよすぎます。
0555nobodyさん2007/11/25(日) 13:05:09ID:???
確認ページでローカルのを表示させるようにするのはダメなのかな。
0556nobodyさん2007/11/25(日) 13:23:51ID:???
>>555
ローカルの表示はブラウザ依存だよ
0557nobodyさん2007/11/25(日) 14:48:44ID:???
>>556
ありきたりの形容詞は要らない。
問題は、ローカルとリモートでの動作乖離だろ。
0558nobodyさん2007/11/25(日) 14:53:57ID:???
>>557
おまえは日本語から勉強しろ
0559nobodyさん2007/11/25(日) 14:55:30ID:???
Level たっかw
0560nobodyさん2007/11/25(日) 15:08:13ID:mmjJDucQ
pear つながらん

go-pear.org 自体がなくなってるって、あかんやろ!

んで、 http://pear.php.net/go-pear もつながらん!

PEARインストールできひんやんけボケ
0561nobodyさん2007/11/25(日) 15:17:58ID:???
>>560
ダウンロードして解凍するだけなのに?
0562nobodyさん2007/11/25(日) 15:25:01ID:???
鯖落ちてるね
0563nobodyさん2007/11/26(月) 08:05:57ID:???
質問です。
<?php
$uploadfile = "/Users/hogehoge/Sites";
if (!isset($_FILES['user']['name'])){
echo <<< _EOD_
<html><body>
<form enctype = "multipart/form-data" action= "{$_SERVER['PHP_SELF']}" method="POST">
<input type = "hidden" name = "MAX_FILE_SIZE" value = "1000000">
アップロードするファイル: <input name = "user" type = "file"><br>
<input type = "submit" value = "送信">
</form>
_EOD_;
} else {
print "<pre>¥n";
print_r($_FILES);
print("</pre>¥n");
if (move_uploaded_file($_FILES['user']['tmp_name'], $uploadfile)){
passthru("/bin/ls -l $uploadfile");
} else {
print("駄目です¥n");
}
}
?>
というプログラムで、

Warning: move_uploaded_file(/Users/hogehoge/Sites) [function.move-uploaded-file]: failed to open stream: Is a directory in /Users/hogehoge/Sites/upload.php on line 16

Warning: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/private/var/tmp/phpl9YY9x' to '/Users/hogehoge/Sites' in /Users/hogehoge/Sites/upload.php on line 16
というエラーが出ます。
どのへんの設定を見直せば良いでしょうか?
0564nobodyさん2007/11/26(月) 09:32:03ID:???
failed to open stream...
英語も読めない
1も読めない

まず読むと言うことが出来るように意識の設定を見なおせばいい
0565nobodyさん2007/11/26(月) 09:37:01ID:???
<わからない五大理由>
1. 読まない ・・・説明書などを読まない。読む気などさらさらない。
2. 調べない ・・・過去スレ、ググるなど最低限の内容も自分で調べようとしない。
3. 試さない ・・・めんどくさいなどの理由で実行しない。する気もない。
4. 理解力が足りない ・・・理解力以前の問題で理解しようとしない。
5. 人を利用することしか頭にない ・・・甘え根性でその場を乗り切ろうとする
0566nobodyさん2007/11/26(月) 10:07:33ID:???
簡単な英語も読めない人はプログラムに手を出して欲しくない
0567nobodyさん2007/11/26(月) 10:22:59ID:???
それは英語のできない俺に対する侮辱ですね。
デバックエラーには聞き慣れない単語が多いので面倒なのよ。
0568nobodyさん2007/11/26(月) 10:25:26ID:???
俺なら翻訳にかける
実は意外とあれでエラーの原因がわかったりもする
0569nobodyさん2007/11/26(月) 11:19:20ID:???
>>567
…侮辱なのか?日本語もよくわかってないんじゃ?

エラーメッセージなんてそのままぐぐれば回答でるし
0570nobodyさん2007/11/26(月) 11:21:45ID:???
※ここは自称回答者のストレス解消のオアシスです
0571nobodyさん2007/11/26(月) 11:42:16ID:???
エラー行だけでだいたいわかるけどなあ。
PHPはテキトーでも動くからエラーが出ない不具合のほうが多くて困る。
0572nobodyさん2007/11/26(月) 11:56:13ID:E5gL//e5
$data = file('today.csv');
$key = array($data);
print "$key[0]";


すんません、これではまったく書き出しませんがどこがわるいのでしょうか?
マニュアル見てもどうもわかりません。おねがいします。
0573nobodyさん2007/11/26(月) 11:57:44ID:???
>>572
today.csvに入っているものがわからんから何も言えない
あと、file()関数の返り値が何かを調べたほうがいい
0574nobodyさん2007/11/26(月) 11:58:28ID:???
【today.csvの中身】
1<>2<>3
4<>5<>6

【コード】
$data = file('today.csv');
print $key[0];
0575nobodyさん2007/11/26(月) 12:00:17ID:???
【today.csvの中身】
1<>2<>3
4<>5<>6

【コード】
$data = file_get_contents('today.csv');
preg_match_all("/^.*$/",$data,$match);
print_r($key);
0576nobodyさん2007/11/26(月) 12:00:29ID:???
>>574
受け取っている変数名と出力する変数名が違ってる
0577nobodyさん2007/11/26(月) 12:01:08ID:???
まちがえた訂正

【today.csvの中身】
1<>2<>3
4<>5<>6

【コード】
$data = file_get_contents('today.csv');
preg_match_all("/^.*$/",$data,$key);
print $key[0][0];
■ このスレッドは過去ログ倉庫に格納されています