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

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

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

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

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

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

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

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

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0405nobodyさん2009/11/25(水) 22:44:17ID:???
>>404
rangeというのがあります。
あとスレタイに書いてある通りID出しもお願いします。
04064042009/11/25(水) 22:44:27ID:SfJ3bZNu
>>404 ID出し忘れました

改めて宜しくお願いします
04074042009/11/25(水) 22:45:32ID:SfJ3bZNu
>>405
おお、即答ありがとうございます!
リファレンス見てきます!
04084022009/11/25(水) 23:32:36ID:QdGBdfZs
>>403
ありがとうございました。
でも解決できてません。
何をしたら・・・・
0409nobodyさん2009/11/25(水) 23:40:07ID:???
>>408
エディタの文字コードの設定でBOM無しにする。
0410nobodyさん2009/11/26(木) 04:32:58ID:um0Zr4zV
【OS名】CentOS 5.3
【PHPのバージョン】php 5.26
【質問内容】
スクリプトの文字コードはSJIS、HTMLもSJISで出力しています。
form の input type=text に文字列を入力し、POSTされた値を $_POST で受け取る
処理を作っています。

form にSJIS以外の文字を入力されると、IEの場合は数値文字参照で渡ってくる
様なのですが、これをはじくことは出来ませんか?
また、SJISに変換可能な場合は極力変換したいです。

なお、SJIS以外の文字とは、↓の補助漢字や、第四水準の文字をコピペした場合です。
ttp://www.shuiren.org/chuden/teach/code/main5.htm
0411nobodyさん2009/11/26(木) 05:11:51ID:???
mb_detect_encodingで判別するなり
正規表現で文字コードの範囲内かどうかをチェックするなり
すればいいんじゃないかな?
0412nobodyさん2009/11/26(木) 10:08:39ID:???
>>410
無理
0413nobodyさん2009/11/26(木) 10:57:24ID:uEHoE6AG
【OS名】Xp
【PHPのバージョン】php5.26
【連携ソフトウェア】mysql

mysql+PHPでレコードされているデータを
取り出すときに
while(){$data.=$hoge[hoge];}
の形式で取り出していますが。
取り出したデータがおかしい時は処理をやめて
次の配列番号に移行したいのですがcontinueを使うとwhile文自体が
終了してしまいます。そこで
while(){
if(strlen($hoge[hoge])<1){
$data.="";}
else{$data.=$hoge[hoge];}
}
といった条件式で振り分けるとなぜか全データが表示されません。
for文で使えるcontinueに変わるような書き方はないでしょうか?
0414nobodyさん2009/11/26(木) 10:59:35ID:???
>>410=>>413
0415nobodyさん2009/11/26(木) 11:00:28ID:???
while(){
while(){
while(){
while(){
while(){
while(){

え?
0416nobodyさん2009/11/26(木) 11:09:36ID:LHR/M1Ke
クライアントから、半角カナと半角英数字以外は全て消去してくれって言われたんですけど
正規表現でどう表現すればいいのか・・・
ググってはみたものの、サイトによってバラバラで決め手にかけるもので・・・。
0417nobodyさん2009/11/26(木) 11:11:13ID:???
preg_replace 正規表現でggrks
0418nobodyさん2009/11/26(木) 11:14:28ID:???
サイトによってバラバラなら一つずつ検証するよろし
0419nobodyさん2009/11/26(木) 11:17:19ID:???
レベル低っ!!
0420nobodyさん2009/11/26(木) 11:34:44ID:???
正規表現とか、ノウハウの蓄積、ほしいのう
0421nobodyさん2009/11/26(木) 11:48:12ID:???
正規表現の基本的な部分はどれも変わらねえよks
0422nobodyさん2009/11/26(木) 14:20:56ID:???
>>416
ばらばらなやつここに書けばいいのに。
0423nobodyさん2009/11/26(木) 14:21:22ID:hCTIM6Hw
フレームワークとかpearとかで結構フォームを作成するためのライブラリがあったりしますけど
その中で特に記述が簡単で高機能な物ってなんでしょうか?
0424nobodyさん2009/11/26(木) 15:16:32ID:???
自分で決めろバカ
お前のことはお前がよくわかってんだろ
0425nobodyさん2009/11/26(木) 20:06:32ID:???
本日の回答者 =分類=

煽り系低脳
>>415 >>419 >>421 >>424

口は悪いが優しい
>>417

突き放し系
>>412

独り言
>>420

意図不明(揚げ足取り?)
>>414

尤もな意見
>>418 >>422

まともな回答
>>411
0426nobodyさん2009/11/26(木) 20:08:32ID:???
>>425
バカ

>>415
>>421
>>417
>>412
>>414
は全部俺だ池沼
0427nobodyさん2009/11/26(木) 20:20:59ID:???
>>425>>412>>414>>415>>417>>421

がいなくなれば少しは良いスレになるということか・・
0428nobodyさん2009/11/26(木) 20:21:41ID:???
間違えた

>>426>>412>>414>>415>>417>>421

だな
0429nobodyさん2009/11/26(木) 20:25:12ID:???
>>425 ひでぇスレだなw
0430nobodyさん2009/11/26(木) 20:52:47ID:???
>>427お前IP出せ
0431nobodyさん2009/11/26(木) 21:04:39ID:???
>>425=>>427=>>428
0432nobodyさん2009/11/26(木) 21:05:24ID:???
酷い書き込みばかりしてることを
>>426はなんでわざわざ自分で晒してるの?
0433nobodyさん2009/11/26(木) 21:12:51ID:???
最近荒れてる原因の人? >426
0434nobodyさん2009/11/26(木) 21:16:42ID:???
ばかばっか
0435nobodyさん2009/11/26(木) 21:26:35ID:???
>>432
おめー小心者だろ
てめえみてえなksは眼中にねえ
0436nobodyさん2009/11/26(木) 21:36:21ID:???
真性バカが登場したな
0437nobodyさん2009/11/26(木) 22:09:56ID:???
IP出せっていってるやつはチンピラだろ
巣へ帰れ
http://pc11.2ch.net/test/read.cgi/php/1167984858/
0438nobodyさん2009/11/26(木) 22:12:51ID:???
質問でもないのに何でIP出させようとするのか意味不明
0439nobodyさん2009/11/26(木) 22:12:59ID:???
>>413
ていうかそれだけじゃよくわからないけど
for文で解決するならfor文使えばいいのでは?
while文でできることはfor文でもできるんだし
0440nobodyさん2009/11/26(木) 22:16:09ID:???
またOCNとちんぴらか
0441nobodyさん2009/11/26(木) 22:20:23ID:???
煽り大好き真性池沼=ちんぴら
かしこぶって煽り耐性がない=OCN
0442PHP学習中2009/11/26(木) 22:21:09ID:???
>>413
for ($hoge as $val)
{
  if (!empty($val))
    $data .= $val;
}

とかじゃダメ?
0443nobodyさん2009/11/26(木) 22:21:39ID:???
>>441
アンチPHPのパーラーも追加しとけよ
0444nobodyさん2009/11/26(木) 22:33:53ID:???
>>438
質問でもIPは出さない。
0445nobodyさん2009/11/26(木) 23:13:42ID:???
>>442
回答するならせめてParse errorにならない例を示せよ
0446nobodyさん2009/11/26(木) 23:16:50ID:???
>>413=>>445
0447nobodyさん2009/11/26(木) 23:19:44ID:???
Parse errorにはならんと思われるが
0448nobodyさん2009/11/26(木) 23:20:44ID:???
445じゃないけど、forなのにならんの??

0449nobodyさん2009/11/26(木) 23:21:43ID:???
>>413
while(1){
  if (!empty($val))
    $data .= $val;
}

これでおk
0450nobodyさん2009/11/26(木) 23:22:33ID:???
つかエラーになったところで少し考えりゃわかるだろうよ
0451nobodyさん2009/11/26(木) 23:24:08ID:???
>>449
まてwww
0452PHP学習中(>>442)2009/11/26(木) 23:30:48ID:???
ごめん、眠たくて頭が働いてなかったみたい

修正版↓

foreach ($hoge as $val)
{
  if (!empty($val))
    $data .= $val;
}
0453nobodyさん2009/11/26(木) 23:38:43ID:???
回すごとにif判断するのか
センスねえきめえコードだな
0454PHP学習中(>>442)2009/11/26(木) 23:43:17ID:???
>>453
名前のとおり、学習中だから。。

どうすればいいの?
0455nobodyさん2009/11/26(木) 23:44:19ID:???
>>453=>>426
0456nobodyさん2009/11/26(木) 23:46:39ID:???
>>413
> 取り出したデータがおかしい時

具体的にどんなデータのとき?
0457nobodyさん2009/11/26(木) 23:47:28ID:???
>>452
foreachで回す前に空は取り除けよksg
0458nobodyさん2009/11/26(木) 23:48:25ID:???
>>455
池沼は書き込むなスレが汚れるだろ
0459nobodyさん2009/11/26(木) 23:49:24ID:???
「ks」を多用するからわかりやすい
0460nobodyさん2009/11/26(木) 23:50:27ID:???
またインテリぶってるOCNがスレを加速させてんのか
0461nobodyさん2009/11/26(木) 23:54:11ID:???
>>457
sampleテーブルのtestカラムの全レコードをSELECT抽出して
異常なデータを除いて連結するスクリプトよろ
0462nobodyさん2009/11/26(木) 23:57:23ID:???
>>461

>>1
0463nobodyさん2009/11/27(金) 00:01:05ID:???
>>462
ドサクサに紛れて丸投げ乙
04644632009/11/27(金) 00:01:45ID:???
アンカーミス
>>461宛ね
0465PHP学習中(>>442)2009/11/27(金) 00:04:41ID:???
>>413を読み直すと、データベースから取り出すときの話だから

   while ($hoge = mysql_fetch_assoc($rc))
   {
     ここで処理
   }

みたいな書き方にならない?
「回す前に空は取り除けよ」って、できるの?
0466nobodyさん2009/11/27(金) 00:14:04ID:???
>>465
かわいそうな子だから無視して良いよ。
殻を取り除く処理でループもう一つ回すほうがおバカ。
0467nobodyさん2009/11/27(金) 00:26:04ID:???
どうみてもチンピラが荒らしてるんだろ
特徴丸出しでOCNに責任転嫁とは見苦しい
0468nobodyさん2009/11/27(金) 00:30:09ID:???
学習者だろうが善良な質問者だろうが構わず喰ってかかる様はまさにチンピラ
0469nobodyさん2009/11/27(金) 00:36:27ID:wQd2OSTw
Array ( [0] => test_c.html [1] => test_b.html [2] => Array ( [0] => sub/test_d.html ) [3] => test_e.html )

こういう連想配列の場合に値のファイル名だけ取得したいのですが、
再帰以外で方法は無いでしょうか?
0470nobodyさん2009/11/27(金) 00:40:58ID:???
そうだね
0471nobodyさん2009/11/27(金) 01:56:34ID:???
>>426
おまえ1人が居なくなれば、荒れなくなるってことじゃないか
煽り目的だけ出来てる屑はさっさと死ねよ
0472nobodyさん2009/11/27(金) 03:11:44ID:???
おかしいデータとやらはwhereで避けられないのかな?とは思う。
04734102009/11/27(金) 09:32:06ID:U/jB2eYt
>>411
数値文字参照をmb_detect_encoding()で判定してもASCIIにしか判定されないのよね。
?[0-9];で構成された文字列だし。

mb_convert_encoding($str, 'SJIS', 'HTML-ENTITIES');
で、数値文字参照を通常の文字列に変換出来ることは分かったけど、SJIS以外の文字は
"?"に変換されるみたいで、元から"?"を含む文字列だと変換に失敗したのか判断に困る。

> 正規表現で文字コードの範囲内かどうかをチェックするなり
これをやろうとすると、SJISとUTF-8(数値文字参照)のマッピングが細切れになってて、
結構大変そうです。
0474nobodyさん2009/11/27(金) 09:37:47ID:???
俺も漢字の正規表現知りたい。
Perl Advent Calendar みたいに、
PHP Advent Calendar があるといいかも。
0475nobodyさん2009/11/27(金) 09:57:16ID:???
>>426
荒らしの自白ワロタ
0476nobodyさん2009/11/27(金) 10:01:31ID:???
そもそもおかしなデータという定義もされてないのに答えようがない件
0477nobodyさん2009/11/27(金) 10:05:38ID:???
俺から見たら>>442が荒らしてるっぽいけど気のせいだろうか
foreach ($hoge as $val)
{
  if (!empty($val))
    $data .= $val;
}

emptyをチェックするならforeachにかけるまえに標準関数で用意されたものに通してからforeachするほうがずっとスマートだ
そもそも質問者は不正なデータというのが何なのか定義してないから>>442も間違い
0478nobodyさん2009/11/27(金) 10:11:04ID:???
質問者が何事も無く突然現れるのも不自然w
0479nobodyさん2009/11/27(金) 10:21:08ID:???
phpで質問なんかでてくるのが不自然
0480nobodyさん2009/11/27(金) 10:21:35ID:???
>>477
>>465
0481nobodyさん2009/11/27(金) 10:22:24ID:???
PHP使ってるのなんて不自然
0482nobodyさん2009/11/27(金) 10:23:14ID:???
つーかID出して無い質問はスルーしとけよ。
0483nobodyさん2009/11/27(金) 10:24:41ID:???
明らかに>>426が元凶なのに
そいつをかばおうとするのが不自然
0484nobodyさん2009/11/27(金) 10:26:17ID:???
>>482
>>413はIDを出しているわけだが。

その後行方不明ではあるけれど。
0485nobodyさん2009/11/27(金) 10:27:51ID:???
もっと荒れてクソ言語使いが減れば良い
0486nobodyさん2009/11/27(金) 10:40:31ID:???
PHPって標準関数が多すぎるね。
それに引数のルールが曖昧。
例えば文字関数だと、引数の順序が関数によって異なるから最初戸惑った。

(例)
・mb_convert_encoding(文字列, 変換先, 変換元)
・mb_convert_variables(変換先, 変換元, 文字列)

言語自体はクソではないと思うけど、このへんがいい加減だなって思う。
0487nobodyさん2009/11/27(金) 11:07:09ID:???
一緒じゃないとプログラムも書けない子なのか
0488nobodyさん2009/11/27(金) 11:13:27ID:???
職業プログラマは良いだろうが、言語開発者からするとそういうところで萎えるんだよ。
0489nobodyさん2009/11/27(金) 11:13:47ID:???
mb_convert_variablesは引数に取れる変換対象変数の数が可変だから最後になってるんだよ
0490nobodyさん2009/11/27(金) 11:21:42ID:???
荒らしがなんちゃら言ってる奴のレスが多くて一番邪魔な件について
0491nobodyさん2009/11/27(金) 11:22:55ID:???
4千以上もあるって聞いたけど
標準関数なんてごく基本的なものだけで良くね?
0492nobodyさん2009/11/27(金) 11:25:04ID:???
>>489
なるほど。
str_replaceも対象の文字列が3番目だったと思うけど、あれも置換対象の数が可変なんだっけ?
0493nobodyさん2009/11/27(金) 11:25:49ID:???
マニュアルの関数一覧だけで5999もある
ちなみにマニュアルの関数一覧は新しく搭載された関数はいまだ載ってないので6000以上はあると思われ
0494nobodyさん2009/11/27(金) 11:50:03ID:???
>>477
で、おまえはいつになったら正解のコード書くんだよ
0495nobodyさん2009/11/27(金) 11:51:10ID:???
array()笑
0496nobodyさん2009/11/27(金) 11:52:31ID:???
>>494みたいなのが一番荒らし
0497nobodyさん2009/11/27(金) 11:56:08ID:???
>>496
>>490
0498nobodyさん2009/11/27(金) 11:58:03ID:???
>>457にも早く正解を書いてほしい。
0499nobodyさん2009/11/27(金) 12:01:13ID:???
>>487
「最初戸惑った」という字も読めない子なのね・・
0500nobodyさん2009/11/27(金) 12:03:01ID:???
>>494-499
>>490を読んでから以下のスレに移動よろ

【総合】 Webprog板質問雑談スレッド 1
http://pc11.2ch.net/test/read.cgi/php/1131016915/
0501nobodyさん2009/11/27(金) 12:04:25ID:???
>>498=>>442
もっと煽り体勢を付けようぜ
0502nobodyさん2009/11/27(金) 12:04:34ID:???
久々に荒れてんなw
0503nobodyさん2009/11/27(金) 12:04:36ID:???
>>500>>490
0504nobodyさん2009/11/27(金) 12:05:58ID:???
>>410>>442がだと思われるオッサンが無駄にレスして荒らしてるんだろ?
無駄にスレが進行するから消えて^^
■ このスレッドは過去ログ倉庫に格納されています