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

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

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

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

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

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

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
 (荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
0334nobodyさん2012/12/03(月) 22:23:15.32ID:???
PDO使えばいいじゃん
0335nobodyさん2012/12/03(月) 22:31:30.27ID:???
>>333
PDOで済まない・・・?

要するにエスケープ関数使うよりpreg_matchで条件分岐の方が楽で正確って言いたかった
0336nobodyさん2012/12/03(月) 22:41:48.86ID:???
楽で正確の根拠は?
0337nobodyさん2012/12/03(月) 22:43:54.52ID:???
指定した文字以外を弾ける
0338nobodyさん2012/12/03(月) 23:03:06.25ID:???
preg_matchとかしたあと、PDO使うんじゃないの
0339nobodyさん2012/12/03(月) 23:06:59.94ID:???
>>338
エスケープに関して
値に関してじゃなく安全性について
0340nobodyさん2012/12/03(月) 23:08:26.90ID:???
>>338
例えばPDOが入っていない状況で、
mysqlのエスケープを使用せずpreg_matchを使用するのはどうでしょうか?
0341nobodyさん2012/12/03(月) 23:53:30.69ID:???
PDOわざわざ無効にしてんの?
漏れが出てくるから自前のエスケープはせずに、素直にPDO使ったがいいよ
0342nobodyさん2012/12/04(火) 12:58:48.72ID:???
バインド機構のことをPDOって呼んでるのかな?
0343nobodyさん2012/12/04(火) 17:32:36.64ID:???
プレースホルダって言うんですよ
0344nobodyさん2012/12/04(火) 17:40:32.87ID:2gy0/x6N
おまえら、もっと洗練されたphpの書き方教えろ。おら、もっと強くなりてえだ。
簡単に言うと、wordpressのテンプレをhtmlからスラスラ、カポッと作れる様なアレだ。
もう、シンプルで合理的すぎてすみませんと謝罪される程のスキルが欲しい。

※すみません、こういった煽りタイプの書き込みの方がレス多く貰えると思ったので。
0345nobodyさん2012/12/04(火) 18:07:34.15ID:???
あ?
0346nobodyさん2012/12/04(火) 18:08:43.11ID:???
で?
0347nobodyさん2012/12/04(火) 18:28:46.04ID:2gy0/x6N
おまいらありがとう。なんかアイディアが出てきた。
モレスキンにメモったから、あとは数週間寝かせてじっくり熟成してみる。
0348nobodyさん2012/12/04(火) 20:08:50.12ID:???
あ と で の二人のお陰であいでぃあが出てきたか
0349nobodyさん2012/12/04(火) 20:15:12.97ID:???
>>348
thx
0350nobodyさん2012/12/04(火) 20:15:43.59ID:4+ZLGXb5
>>344
ありがとうございました。
0351nobodyさん2012/12/04(火) 20:31:13.94ID:VY3MlHj0
【OS名】WINDOWS XP
【PHPのバージョン】5.3.5
【連携ソフトウェア】XAMPP 1.7.4
【質問内容】
echoで文字連結した言葉を出したいです。
以下はコードを抜き出してきたのですが、"."ではなく"{}"で区切りたいです。
しかし、うまくいきません。原因分かる方、教えてください。

【正常動作】
<?php
if (isset($_GET["year"])) {
echo "今年".($this_year - intval($_GET["year"]))."才です。";
}
?>

【異常動作】
<?php
if (isset($_GET["year"])) {
echo "今年{($this_year - intval($_GET["year"]))}才です。";
}
?>
0352nobodyさん2012/12/04(火) 20:40:00.12ID:???
なんとなく思ったんだけど
配列って
$test[] = 900;
$test[] = 920;
って感じでキー指定なしで格納して
foreachで全部出力できるよね
0353nobodyさん2012/12/04(火) 20:49:37.62ID:???
>>351
無理
変数が展開できるだけで式が書けるわけではない
0354nobodyさん2012/12/04(火) 20:53:40.84ID:???
>>351
結論からいうと無理
文字列中の{}は演算子は使えないし単純な変数を入れることを想定してる

if (isset($_GET["year"])) {
$yo = $this_year - intval($_GET["year"]);
echo "今年{$yo}才です。";
}

例えばこんなふうにしないとだめ
0355nobodyさん2012/12/04(火) 20:58:53.81ID:VY3MlHj0
>>353
>>354
{}では演算子は使えないのですか。ありがとうございます。
0356nobodyさん2012/12/04(火) 21:50:04.05ID:jU+DWC4p
if(isset($ch2))と
if($ch2)はどう違うんですか?
0357nobodyさん2012/12/04(火) 21:51:06.01ID:???
>>356
マニュアルの型比較のとこ見れ
0358nobodyさん2012/12/04(火) 22:10:42.81ID:jU+DWC4p
ありがとうございます。
$ch2 = "";だと
前者はTRUEで、
後者はFALSEなんですね
0359nobodyさん2012/12/04(火) 22:13:21.71ID:???
"0"なら?
0360nobodyさん2012/12/04(火) 22:18:17.46ID:jU+DWC4p
前者が、TRUE
後者が、FALSEですよね
0361nobodyさん2012/12/04(火) 22:25:09.75ID:???
$ch2を$_POSTに変えた場合は?
0362nobodyさん2012/12/04(火) 22:49:33.39ID:???
質問したいならID出せ
0363nobodyさん2012/12/04(火) 22:54:27.79ID:???
$ch2を$_POSTに変えた場合は?
0364nobodyさん2012/12/04(火) 23:15:13.21ID:???
"1"なら?
0365nobodyさん2012/12/04(火) 23:48:43.70ID:???
getするたびにNotice: Undefined indexがでるんですけど
出す理由あるんですか・・・
0366nobodyさん2012/12/04(火) 23:51:36.22ID:???
>>362
03673112012/12/05(水) 10:17:40.54ID:njrAbACp
>>322
長らく使ってなかったXPのドス窓からtelnet...connect localhost 80
接続中...のまま。なんかカーソルの位置もおかしくなるし・・・。
いつかの課題にします。
とりあえずファイルを作って、そのリンクから「名前をつけて保存」にしました。
ありがとうございました。
0368nobodyさん2012/12/05(水) 11:40:30.35ID:???
Windowsのtelnetは癖がある
接続したらカーソルの位置とか画面表示とか気にせず

そのままHTTPリクエスト打ち込むだけ


まあMacかLinuxからやる方がやりやすいけど
0369nobodyさん2012/12/05(水) 11:48:34.79ID:???
>>367
ちょっとしたリクエストプログラムくらいPHPで書けよ
そんな処理さえ書けないのかよ糞言語PHPは
0370nobodyさん2012/12/05(水) 13:22:06.67ID:???
ドス窓wwwwコマンドプロンプトだろ、昭和かw
0371nobodyさん2012/12/05(水) 13:28:54.84ID:???
コマンドプロンプトをDOS窓と呼べたのは9xまでな
2k以降はDOSとは全く無縁
0372nobodyさん2012/12/05(水) 13:35:04.86ID:???
WindowsもそろそろLinuxとかBSDをベースに開発した方がいいんじゃないだろうか
PHPerはWindows使いが多いのかもしれないが他の言語だとマカーが多いよね
0373nobodyさん2012/12/05(水) 13:36:16.15ID:???
404 Blog Not Found:惰訳 - プログラムは大変だ、スクリプトにしよう - 過去篇

PHPは初期のPerlが犯した過ちを、Perlよりゆるやかに進めているといえます。
0374nobodyさん2012/12/05(水) 14:30:56.04ID:???
いい加減その糞ブログの宣伝やめろカス
0375nobodyさん2012/12/05(水) 14:40:37.07ID:???
404 Blog Not Found:惰訳 - プログラムは大変だ、スクリプトにしよう - 過去篇
PHPは初期のPerlが犯した過ちを、Perlよりゆるやかに進めているといえます。
0376nobodyさん2012/12/05(水) 14:54:21.10ID:???
どうせならurl貼るべき
0377nobodyさん2012/12/05(水) 15:00:13.25ID:???
>>376
ここのヤツらが荒らしてるんだよ
【PHP】気軽にPHP質問スレ
http://kohada.2ch.net/test/read.cgi/php/1343015189/

837 名前:nobodyさん[sage] 投稿日:2012/12/05(水) 12:37:35.10 ID:???
「PHPなめんな」と「(Perl|Python|Ruby)をなめんな」の違い
ttp://blog.livedoor.jp/dankogai/archives/50993137.html

838 名前:nobodyさん[sage] 投稿日:2012/12/05(水) 12:56:34.85 ID:???
404 Blog Not Found:惰訳 - プログラムは大変だ、スクリプトにしよう - 過去篇

PHPは初期のPerlが犯した過ちを、Perlよりゆるやかに進めているといえます。

839 名前:nobodyさん[sage] 投稿日:2012/12/05(水) 13:31:29.07 ID:???
相変わらずPHP叩くやつは粘着だな。

840 名前:nobodyさん[sage] 投稿日:2012/12/05(水) 13:35:03.79 ID:???
404 Blog Not Found:惰訳 - プログラムは大変だ、スクリプトにしよう - 過去篇
PHPは初期のPerlが犯した過ちを、Perlよりゆるやかに進めているといえます。
0378nobodyさん2012/12/05(水) 22:34:49.86ID:uNgx55hD
【質問内容】
ページを開いたときに表示する内容がランダムに決まるプログラムを作りたいです。
<div style="font-size:32px;">
<?php
$no = rand(1, 5);
switch ( $no ){
case 1:
$msg = "まいどおおきに";
break;
default:
$msg = "どうも、どうもです。";
}
echo $msg;
?>
</div>

このコードを以下のように修正しましたところ、"echo $msg"と表示されました。

<?php
$no = rand(1, 5);
switch ( $no ){
case 1:
$msg = "まいどおおきに";
break;
default:
$msg = "どうも、どうもです。";
}
?>
<div style="font-size:32px;">
echo $msg;
</div>
スタイルを設定するのは分を表示する所だけで良いじゃないかと思い、このような事をしています。なぜ、"echo $msg"とそのまま表記されるのですか?
0379nobodyさん2012/12/05(水) 22:43:45.58ID:???
echoはphpの言語構造だから
<?php echo $msg; ?>
0380nobodyさん2012/12/05(水) 23:07:41.07ID:uNgx55hD
>>379

説明ありがとうございます
0381nobodyさん2012/12/06(木) 02:39:51.57ID:???
>>380
可愛くていい
0382nobodyさん2012/12/06(木) 04:33:36.92ID:???
かわい子ちゃんを、PHP地獄から救い出して他の素晴らしい言語の世界を勧めるのが、僕らの使命
0383nobodyさん2012/12/06(木) 12:09:40.45ID:???
こういう謎の使命感に溢れてるヤツの方がキモいわ
0384nobodyさん2012/12/07(金) 00:50:12.75ID:klW3K1/S
phpでfaviconを生成し
HTML側で
<link rel="shortcut icon" href="?content=value" />
といったタグで読み込んでますが、ChromeやFirefoxでは表示されるものの
Internet Explorerでだけ表示されません。
拡張子が.icoでないと読み込まないのかと思いきや、
試しにfavicon.icoファイルをtest.png等にファイル名変更し、
PHPを使わず直接
<link rel="shortcut icon" href="test.png" />
としたらInternet Explorerでも読み込めました。
なので、ファイル名が原因ではなさそうなのですが、
何が原因かどなたかご教示下さい。
なお、phpでは念のため、以下のようなヘッダも出力してます。
Content-Disposition: attachment; filename="favicon.ico"
Content-Type: image/x-icon; name="favicon.ico"

IEのバージョンは9.0です。
0385nobodyさん2012/12/07(金) 00:55:19.34ID:???
俺わかるけど答えてやんねー
0386nobodyさん2012/12/07(金) 01:32:39.13ID:???
>>385
分かるんでしたらよろしくお願いします。
0387nobodyさん2012/12/07(金) 04:28:51.92ID:RkD6YFRt
PHP関係ない

IE ファビコン 表示されない

で検索
0388nobodyさん2012/12/07(金) 07:16:26.27ID:???
>>387
Windows形式のiconにもなっているようです。
デスクトップで表示できました。
他にも原因があるのでしょうか?
0389nobodyさん2012/12/07(金) 08:45:54.92ID:???
混んてんと体ぷ
0390nobodyさん2012/12/07(金) 08:59:16.65ID:???
>>388
検索結果の上から5個ぐらいは全部読め
0391nobodyさん2012/12/07(金) 18:31:11.59ID:ziDoG41n
GETで取得する際、値が整数かどうか調べたいです。
is_intだとフォームからの入力を受け付けず、
is_numericだと小数点が含まれている場合もTRUEを返してしまいます。
どのように行えばよいでしょう?
0392nobodyさん2012/12/07(金) 18:41:22.52ID:???
正規表現
0393nobodyさん2012/12/07(金) 20:20:01.12ID:???
ctype_digit
0394nobodyさん2012/12/07(金) 20:43:10.73ID:???
ctype_digitって数字以外は弾くんですね
幸い自然数なのでこれを使用しようかと思います。
>>392,393さん
ありがとうございました。
0395nobodyさん2012/12/07(金) 20:54:52.33ID:???
頭0で通してよければな
0396nobodyさん2012/12/07(金) 21:35:27.74ID:???
>>394
伍萬弐千参百壱
とかの漢数字は弾かれちゃうけどそんなんでいいの?
0397nobodyさん2012/12/07(金) 21:44:28.04ID:ziDoG41n
>>396
じゃあお前
漢数字を含む場合もTRUE返す手段書いてくれよ
0398nobodyさん2012/12/07(金) 21:46:31.90ID:???
http://www.akatsukinishisu.net/kanji/kansuji.html
文字コードに含まれてない漢字とかもあるから現実的じゃないな
0399nobodyさん2012/12/07(金) 22:07:35.95ID:???
>>397
荒しに乗るのも荒し行為です。考えてスルーしてください。
0400nobodyさん2012/12/07(金) 22:10:03.15ID:???
>>397
$num = get_number_from_kanji($_GET['num']);









そんな関数ねーけどw
0401nobodyさん2012/12/07(金) 22:21:51.36ID:???
get_number_from_kanji (PHP5 >= 5.3)
0402nobodyさん2012/12/07(金) 23:10:54.76ID:pCtXAQSD
配列は["name"=>"yamada","sex"=>"m"]の用に一度に定義出来ますが
stdClassで同じような書き方をするにはどうしたらよいのでしょうか
0403nobodyさん2012/12/08(土) 00:00:59.43ID:YANMBvR5
すいません、教えてください
こんなコードを書いてます。
switch ($param) {
case "big-qrcode": show_qrcode(300);break;
case "small-qrcode": show_qrcode(150); break;
default : show_form();break;

}

default :の後に全角の空白を入れるとFatal ERROR というものが出ました。
半角の空白にするとエラーは無くなります。
どうして、全角の空白を入れるとエラーになるのでしょう?
0404nobodyさん2012/12/08(土) 00:45:40.49ID:???
>>402
配列を渡せるようにしろ

>>403
PHPが欠陥だらけのゴミ言語だから
0405nobodyさん2012/12/08(土) 05:36:41.06ID:???
>>403
どんなプロセスで学習したらそんな質問が出るのか、
それがむしろ気になるわ
04064032012/12/08(土) 10:02:38.58ID:???
>>405
@学習用の本を購入
Aその本に記述しているSAMPLEコードを入力
B模写してるのにエラーが出る。
C原因箇所を修正して、実行するとエラーがなくなる。
D何で全角スペースは駄目なんだろう?   ←今ここ

という流れです。
0407nobodyさん2012/12/08(土) 10:11:29.83ID:???
>>402
(object)array("name"=>"yamada","sex"=>"m")

>>403
全角の空白を使えるのって、C#とかjavacriptぐらい?
perlなんて、文字列中の全角スペースすら後ろのバイトが@なもんだから変数展開がおきたりしてた
0408nobodyさん2012/12/08(土) 11:06:21.83ID:???
>>406
どうせ箇条書きに丸数字を書いてるんだろw
まる1とまる2の間を詳しく
0409nobodyさん2012/12/08(土) 11:14:10.51ID:ZdBWbcl6
>>406

学習机の購入のあたりからお願いします。
0410nobodyさん2012/12/08(土) 11:19:32.68ID:???
>>406
そう定義されてるからだよ
お前の言ってることは
なんで1 + 4 は良いのに1 たす 2 はなんで駄目なんだろうっていうのと一緒
+の読み方なんてplus たす プラス + +とか色々あるんだから一々考慮してられないし誤表記による誤動作が増えるだろ?
ましてや全角スペースなんて対応文字コードが限られてるんだから省かれるのは当たり前
0411nobodyさん2012/12/08(土) 11:49:24.30ID:???
>>403
だって全角スペースっという不正な文字をおいてるんでしょ?そりゃエラーになる。
「printあ("Hello");」がダメだってことは分かる?
0412nobodyさん2012/12/08(土) 13:48:31.39ID:???
全角も半角も空白だ
差別すんなハゲ
04134032012/12/08(土) 13:59:02.36ID:???
>>408-409
何を知りたいのかさっぱりわかんね。

>>410-411
なんとなく分かりました。PHPは全角スペースを一つの文字として認識するからそうなるのかな。
ありがとうございます。
0414nobodyさん2012/12/08(土) 14:24:31.49ID:???
>>413
普通、参考書買ってサンプルコード書く間に
基本的なルールの説明だとかがあるだろうってことだ
初心者向けの参考書ならswitch書かせるまでに説明あるだろ普通。

AVで前戯のシーンをスキップばっかしてるからそういうふうに
途中がごっそり抜け落ちちゃうんだよ。
つまらないと思っても早回しでいいからざっと目を通さないと。
04154032012/12/08(土) 14:37:33.47ID:???
>>414

ところがどっこい、書いてなかったのです。
0416nobodyさん2012/12/08(土) 14:44:03.33ID:???
>>415
なんて本?
0417nobodyさん2012/12/08(土) 14:44:17.69ID:???
どの本か書いてよ
勧めないようにするから
0418nobodyさん2012/12/08(土) 14:44:35.37ID:???
あ、あと、ID出してね
04194032012/12/08(土) 14:58:45.36ID:YANMBvR5
>>416-418

その辺は内緒です。例え叩かれようが、著者に迷惑がかかることはしません。
0420nobodyさん2012/12/08(土) 15:48:29.39ID:???
403の存在が迷惑
0421nobodyさん2012/12/08(土) 17:28:23.94ID:???
言わないということはその著者への濡れ衣が晴れないまま、ということか・・・恐ろしい
04224032012/12/08(土) 17:48:22.42ID:YANMBvR5
>>421
著者への濡れ衣と言うか、どの著者に濡れ衣がかかっているかも分からないんだがら問題なし。
0423nobodyさん2012/12/08(土) 17:49:16.99ID:???
初めてコードを書く人用の書籍ならインデントに使える文字等を記載するだろうけど
少し触った人ならそのレベルの話は書かなくても理解出来るからなぁ

>>403は自分の技量に合わない書籍を買ったんだろう
04244032012/12/08(土) 17:57:57.22ID:YANMBvR5
>>423
そうかもね
0425nobodyさん2012/12/08(土) 19:37:37.56ID:???
>>424
かもじゃなくてそうだね
0426nobodyさん2012/12/08(土) 19:41:01.49ID:???
ちゃんと読んだら書いてあったってオチかw
0427nobodyさん2012/12/08(土) 20:39:04.96ID:???
>>403の存在が迷惑
0428nobodyさん2012/12/09(日) 03:08:25.03ID:ulB7TX+D
webサイト等で広告貼る時に、javascriptと〜.phpのurlで
やってますか、あれって何て手法なんでしょうか?
どうやってやってるのでしょうか?
0429nobodyさん2012/12/09(日) 03:15:36.25ID:???
>>428
非同期通信ってことでいいのかね?
0430nobodyさん2012/12/09(日) 03:20:27.29ID:ulB7TX+D
>>428
たとえば、webサイトに
<script type="text/javascript" charset="euc-jp" src="http://〜ads.php?aid=1234">
</script>
を貼ると広告が表示される仕組みが知りたいです。
0431nobodyさん2012/12/09(日) 03:22:37.34ID:???
javascirptで表示してるだけでは?
0432nobodyさん2012/12/09(日) 03:27:15.78ID:???
>>430
そのphpを直接アクセスしてみたら?
js返してるでしょ
0433nobodyさん2012/12/09(日) 11:28:10.48ID:???
JSの内容をサーバ側で変更したいときだ
■ このスレッドは過去ログ倉庫に格納されています