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

【PHP】下らねぇ質問はID出して書き込みやがれ 93

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2010/02/15(月) 19:23:06ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 92
http://pc11.2ch.net/test/read.cgi/php/1263035502/

◆質問用テンプレ
【OS名】vine linux
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0045432010/02/17(水) 18:48:40ID:???
解決しました

自分が糞でした
0046nobodyさん2010/02/17(水) 20:03:24ID:???
解決したら、その理由を説明しろよ。
糞でも。
0047nobodyさん2010/02/17(水) 20:20:47ID:???
まあテンプレに無いことを強要することもあるまいよ
0048432010/02/17(水) 20:24:31ID:???
>>44
ODBCドライバ事態がSJISでやりとりしてるぽくて、
取り出した時点で一部の文字が?になってる。
だから文字コードを変換しても意味が無いみたい。
ちなみに外国語なんだけど、mdb上ではちゃんと格納されてるです。
mdbのデータ型はメモ型です。

>>45
自分が糞ならがんばって肥料くらいまでにはなりたい

>>46
肥やしになれたら報告します
0049nobodyさん2010/02/17(水) 23:02:50ID:lyRzhjAY
php4.4
file_get_contentsの引数なのですが下記Basic認証file_get_contentsするソースで
Warning: file_get_contents() expects at most 2 parameters, 3 given in /path/to/hoge.php on line 23
とエラーが表示されます。
http://jp.php.net/manual/ja/function.file-get-contents.php
を見ると4と5でストリームコンテキスト?の可否があるようなのですが、4.4上で下記の代替え方法はありますでしょうか?


$params = "status=". rawurlencode($message);

$result = file_get_contents($url.$params , false, stream_context_create(array(
"http" => array(
"method" => "POST",
"header" => "Authorization: Basic ". base64_encode($username. ":". $password)
)
0050nobodyさん2010/02/17(水) 23:47:15ID:???
とりあえず、49が代替を「だいがえ」と読んでいるは判った。
0051nobodyさん2010/02/18(木) 00:00:12ID:???
PECLとPEARというライブラリ群がありますが、現在ではどちらが主流なんでしょうか?
0052nobodyさん2010/02/18(木) 00:22:59ID:???
どちらも主流ではないがPECLのほうが新しくて速い
古いPEARのほうがライブラリは多い(=できることが多い)ので完全に代替には至ってない
ていうかスレタイ嫁
0053nobodyさん2010/02/18(木) 00:23:39ID:???
>>49
$ch = curl_init();
$post = array(
  //POSTするデータ
  'status' => rawurlencode($message),
);
$option = array(
  CURLOPT_URL => "http://example.com/", //URL
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_BINARYTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => "POST", //POSTメソッド
  CURLOPT_POSTFIELDS => $post, //POSTで送られるデータ
  CURLOPT_HTTPAUTH => CURLAUTH_BASIC, //認証方法
  CURLOPT_USERPWD => "example:password", //パスワードとユーザー名を"[username]:[password]" 形式で指定
);
curl_setopt_array($ch,$option);
echo curl_exec($ch);//結果を出力

cURLならこんな感じ、実際に動かしてないからミスがあるかもしれない
0054nobodyさん2010/02/18(木) 00:29:45ID:???
「代替」は「だいたい」と読みます
0055nobodyさん2010/02/18(木) 00:39:31ID:???
だいたい合ってる
0056nobodyさん2010/02/18(木) 00:49:13ID:???
大体は違いますか?
0057492010/02/18(木) 03:10:20ID:+u9lCEUS
>>53
だいたい方法ありがとうございました
いただいたコードでcurl_setopt_arrayがバージョン5.xが必要でしたが関数名でぐぐったところ
http://php.plus-server.net/function.curl-setopt-array.html
見事に下位互換するコードがありました。助かりました!一応転載しておきます

ーーーー以下転載ーーーーーーーーーー
PHP 5.1.4 より前のバージョンでこの関数と同等の操作をするには、次のようにします。
例2 curl_setopt_array() の独自実装

<?php
if (!function_exists('curl_setopt_array')) {
function curl_setopt_array(&$ch, $curl_options)
{
foreach ($curl_options as $option => $value) {
if (!curl_setopt($ch, $option, $value)) {
return false;
}
}
return true;
}
}
?>
0058nobodyさん2010/02/18(木) 03:55:17ID:???
ちゅいません!教えてください!
えーと、
phpのDOMで、
$sl->setAttribute( 's', $name );
みたいに使いたいんですが、
$nameに日本語入れると、受け手で文字記号になってしまいます><
どうすればいいのでしょうか?!
0059nobodyさん2010/02/18(木) 04:01:34ID:???
>>1
0060EM114-48-148-189.pool.e-mobile.ne.jp2010/02/18(木) 12:26:05ID:???
ふう・・・
やっと規制がとけたぜ
0061nobodyさん2010/02/18(木) 13:09:40ID:???
>>1
0062nobodyさん2010/02/18(木) 13:11:37ID:???
FEZばっかやってないで働けニート野郎
0063EM114-48-53-20.pool.e-mobile.ne.jp2010/02/18(木) 13:33:22ID:JDgmKlSP
さっさと質問かけよキチガイども
0064nobodyさん2010/02/18(木) 18:20:59ID:XBktE18D
レンタルサーバーのHTMLでリファラーを取りたいのですが、
HTMLページで<img scr="<URL>">を埋め込んだところ、imgタグを貼ったURLが取得されてしまい、
そのページのリファラが取得できません。

うまく取得する方法があったら教えてください
0065nobodyさん2010/02/18(木) 18:22:01ID:???
無理
0066nobodyさん2010/02/18(木) 18:23:49ID:XBktE18D
金も時間も気分の余裕もない
0067nobodyさん2010/02/18(木) 18:24:43ID:XBktE18D
やはり無理ですねorz

ありがとうございました
0068nobodyさん2010/02/18(木) 18:26:28ID:NVBHLzZ0
サイト全体を縮小画像で表示しているサイトとかありますが、あれはどういったモジュールを使っているんでしょうか?
0069EM114-48-61-7.pool.e-mobile.ne.jp2010/02/18(木) 18:28:36ID:1SIrdwKU
>>64
今時のレンタルサーバならPHPぐらい使えるだろzk
そんなPERL時代の名残みたいな事しないでPHPの$_SERVERでとりゃあいいだろクズ
0070nobodyさん2010/02/18(木) 18:43:05ID:???
>>68
phpからfirefoxやIEなどを起動しキャプチャを撮ってる。

ここらへんが参考になるかな

http://www.phppro.jp/news/367
http://zapanet.info/blog/item/955
0071nobodyさん2010/02/18(木) 20:19:52ID:???
PERL(笑)
中卒は帰れ^^;
0072EM114-48-61-7.pool.e-mobile.ne.jp2010/02/18(木) 20:20:46ID:???
何が中卒だ粛清するぞコルァ
0073nobodyさん2010/02/18(木) 20:30:12ID:???
>>68に答えない能無し>>72は用無しYO
0074nobodyさん2010/02/18(木) 21:24:15ID:???
>>64
JavaScriptで取得したリファラを、JavaScript上に記述したimgタグに埋め込んだPHPのURLに渡す。
0075nobodyさん2010/02/18(木) 21:26:31ID:???
uzee
0076nobodyさん2010/02/18(木) 23:32:21ID:???
>>73=>>68
0077nobodyさん2010/02/19(金) 02:32:41ID:???
htmlsql使ったことのある方におたずねしたいのですが、相対URLを絶対URLにはどうしたらよいのでしょうか?
0078nobodyさん2010/02/19(金) 02:45:59ID:rkYeDCsT
PHPでログイン認証やセッション管理を実現する場合、標準的な方法ってありますか?
session_start()というメソッドがありますが、これをベタに使うことはあまりないのかな?
セッション管理関連のモジュールがあれば教えていただけないでしょうか
0079nobodyさん2010/02/19(金) 09:46:43ID:???
>>78
認証に関しては、自前で作成・フレームワークの機能・PEAR::Authあたりかな
標準的というのは無いよ。
0080nobodyさん2010/02/19(金) 10:58:51ID:???
>>78
標準で用意されているセッション関数を利用してください
自前で用意するとセキュリティ上の問題が起こるかもしれません
0081782010/02/19(金) 12:04:46ID:rkYeDCsT
>>79
>>80
丁寧にありがとうございます。
フレームワークは使う予定が無いので、組み込みのセッション関数とPEAR:Authを検証して決めたいと思います。
0082nobodyさん2010/02/19(金) 12:35:00ID:???
pear:authなんて使うな
0083nobodyさん2010/02/19(金) 12:39:38ID:???
理由くらい書けよ
0084nobodyさん2010/02/19(金) 13:05:03ID:???
PHPの標準関数はCで書かれたバイナリ、
pearに限らず外部のライブラリはPHPで書かれたスクリプト。
圧倒的にバイナリのほうが高速に動くので標準関数だけでは出来ないことがある場合のみライブラリを使う方が良い
0085nobodyさん2010/02/19(金) 13:07:32ID:???
たまにはいいこと言うね
0086nobodyさん2010/02/19(金) 13:11:25ID:???
標準関数組み合わせて認証の仕組みを作ったのがAuthなんじゃないの?
結局同じようなモノを作る羽目になると思うけど

あとPECLはCだよね。
0087nobodyさん2010/02/19(金) 13:23:28ID:???
外部ライブラリもフレームワークも使いまくって良いよ。
勉強目的以外で車輪の再発明は無駄

>>84の所は毎回標準関数だけで開発してるのか?
違うだろ?フレームワークとか自社のライブラリ的なモノ使ってるだろ?
0088nobodyさん2010/02/19(金) 13:25:17ID:???
>標準関数だけでは出来ないことがある場合

例えば?
0089nobodyさん2010/02/19(金) 13:32:14ID:???
>>83
またチンピラかいつもごくろうさんね
0090nobodyさん2010/02/19(金) 13:33:19ID:???
>>88
いろんなソートのアルゴリズムの実装
標準関数のsortはアレなので
0091nobodyさん2010/02/19(金) 13:37:14ID:???
>>89
いや理由もなしにpear否定されても困るだろ
0092nobodyさん2010/02/19(金) 13:38:02ID:???
>>91
いつものIP表示(笑)はどうした?w
0093nobodyさん2010/02/19(金) 13:42:12ID:???
>>92
あなたが何を言いたいのか意味がわからない
IPってIPアドレスのこと?
0094nobodyさん2010/02/19(金) 13:44:31ID:???
IPhoneの事だよ
0095nobodyさん2010/02/19(金) 14:11:28ID:???
なんだIPhoneか。
会社的にそれ持ったら殺されるわ。
0096nobodyさん2010/02/19(金) 14:37:26ID:???
PHP使ってるというと馬鹿にされるからあまり言わないほうが良いと
教授や講師に言われたけど、PHPってそんなにお笑い言語なの?
PHPはweb入門の登竜門として考え慣れたら他の言語に移れと言われたけど
PHPはGREEとかでも使われてるし謎です
0097nobodyさん2010/02/19(金) 14:39:08ID:???
ここってID出さないといけないのか・・・
ID出すわけにいかないので>>96は無視して下さい
他のところさがして聞いてきます
0098nobodyさん2010/02/19(金) 14:42:49ID:???
ID出すってそんなに危険なのか
0099nobodyさん2010/02/19(金) 14:56:56ID:???
●必須スキル
 webアプリ経験:4年以上
 PHP経験:2年以上
 携帯開発経験
●単価
 MAX40万[150-210h]
0100nobodyさん2010/02/19(金) 15:34:35ID:ImlyfveR
【OS名】xp pro
【PHPのバージョン】5.2.9
【質問内容】
スレチだったら申し訳ないのですが・・・
isleのサーバーに移転することになったので、isleのコントロールパネルにて旧サーバーからディレクトリコピーツールを使用しました。
移転先プレビューサーバにて確認してみたところphpが表示されず500エラーが発生しました。

info.phpでテストしてみたところ
・ホームディレクトリ直下のphpファイルは正常動作する
・ホームディレクトリに作成したフォルダ内のphpファイルは動作しない (ex.http://〜〜〜/test/info.php が動作しない)
・動作しないphpについてはソースの中身は関係ない模様(htmlのファイルの拡張子をphpに変えただけでも動作しなくなる)
・php以外のファイル(html,csv)はディレクトリがどこでも正常に動作した
・問い合わせたところ、phpのバージョンが4になっているので動作しないとのこと
・旧サーバーはPHP4 新サーバーはphp5 に対応

ホームディレクトリ以外のphpファイルは動作しない設定になっていると思うのですが、どう設定すればいいのでしょうか?


0101nobodyさん2010/02/19(金) 15:44:30ID:???
>htmlのファイルの拡張子をphpに変えただけでも動作しなくなる

この動作しないというのはどういう状態?エラーかなんかが出てる?
01021002010/02/19(金) 15:46:24ID:ImlyfveR
>>101
500エラーが発生します。
0103nobodyさん2010/02/19(金) 16:20:24ID:???
>>96
そういう偏見をもつ人間が先生なのか、かわいそうだね
PHPは道具にすぎないのだから別にお笑い言語でもなんでもないよ
使い手が生かせるか生かせないかだろ
0104nobodyさん2010/02/19(金) 16:30:24ID:???
>>103
wwwwww
0105nobodyさん2010/02/19(金) 16:33:11ID:???
>>100
変な .htaccess を置くと500エラーが出るよ。

<FilesMatch "\.php$">〜</FilesMatch> とか
AddType, AddHandler 辺りがどうなってるか確認。
01061002010/02/19(金) 17:15:21ID:ImlyfveR
>>101
>>105

ご指摘の通り 旧サーバーから移行されていた .htaccess が原因だったようです。
修正をかけて正常に動作するようになりました。
ありがとうございました。
0107nobodyさん2010/02/19(金) 18:03:27ID:???
くだらない質問なんですが、\←これをメモ帳で打つと¥になり、コピペしても¥に置き換わります。
どうしたら解決できますか?
0108nobodyさん2010/02/19(金) 18:37:35ID:???
まずパソコンのコンセントの挿し方から教えてあげようか
0109nobodyさん2010/02/19(金) 18:45:00ID:???
>>107
こっちの方が回答得られると思います

http://pc11.2ch.net/pcqa/
0110nobodyさん2010/02/19(金) 23:39:21ID:???
社長に騙されてトンデモなプロジェクトに放り込まれた
絶対に許さない
0111nobodyさん2010/02/19(金) 23:51:39ID:???
>>110
こちらでどうぞ

http://science6.2ch.net/test/read.cgi/infosys/1263288522/
0112nobodyさん2010/02/19(金) 23:53:10ID:???
¥キーを押して$になったら大変だろjk
0113nobodyさん2010/02/20(土) 14:48:35ID:???
このスレの有名人ランキング


正規表現クン
OCN
k.k.projects
チンピラ
0114nobodyさん2010/02/20(土) 14:50:17ID:???
http://pc8.2ch.net/test/read.cgi/php/1161784348/
http://www.padmacolors.org/archives/2006/11/07_062638.php
0115PHP3週間目2010/02/20(土) 15:18:10ID:???
PHPscriptが動作しているOSの種類やバージョンが分かる関数はあるのでしょうか?

改行コードのバイト数を「 strlen(PHP_EOL) 」で判定する
参考URL
http://blog.fukaoi.org/2010/01/04/php_eol

また日本語名を含むファイルをアップロードした際に日本語が化ける問題はどう対処すればいいのでしょうか?
アップロードしたファイルのファイル名を動作しているOSに合わせて変換はできますか?
参考URL
http://itpro.nikkeibp.co.jp/article/COLUMN/20080515/301933/?ST=oss&P=3

mb_internal_encodingはPHPの設定ですが、OSの設定を知る事はできないのでしょうか?

教えて!エロイお姉さん!
0116nobodyさん2010/02/20(土) 15:21:08ID:21d3TBtu
mysqli の bind_param と bind_result がネックで汎用化が難しいのですが、
何か良い案ありますか?

呼び出し側は、
executeQuery($db, $sql, "ss", array($id1, $id2), array("", "", ""));
みたいな感じにしたいです。
今は、引数の数ごとにswitchで分岐して、bind_param()とbind_result()を処理してます。
0117nobodyさん2010/02/20(土) 15:44:39ID:???
>>115
>>1

>>116
何がネックなのかよく分からんけど
引数をforeachで回せばいいんでは?
0118nobodyさん2010/02/20(土) 15:51:07ID:???
>>115
マルチ乙
01191162010/02/20(土) 15:58:33ID:21d3TBtu
>>117
例えば引数が3つあった場合、
$stmt->bind_param("sss", $value1, $value2, $value3);
みたいな感じに書く必要があるので、
ループで処理できないんです。
「$value1, $value2, $value3」の部分を配列から作ることができれば良いのですが。

なので今は、下のようにしようかどうか。。
$count = count($param);
switch ($count) {
case 0: break;
case 1: $stmt->bind_param($paramType, $param[0]); break;
case 2: $stmt->bind_param($paramType, $param[0], $param[1]); break;
case 3: $stmt->bind_param($paramType, $param[0], $param[1], $param[2]); break;
:
0120nobodyさん2010/02/20(土) 16:28:34ID:???
>>116
phpのマニュアルにはUser Contributed Notesってのがあってだな
01211162010/02/20(土) 17:03:43ID:21d3TBtu
>>120
おおー、ありがとうございます!
call_user_func_array(array($stmt, 'bind_param'), $paramList);
で、うまく行きました。

ただ、結果取得の方はできないです。。。
call_user_func_array(array($stmt, 'bind_result'), $outputList);

これはDBじゃなくて、
どちらかと言うと call_user_func_array() の使い方の問題ですね。
0122nobodyさん2010/02/20(土) 17:16:00ID:???
とりあえず真面目に質問したいなら。。。 とかやめれ
01231162010/02/20(土) 17:21:04ID:21d3TBtu
はい、失礼しました...
0124nobodyさん2010/02/20(土) 17:26:44ID:hFwUs/sv
【OS名】Windows 7
【PHPのバージョン】php5.30
【質問内容】
for ($i=1; $i <=3; ++$i) {
$変数 = $i
}
といった具合にスクリプトを書いて、$a1=1,$a2=2,$a3=3のようにしたいのですが、$変数の部分はどのように指定する倍医のでしょうか?
0125nobodyさん2010/02/20(土) 17:30:22ID:???
for ($i=1; $i <=3; ++$i) {
$変数.$i = $i
}
0126nobodyさん2010/02/20(土) 17:42:43ID:???
なぜ前置加算なんだろう
0127nobodyさん2010/02/20(土) 17:47:40ID:hFwUs/sv
for ($i=1; $i <=3; ++$i) {
$a.$i = $i;
}
echo $a1;
とやってみたのですが、$aが定義されていないと3回出て、そのあと$a1が定義されていないと出てしまいます。
0128nobodyさん2010/02/20(土) 17:52:35ID:???
正しくはこんな感じ

$’a’.$i
$”a$i”
${’a’.$i}
${”a$i”}

お好きなのをどうぞ
0129nobodyさん2010/02/20(土) 18:13:51ID:???
>>128
実行するまでもなくPDTでエラーが...
0130nobodyさん2010/02/20(土) 18:28:29ID:???
PDTって可変変数対応してねーの?
0131nobodyさん2010/02/20(土) 18:46:18ID:???
1,2こ目はエラーじゃね?
0132nobodyさん2010/02/20(土) 19:16:44ID:???
中括弧で囲めってこったな
0133nobodyさん2010/02/20(土) 20:31:01ID:???
PHPには関数内でstatic変数を定義できる機能がありますが、
これはクロージャで実装されてるのでしょうか?
グローバル変数と違って名前空間を占有しないのにどこかに静的に保存されている、というのが
気持ち悪いのですが実際はどうやって保存されてるのですか?
0134nobodyさん2010/02/20(土) 20:35:05ID:bS4gzLF5
【OS名】Windows XP Professional SP3
【PHPのバージョン】PHP 5.1.4
【連携ソフトウェア】Apache 2.2.2、MySQL 5.0.21
【質問内容】
rarファイルやzipファイルの中の先頭の1ファイルを抜き出して、サムネイル表示するスクリプトを作成したいと思っています。
そこで現在、PECL::zipやPECL::rarを用いて圧縮ファイルを解凍した後、先頭の1ファイルを取得して、
phpThumbnailerなどのクラスを使ってサムネイルを作成し、解凍したファイルを削除する、という方法を考えています。

しかし、圧縮ファイルを全て解凍すると、時間がかかりすぎてしまします。
解凍せずに、先頭の1ファイルを取得して、そのサムネイルを作る方法はないでしょうか。

過去スレは81〜93(現行スレ)まで"サムネ"で調べました。
該当件数は11件で、同じような質問が過去スレ91の892番にありましたが、解答はありませんでした。

よろしくお願いいたします。
0135nobodyさん2010/02/20(土) 21:19:29ID:???
>>134
pecl::zipってZipArchiveでいいんだよね?
前提の質問だけどextractToで特定のファイルを指定して解凍した時でも全てのファイルが解凍されるの?
0136nobodyさん2010/02/21(日) 03:33:43ID:???
今年こそCMS作る
0137nobodyさん2010/02/21(日) 07:09:02ID:???
CMSほどいらんもんないわ
0138nobodyさん2010/02/21(日) 12:00:00ID:???
URLに渡された引数の取得方法はいくつかありますが
import_request_variables は想定外の変数が作られてしまいますし
今のところ
$input = $_POST + $_GET;
のように取得してます。(GETの重複キーが無視されるのは想定内)

我流なので少々自信ないのですがこれで特に問題ないでしょうか。
もっと適当なやり方があったら教えてもらえませんか。
01391382010/02/21(日) 12:00:41ID:ek+ZaY/s
すいませんsage消し忘れました。
0140nobodyさん2010/02/21(日) 13:33:50ID:j6dUsmZ9
すんません
phpさわってみたいんですけど、まず何を作ってみればいいんでしょー?
0141nobodyさん2010/02/21(日) 13:39:01ID:???
まずは環境を整えろ
0142nobodyさん2010/02/21(日) 13:42:28ID:j6dUsmZ9
環境というのはXAMPPとかでよろしかったですか?
0143nobodyさん2010/02/21(日) 13:51:49ID:???
もち
0144nobodyさん2010/02/21(日) 14:23:38ID:???
【OS名】FreeBSD 7.0-RELEASE-p4
【PHPのバージョン】5.2.6

CGIとしてインストールされているPHPでリクエストヘッダを取得するにはどうしたら良いですか
■ このスレッドは過去ログ倉庫に格納されています