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

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

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

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

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0137nobodyさん2012/06/26(火) 20:14:56.85ID:???
お前には無理

はい、次の方どうぞ
0138nobodyさん2012/06/26(火) 20:18:51.21ID:???
>>136
http://php.net/manual/ja/function.virtual.php
これは試した?
0139nobodyさん2012/06/26(火) 20:28:55.54ID:zj9cDHda
POSTとGET、どちらを優先すべきか迷っています
どちらが推奨されているんでしょうか?
0140nobodyさん2012/06/26(火) 20:32:09.67ID:CA9sgAti
>>138
一瞬、これは上手くいくのではと思ったんですが、今のところはちょっと・・・
もう少しいろいろやってみます。情報ありがとう!御礼です。^^
0141nobodyさん2012/06/26(火) 20:32:30.83ID:???
なんで悩むの?
0142nobodyさん2012/06/26(火) 20:41:32.60ID:???
URIに含める必要のある情報はGET、でなけりゃPOST 優先とかない
0143nobodyさん2012/06/26(火) 20:42:16.57ID:???
GETには長さの上限がある

POSTはキャッシュを短くすると 戻る ボタンで戻れないサイトになる
再読み込みすると再POSTしてしまうことにも注意

このくらい自分で調べなさい
調べなくても書けるが
0144nobodyさん2012/06/26(火) 21:01:34.95ID:zj9cDHda
>>141-143
ありがとうございます
0145642012/06/26(火) 22:08:03.04ID:1ceHQTZw
お願いします。

ファイルをアップロードする時
サーバー上にファイルをアップロードして、 置かないと
ファイルのサイズの取得はできないのでしょうか?

0146nobodyさん2012/06/26(火) 22:09:04.17ID:???
phpにできないことはない
0147nobodyさん2012/06/26(火) 23:12:39.93ID:zj9cDHda
>>145
php ファイルサイズ取得
でぐぐると出てくると思うが・・・

アップロード前なら
JS ファイルサイズ取得
ででてくるサンプルでもいいし
0148nobodyさん2012/06/26(火) 23:18:01.52ID:???
phpにできないことはない
0149nobodyさん2012/06/26(火) 23:30:59.75ID:???
PHPerは馬鹿しかいないな

アップロード前にサイズを取得できるもんなら具体例を示せクズが
0150nobodyさん2012/06/26(火) 23:35:44.66ID:???
なにキレてんの
0151nobodyさん2012/06/26(火) 23:36:58.87ID:???
早く示せよクズ
0152nobodyさん2012/06/26(火) 23:40:31.74ID:???
なにキレてんの
0153uy2012/06/26(火) 23:42:42.83ID:???
俺はゴミカスだがエリートゴミカスだ
お前らのような下級ゴミカスとは格が違う
0154nobodyさん2012/06/26(火) 23:49:27.11ID:???
phpにできないことはない
0155nobodyさん2012/06/26(火) 23:53:02.26ID:???
uyでもいいぞ
お前はゴミカスだから無理だろうが
0156nobodyさん2012/06/27(水) 00:02:18.56ID:???
なにキレてんの
0157nobodyさん2012/06/27(水) 00:08:42.03ID:???
phpにできないことはない
0158nobodyさん2012/06/27(水) 00:09:40.53ID:7rvgH06x
シングルコーテーションは「 ' 」か「 ` 」のどちらを使えばいいんでしょうか
0159nobodyさん2012/06/27(水) 00:11:13.97ID:???
 '△` マンドクセ
0160nobodyさん2012/06/27(水) 00:53:33.21ID:LsnLOJeW
メール送信する時のエンコードってどうしてますか?
 ・Gmail, yahooメール, live.jp, auなどはsjis(テスト確認済み)
 ・docomoはsjis(未確認)
 ・ソフトバンクだけutf-8(未確認)
…とすれば良いのかなと思ってるんですがそれで間違いないんでしょうか?

いろんなサイトを見てると
「ドコモとAUはSJISで、ソフトバンクはUTF8で、PCはISO-2022-JP」という意見があるみたいなんですが
ISO-2022-JPで送るとわかる限りで以下の問題があります
 ・Gmail :送信者名が化ける(本文、件名は大丈夫)
 ・yahooメール, live.jp :送信者名、件名が化ける

また、プロバイダメールやdocomo, softbankについては端末を持っていないので確認できません
他にもいろいろと環境依存(zendFWのzend_mail利用、smtpはGmailなど)があるかもしれませんが
それはともかく、メール送信時のエンコードはどうしたら良いか、ご意見いただけると嬉しいです
よろしくお願いします
0161nobodyさん2012/06/27(水) 01:34:28.10ID:???
携帯での文字コードはどうあるかの前に、

送信者名や件名が ISO-2022-JPで化けるのは、送り方が間違ってる。
何で送ってるか知らないけど、エンコードしなくちゃいけないのにしてないだろ。

意味が分からないのであれば、分かるまでは
メールを送信すべきではないと思う。

嘘やイツノジダイノハナシダヨみたいなゾンビサイトが山ほどあるから気をつけてね。
0162nobodyさん2012/06/27(水) 02:44:34.24ID:LsnLOJeW
>>161
ありがとうございます!
ヘッダの日本語部分、よくよく見返すとmb_encode_mimeheader();でなくmb_convert_encoding()してました!

残りの本文の文字コードですが、こちらから絵文字を送る予定はないので本文もISO-2022-JPでいいんでしょうか
古い端末だと無理かもしれないから
docomo/au:SJIS、Softbank:utf-8 にすべきなんでしょうか

人から送られてきたメールのヘッダを見ると、docomo/auはiso-2022-jp、softbankはISO-2022-JPに
なっていますが…
全然PHPと関係なくなってすみません
0163nobodyさん2012/06/27(水) 05:15:17.47ID:???
絵文字と、iso-2022-jpでは表現できない文字、な

あとは概ねいい
0164nobodyさん2012/06/27(水) 21:21:58.61ID:???
でた!!!

mb_encode_mimeheader
0165nobodyさん2012/06/27(水) 21:53:21.52ID:???
>>129

java だとこのファイルは圧縮して、このファイルは圧縮しないとか指定して
一つの zip に包めるので。
ちなみに linux のコマンドとかでも同じように圧縮、非圧縮を指定して一つに包めるんだけど
軽くしか調べてないけど PHP だと圧縮しないで zip に入れる方法がよくわからなかったので。

小さいから無圧縮だとか言われても、大きいファイルを圧縮しないで包めないなら
PHP でやるのはやめておきます。

0166nobodyさん2012/06/27(水) 22:13:11.92ID:???
>>165

23. Javaの話をすると回答者が不機嫌になるんだけど・・・
 → 他言語について言及しないこと。ここの回答者はPHPしかわかりません。
0167nobodyさん2012/06/27(水) 23:16:26.46ID:???
http://akatukisiden.wordpress.com/2011/07/08/make_epub/
0168nobodyさん2012/06/28(木) 01:55:07.79ID:VxuqYUaq
やや高度なphpのサンプル置いてあるwebサイト教えてください
0169nobodyさん2012/06/28(木) 02:02:26.51ID:???
適当なオープンソースでも読んだら
0170nobodyさん2012/06/28(木) 10:30:40.06ID:BhBY6vnH
json文字列をdecodeしたあとのようなオブジェクトから
stdClassを全部arrayにしたいのですが単にarrayにキャストするだけでは
トップレベルのstdClassがarrayになるだけで中身はなりませんでした
$json->hoge[0]->fuga[0]->moge;

$json["hoge"][0]->fuga[0]->moge;

これを全部配列
$json["hoge"][0]["fuga"][0]["moge"];
のようにするにはforeachなんかで自分で作るしかないのでしょうか?
0171nobodyさん2012/06/28(木) 10:52:10.73ID:???
自分で作ってください。

function object2array($o) {
if (is_object($o) || is_array($o))
foreach ($o as $k => $v)
$array[$k] = object2array($v);
else $array = $o;
return $array;
}
01721702012/06/28(木) 11:06:05.83ID:BhBY6vnH
>>171
ご丁寧に関数までありがとうございます
ありがたく使わせていただきます
0173nobodyさん2012/06/28(木) 12:39:50.82ID:kzinoyu5
てすと
0174nobodyさん2012/06/28(木) 12:42:11.50ID:kzinoyu5
↑すいません。規制きつかったのでテストさせてもらいました。

質問いいでしょうか。

$変数 = $変数 -> SendMail(ユーザー定義関数)


の様な構文があるのですが、"->"この記号の意味が
ぐぐっても分かりません。
どういう操作をしているのでしょうか。
宜しくお願いします。
0175nobodyさん2012/06/28(木) 12:44:13.17ID:kzinoyu5
テンプレで済んでました……
自分でもう一度考えてみます
0176nobodyさん2012/06/28(木) 14:29:06.38ID:???
クラスを学べ
0177nobodyさん2012/06/28(木) 16:56:52.38ID:???
htmlspecialcharsのデコード版はhtmlspecialchars_decode
htmlentitiesのデコード版はhtml_entity_decode
命名方法おかしいだろ
0178nobodyさん2012/06/28(木) 17:28:22.00ID:???
すいません
0179nobodyさん2012/06/28(木) 18:27:10.70ID:IOgu8Gzq
ぷろぱち
0180nobodyさん2012/06/28(木) 18:42:25.55ID:???
大島優子ってきもいよな
すれちでごめ
0181nobodyさん2012/06/28(木) 18:48:07.03ID:???
>>177
ゴミカスが命名したものだからな
uyと同じゴミカス
0182nobodyさん2012/06/28(木) 20:53:53.84ID:???
>>180
時間差でワロタwww
0183nobodyさん2012/06/28(木) 21:23:38.85ID:???
>>177
あとで命名やっちゃった系はエイリアス作ってそっちに移行したあと
元あったほうをエイリアスってことにすればいい
がそれをやらないのはhtmlentitiesなんて誰も使わないからじゃね
0184nobodyさん2012/06/29(金) 23:55:27.72ID:???
汚い関数、さらすな!
0185nobodyさん2012/06/30(土) 05:48:26.87ID:???
htmlspecialchars
0186nobodyさん2012/06/30(土) 12:04:30.01ID:2iskweOi
【OS名】Windows VISTA
【PHPのバージョン】PHP 5.3.8 / MySQL 5.5.16 / phpMyAdmin 3.4.5
【連携ソフトウェア】XAMPP1.7.7
【質問内容】

$link = mysql_connect("localhost", "ユーザーネーム", "パスワード");
if(!$link) {
die("データベースに接続できません:" . mysql_error());
}
$sdb = mysql_select_db(データベース名'', $link);
echo $sdb; // 1
mysql_query("INSERT INTO 'Person' (FirstName, LastName, Age) VALUES ('Peter', 'Griffin', '35')");

MYSQLに繋いでテーブルを作る操作について勉強中なのですが
これを実行してphpMyAdminでデータベースを確認しても、テーブルがありませんと表示されます
dieの文章も表示されず、mysql_select_dbの戻り値も1と表示されDBに接続・選択については問題ないように思うのですが・・・
どうか御指南お願いします
0187nobodyさん2012/06/30(土) 12:11:03.39ID:???
テーブルが無いって言われてるじゃない
0188nobodyさん2012/06/30(土) 12:14:31.34ID:???
CREATEでテーブルを作成してINSERTでテーブルにレコードを挿入する
0189nobodyさん2012/06/30(土) 14:20:34.20ID:???
Java版のPHPの質問もこちらでよろしいですか?
0190nobodyさん2012/06/30(土) 16:42:01.14ID:???
どっちよりの質問か考えてPHPよりならどうぞ
0191nobodyさん2012/06/30(土) 17:19:46.84ID:???
>>187-188
返信ありがとうございます
テキストを見返した所、phpMyAdminからテーブルを生成した後に実行するコードのようでした
失礼しました
0192nobodyさん2012/07/02(月) 00:35:49.92ID:TLLyppBD
PHPの関数popenについての質問です。

【OS】Win XP SP3
【Apache】httpd-2.2.22-win32-x86-openssl-0.9.8t.msi
【PHP】5.2.17(VC6)

PHPのpopenを使って非同期処理をしようとしているのですがうまくいきません。
a.phpを実行するとb.phpで受け取った引数をファイルに書き込むだけのプログラムです。

a.php
---------------
$fp = popen("start php C:\www\www.localhost\html\dmm\save.php 1", "r");
pclose($fp);


b.php
---------------
$fp = fopen('data.log', 'a+');
fwrite($fp, $argv[1] . "\n");
fclose($fp);

現在起きている現象としてはa.phpを実行すると「ボン」というようなシステム音がなって、いつまでまっても処理が終わりません。
タスクマネージャーのプロセスを確認するとcmd.exeというプロセスが立ち上がっていてずっと実行中のような感じになっています。
実行した分だけcmd.exeが立ち上がりexecution time を過ぎても終わらず、手動でプロセスをKILLしない限りいつまでも実行して続けているようです。

b.phpが実行されていないようなのですが、何が問題なのか原因がわかりません。
わかる方いましたらご教示お願いします。
0193nobodyさん2012/07/02(月) 01:31:12.23ID:???
save.phpって?
01941922012/07/02(月) 01:35:42.13ID:???
すみません。save.php は b.php のことです。
なので、

a.php
---------------
$fp = popen("start php C:\www\www.localhost\html\dmm\b.php 1", "r");
pclose($fp);

が正しいです
0195nobodyさん2012/07/02(月) 09:49:45.18ID:???
startはcmdのコマンドだし、別のcmd起動して実行する命令だからな。
/bオプションつけるとか、php直接実行できないの?
0196nobodyさん2012/07/02(月) 17:48:29.91ID:SZK4fFLw
postがある時の処理をいつも
if($_POST['foo']){
 do something;
}
って書いてるんだけど、現場のプロはどう書くんだい?
0197nobodyさん2012/07/02(月) 18:21:17.25ID:???
function get_post($key) {
return isset($_POST[$key]) ? $_POST[$key] : '';
}
ポストされないとエラー出るからこんなの用意するのが普通
後はフレームワークにお任せとか
0198nobodyさん2012/07/02(月) 19:23:08.23ID:???
issetで確かめる方法が一般的ではあるが
undefined indexはif-elseである時ない時で処理してるなら
問題にはならないしエラーきってスルーしてもいいと個人的に思う
0199nobodyさん2012/07/02(月) 21:19:09.18ID:???
if (isset($_POST)) {
 foreach ($_POST as $key => $value) {
  $$key = $value;
 }
}
0200 忍法帖【Lv=2,xxxP】 2012/07/02(月) 23:55:55.70ID:???
a
02011922012/07/03(火) 00:32:17.90ID:???
>>195
回答ありがとうございます。
↑のコードにこだわってるのは以前は動作していたからです。
他の書き方でもいいのですが、動かない原因が分からないままは気持ち悪くて。。。
ちなみに、実行すると「ボン」というような鳴るといいましたが調べたら、
windowsのシステムエラーのときに出るシステム音でした。
どうもPHPとは関係なさそうな問題みたいだがどこで聞けばいいのやら
02021922012/07/03(火) 00:43:50.03ID:???
windowsのシスログみるとどうもポートがバッティングしてるみたいなので
そっちから原因を追いかけてみまることにします。
ありがとうございました。
0203nobodyさん2012/07/03(火) 10:36:33.75ID:zEl9Hy22
やっぱissetだよなぁ・・・。
ところで、直接$_POST[$key]を使わないのって何故なんだい?
0204nobodyさん2012/07/03(火) 10:50:11.57ID:???
エラー出るからって言ってんだろうが

他の言語じゃindexがなければnullになるだけでエラー出ない事もあるし
そういう人らにはこの処理が無駄に思えるだろう
だからエラー制御して別につけたくなきゃつけなくていいよ
0205nobodyさん2012/07/03(火) 12:59:03.40ID:???
@$_POST[@$key]
0206nobodyさん2012/07/03(火) 15:42:30.70ID:???
error_reporting
0207nobodyさん2012/07/03(火) 15:54:04.65ID:???
$post = array_merge($default, $_POST);
0208nobodyさん2012/07/03(火) 15:58:34.34ID:???
>>207
やるじゃん
merge重そうなイメージあるけど
0209nobodyさん2012/07/04(水) 11:18:40.20ID:UNFbEgiX
JpGraphを使用して、グラフの値を動的に変化させて表示させたい。

マニュアルに「GETやPOSTなどのHTTPパラメータを使用して、引数を画像スクリプトに手渡すことも
可能です。」
ってなってるけど、<img src="showgraph.php?a=1&b=2">
で「?a=1&B=2」のデータの受け取りかたが分からない。
0210nobodyさん2012/07/04(水) 11:20:43.73ID:???
GETで取れない?
0211nobodyさん2012/07/04(水) 12:40:06.05ID:7Xg0KWtG
【OS名】CentOS
【PHPのバージョン】6.2
【連携ソフトウェア】なし
【質問内容】
cookieそのものを消したいと思ってます。

setcookie("test_cookie", "test", time() + 120);

このように発行したcookieは

setcookie("test_cookie", "", time() - 120);

で無効にできますが、cookie自体はtest_cookieというのが残ってしまいます。
このtest_cookie自体を削除する方法というのはありますでしょうか?
0212nobodyさん2012/07/04(水) 12:55:00.21ID:???
サーバーとクライアントの時刻を合わせる
0213nobodyさん2012/07/04(水) 13:58:32.40ID:???
マニュアル嫁
02142092012/07/04(水) 15:46:24.06ID:lLahBhUI
>>210
レス遅れちゃったけど、できました。
ありがとうございます。
0215nobodyさん2012/07/04(水) 21:38:07.05ID:JZLR4mZE
sqliteで select * from test where a = '1' or a = '2'

って感じで取得してるんですが、
上記のwhereで指定した条件分の順番に結果がかえってこないんです。

理想としてはaが1のデータが配列の0番目の要素、2のデータが配列1番目の要素って感じに、
where句で指定した順に取得したいんです

そんなことは無理なんでしょうか?
ちなみにソートでは対応できない順番なのでソートは無理です。
0216nobodyさん2012/07/04(水) 21:41:49.25ID:???
それPHP関係ないだろ
order by句でソートできる基準がないなら無理
0217nobodyさん2012/07/04(水) 21:44:32.79ID:???
フィールド名の配列で受け取ればいい
0218nobodyさん2012/07/04(水) 21:48:23.74ID:JZLR4mZE
>>217
すいません
具体的に言うとどういうことですか?
0219nobodyさん2012/07/04(水) 21:50:59.11ID:???
フェッチする際にSQLITE_ASSOCみたいなオプション付けられるでしょ
0220nobodyさん2012/07/04(水) 21:55:36.13ID:???
unionで繋げ もしくは2回に分けろ。
0221nobodyさん2012/07/04(水) 21:57:11.00ID:???
どうみても設計ミスだわ
0222nobodyさん2012/07/04(水) 22:15:19.58ID:???
ソートで対応できない順番というのがそもそもおかしい
0223nobodyさん2012/07/04(水) 22:16:01.61ID:???
なあ、設計だよな
02242172012/07/04(水) 22:17:15.63ID:???
ああごめん、盛大に取り違えてた
0225nobodyさん2012/07/04(水) 22:24:14.30ID:???
そんなことよりPDOのprepareとbindParam(bindValue)をオーバライドして
in演算子に対応させたメソッド誰か作ってくれ
0226nobodyさん2012/07/04(水) 22:24:40.99ID:JZLR4mZE
unionは使ったことないのでちょっと調べてみます。

設計ミスって言われるのすごいショックなんですが、
ある商品テーブルがあって、その商品テーブルからIDを元に情報を取り出そうと思ってるんです。

価格とかID順ならorder byが使えますが、
たまに呼び出し側から任意の順番で呼び出したいときあるじゃないですか?
そういう時にはどうしようもないでしょ?
そもそも何でwhere句で指定した順番で結果返してこないんだよ
意味分からん

他に良い設計方法があるならご教授願いたいものです
0227nobodyさん2012/07/04(水) 22:32:05.73ID:???
それは、 なんではさみで鉄が切れねーんだよって言ってるのと同じ。
0228nobodyさん2012/07/04(水) 22:35:34.56ID:???
DB板にいけよ
同じテーブルでunionが必要になる事態が異常だわw
0229nobodyさん2012/07/04(水) 22:41:00.77ID:JZLR4mZE
おいおいunion使っても指定した順番どおりに帰ってこねーぞ!
一個一個実行するしかないのかよボケ
俺が悪いのか?

解決してないけどとりあえずありがとうございました。
0230nobodyさん2012/07/04(水) 22:52:08.08ID:???
もういいわ
400回select文実行することになったけど1秒かからんかったから無視する

ありがとうございました
0231nobodyさん2012/07/04(水) 22:56:20.66ID:???
>>229-230は答え教えてくれるように
淡い期待をいだいて書いてるんだろうけど
スレチだし誰も教えてくれませんよ
残念でしたね
0232nobodyさん2012/07/04(水) 23:04:08.32ID:???
いや、俺は答えるし

SELECT 1,id, name FROM shouhin where id='3' UNION SELECT 2,id,name FROM shouhin WHERE id='1' ORDER BY 1
順番通りに出したいならこーだな。

ま、400回やるほうが、400回繋げた式より 正しい。
0233nobodyさん2012/07/04(水) 23:09:44.40ID:???
あーあまた荒れるぞ
ほんとこういうクズ回答者は消えてほしいわ
0234nobodyさん2012/07/04(水) 23:11:12.51ID:???
>>231で突き放したからちゃんとわきまえてDB板で質問しなおしたんだろうに
http://toro.2ch.net/test/read.cgi/db/1316769778/
頼むから>>232も一緒にいって二度と帰ってこないでくれ
0235nobodyさん2012/07/04(水) 23:11:41.64ID:???
ゴミカス
0236nobodyさん2012/07/04(水) 23:16:27.71ID:???
これはこれで痛快だな
■ このスレッドは過去ログ倉庫に格納されています