のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:126,368,699人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレ【PHP】ID出さなくても質問OKなスレ【初心者歓迎】

    php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    301 : nobodyさん - 2008/12/02(火) 19:06:03 ID:??? (+61,+29,-40)
    >>299
    消費メモリーの見方をわかっていない初心者です。
    けど、使っているかもしれないなという懸念があります。

    >>300
    最近の携帯ですとCSSやテーブルで出来ると思います。
    303 : nobodyさん - 2008/12/02(火) 21:08:27 ID:??? (-2,-30,-29)
    $_POST['txtId']と$_POST['txtPAss']
    for文やforeach文で繰り返す(もしくはin_arrayなど)
    if文で条件比較
    304 : nobodyさん - 2008/12/02(火) 21:20:08 ID:??? (+57,+29,-18)
    宿題は自分でやりなさい
    っていうか学校でPHPってwww
    305 : nobodyさん - 2008/12/02(火) 21:26:13 ID:ZnEnsvHS (-25,+29,+1)
    どうしても、分からないんですよ
    306 : nobodyさん - 2008/12/02(火) 21:27:35 ID:??? (+52,+29,-1)
    判るところまで書いてみよう
    308 : nobodyさん - 2008/12/02(火) 22:02:45 ID:??? (+6,-30,+0)
    組み合わせたり書き方を工夫すれば工数を減らせるが1つずつやると

    $arrUser = array("guest", "admin", "test");
    $arrPass = array("goma", "adm", "test");

    //ユーザーIDとパスワードの組み合わせが正しい場合
    for ($i = 0; $i < count($arrUser); $i++) {
     if ($_POST['txtId'] == $arrUser[$i] && $_POST['txtPass'] == $arrPass[$i]) {
      echo "認証成功";
      break;
     }
    }

    //ユーザーIDが存在しない場合
    if (in_array($_POST['txtId'], $arrUser)) {
     echo "ユーザーIDが存在しません";
    }

    //ユーザーIDは存在するがパスワードが誤っている場合
    for ($i = 0; $i < count($arrUser); $i++) {
     if ($_POST['txtId'] == $arrUser[$i] && $_POST['txtPass'] != $arrPass[$i]) {
      echo "パスワードが違います";
      break;
     }
    }

    //ユーザーID、またはパスワードのいずれかが空白の場合
    if (empty($_POST['txtId']) || empty($_POST['txtPass'])) {
     echo "ユ-ザーIDまたはパスワードが未入力です";
    }

    今ここで書いて実際には動かしてないから動くかは知らない
    309 : nobodyさん - 2008/12/02(火) 22:17:02 ID:??? (+52,+29,+0)
    マルチだったか
    答えて損したな
    310 : nobodyさん - 2008/12/02(火) 22:18:08 ID:ZnEnsvHS (-20,+29,-1)
    確かに、マルチですけど、どうしても教えてほしかったんです
    311 : nobodyさん - 2008/12/02(火) 22:19:59 ID:??? (+52,+29,-1)
    どこまで自己中なんだよw
    312 : nobodyさん - 2008/12/02(火) 22:22:17 ID:??? (+57,+29,-7)
    これがゆとりってやつか
    本当の意味での本物は見たことなかったから感動した
    313 : nobodyさん - 2008/12/03(水) 03:21:34 ID:??? (-3,-29,-26)
    いまさらだが>>308のin_arrayのとこは!in_arrayだな
    まぁマルチみたいだしどうでもいいけど
    314 : nobodyさん - 2008/12/03(水) 08:44:18 ID:??? (+29,+3,-2)
    マルチ マルチってマルチーズをバカにするな!
    315 : 284 - 2008/12/03(水) 16:23:16 ID:??? (+5,-30,-159)
    >>286
    var_exportの2番目の引数を TRUE でいけますた。

    例:
    <?php
    $bool_var = TRUE;
    echo 'bool_var(TRUE): ' . var_export($bool_var, TRUE);

    echo '<br />';
    $bool_var = FALSE;
    echo 'bool_var(FALSE): ' . var_export($bool_var, TRUE);
    ?>

    出力:
    bool_var(TRUE): true
    bool_var(FALSE): false

    >>285-287
    ちょっとしたことだったのですが、できて助かりました。ありがとうございましたー。
    316 : nobodyさん - 2008/12/05(金) 19:50:28 ID:??? (+43,-30,-68)
    簡単な掲示板を作ってます。
    名前のところが空白だった場合 名無し と表示させたいのですが
    考えても中々解決できませんでした。

    $name=$_POST["name"];
    if ($_POST["name"]==""); {

    ここから先が OTZ
    317 : nobodyさん - 2008/12/05(金) 20:13:05 ID:??? (+38,-29,+0)
    $name="ななし";
    318 : nobodyさん - 2008/12/05(金) 20:55:37 ID:??? (+0,-28,+2)
    >>317
    おおおおおおおおおお
    行けました ありがとうですT_T
    319 : nobodyさん - 2008/12/05(金) 21:19:16 ID:??? (+49,+15,+0)
    うそ~ん
    320 : nobodyさん - 2008/12/05(金) 21:34:45 ID:??? (+29,+0,+1)
    >>319
    ん??
    321 : nobodyさん - 2008/12/05(金) 21:41:23 ID:??? (+145,+28,-2)
    多分それだと、名前のところに0って書かれても、名無しになるよ
    322 : nobodyさん - 2008/12/05(金) 21:46:08 ID:??? (+85,+28,-1)
    ようするに===にすればいいわけだな
    323 : nobodyさん - 2008/12/05(金) 23:01:41 ID:??? (+0,-29,-2)
    strlenにすれば?
    324 : nobodyさん - 2008/12/05(金) 23:20:20 ID:??? (+14,-29,-10)
    >>321
    ご指摘ありがとうございます。
    0と入力すると 名無しと表示されました。
    >>323
    strlenですか、調べてきます。
    325 : nobodyさん - 2008/12/05(金) 23:24:03 ID:??? (-1,-29,-4)
    !emptyだろ、strlen使うぐらいなら
    326 : nobodyさん - 2008/12/05(金) 23:24:44 ID:??? (+56,+28,-2)
    多分それだと、名前のところに0って書かれても、名無しになるよ
    327 : nobodyさん - 2008/12/05(金) 23:26:18 ID:??? (+2,-25,-7)
    strlenって関数 勉強になりました。
    変数に値があるかどうかチェックするんですね。
    これからも使えそうです。

    皆さんありがとうございました
    328 : nobodyさん - 2008/12/05(金) 23:27:56 ID:??? (-2,-30,-44)
    おっと・・・
    これで良いんですよね?

    if ($_POST["name"]==""); {
    の所を

    if (!strlen($name)) {
    $name ="名無し";
    329 : nobodyさん - 2008/12/05(金) 23:30:59 ID:??? (+52,+29,-1)
    それくらい自分で判断しろよ
    330 : nobodyさん - 2008/12/05(金) 23:37:59 ID:??? (-2,-30,-48)
    だから
    if ($_POST["name"]==="")でいいっちゅうに
    PHPは型が曖昧だからこういうことがおきるわけで
    strlenは文字数数える関数だし使い方として不自然
    331 : nobodyさん - 2008/12/05(金) 23:39:27 ID:??? (+51,+23,-7)
    0文字だったら名無しにしたいんだろ?
    なんで不自然なの?
    332 : nobodyさん - 2008/12/05(金) 23:49:08 ID:??? (+57,+29,-3)
    おれだったらその前にトリミングかますけどな
    333 : nobodyさん - 2008/12/05(金) 23:54:50 ID:??? (+57,+29,-4)
    そんなこと言い出したらどんどん文句つけるところが出てきちゃうぞw
    334 : nobodyさん - 2008/12/05(金) 23:57:00 ID:??? (+57,+29,-14)
    型に起因するものだからstrlenで強引にやるのが不自然と
    >0文字だったら名無しにしたいんだろ?
    ようするにこれが強引
    335 : nobodyさん - 2008/12/06(土) 00:18:56 ID:??? (+270,+29,-33)
    要約しなくていいから詳しく説明してくれ
    強引?文字列で渡ってくる値を文字列判定用の関数で判定してどこが強引?
    336 : nobodyさん - 2008/12/06(土) 01:09:43 ID:??? (+48,-29,-106)
    >>335
    上のほう見ればわかるが
    $a = "";
    $b = 0;
    この時PHPでは$a == $bが成立してしまう
    型を意識した場合この現象はおかしいから===で型のチェックまで行うべきということ
    型のチェックで回避できるのにそれをせずに別の方法を模索した結果
    strlenで文字数数えて0だったらという裏技的なものが強引と言いたい
    型を意識しないPHPユーザーらしいといえばらしいし
    確かに方法も色々あるしできればそれでもいいと言う考えもあるが美しくない
    ようするに演算子で解決できるのにわざわざ関数を使う必要はないということ
    337 : nobodyさん - 2008/12/06(土) 01:20:07 ID:??? (+126,-29,-71)
    確かにPHPは型が曖昧な気持ち悪い言語だが
    冷静に考えてみれば===で型チェックする必要も
    strlenで長さ測る必要もない
    なぜなら受け取った値が数値でもそれは文字列だからだ
    ""と0は同じだが""と"0"は同じでない
    ようするに>>321のツッコミが間違っていたわけだ
    338 : nobodyさん - 2008/12/06(土) 01:31:11 ID:??? (+251,+30,-188)
    >>336
    肝心なところで理由述べてないから説明になってないよ。
    型チェックが良くて関数使うのが「裏技」で「強引」な理由は?
    「演算子」が良くて「関数」が悪い理由は?
    「美しくない」のは単なる主観では?もし合理的な理由があるならそれは何?

    例えるなら「サッカーより野球のほうが優れている。なぜならバットを使うのが裏技だからだ。」
    「醤油ラーメンよりとんこつラーメンのほうが優れている。なぜなら色が裏技だからだ。」
    と言ってるようなもん。
    つか関数使うと裏技と感じちゃうってもしかして初心者?

    >>337
    http://jp.php.net/manual/ja/types.comparisons.php
    残念ながらあなたが間違いです

    339 : nobodyさん - 2008/12/06(土) 01:38:42 ID:??? (+161,+30,-71)
    >>338
    十分説明になってると思うがね
    では逆に質問させてもらうが
    演算子でできるのになぜややこしい関数を使う必要があるの?
    >つか関数使うと裏技と感じちゃうってもしかして初心者?
    関数を使うことが裏技だなんていっていない
    型に起因することだから型のチェックで済ませばいいだけで
    それ以外のことでやるのが強引と言っただけ
    340 : nobodyさん - 2008/12/06(土) 01:45:47 ID:??? (+80,-30,-93)
    >>338
    せめて実際にやってみてから言えよ・・・

    <form method="post" action="<?php echo $_SERVER['SCRIPT_NAME']; ?>">
    <input type="text" name="hoge">
    <input type="submit">
    </form>
    <?php
    if (isset($_POST['hoge']) && $_POST['hoge'] == "") {
    echo "名無しi";
    }
    ?>
    341 : nobodyさん - 2008/12/06(土) 01:49:17 ID:??? (+64,+29,-60)
    >>340のスクリプトに何も値入れないで送信したのと
    0と入れたのを送信して見てくれ
    前者は名無しと表示されるが後者は何も表示されないはずだ
    342 : nobodyさん - 2008/12/06(土) 02:14:52 ID:??? (+60,-30,-47)
    >>338
    boolean表が一緒だから同じだと思ったの?

    $a = "";
    $b = "0";
    if (!$a && !$b) {
     echo "同じ";
    }
    これなら同じだろうよ

    だけど今比較してるのは文字列の内容だろ?
    if ($a == $b) {
     echo "同じ";
    }

    煽るんならそれなりの実力をつけてからにしろな?
    343 : nobodyさん - 2008/12/07(日) 02:48:28 ID:??? (+72,+29,-32)
    >>339
    質問を質問で返すとテスト0点になるのを知らないのか?マヌケ
    344 : nobodyさん - 2008/12/07(日) 07:12:34 ID:??? (+91,+29,-16)
    反論できなくなって精一杯の捨て台詞がこれかw
    みっともないから引っ込んどけw
    345 : nobodyさん - 2008/12/07(日) 07:56:45 ID:??? (+57,-29,-217)
    自分でマニュアルで答えだしておいて自信たっぷりに
    > 残念ながらあなたが間違いです
    こういうこと言っちゃうのはどうかと・・・
    特に"残念"とか一言余計
    匿名で減るものでもないんだし非を認めて謝ればいい
    あと匿名といえど言葉は選んだほうがいい

    本題だけど
    >>338が出してるマニュアルの==による比較表を見てわかる通り
    0==""はtrue、"0"==""はfalse

    厳密な比較だと表の通り
    0===""はfalse、"0"===""はfalse

    ""と比較してfalseになればいいのでint型の0の時は厳密な比較でいいけど
    フォームから受け取った値はString型の"0"なので緩やかな比較でも問題ない
    つまり型に起因するというのも今回のケースでは関係ない

    >>324はフォームからでなくテスト用に変数に0と入れたのだろうか・・・
    そこが気になる

    最初のレスでズバリな答えが出てるのに
    何か勘違いした人がツッコミを入れるとややこしくなる
    ID出すほうのスレの280あたりの話もそうだった
    346 : nobodyさん - 2008/12/07(日) 13:18:29 ID:??? (+200,+24,-49)
    >>344-345
    だから型に起因する問題って何?
    (再掲)文字列で渡ってくる値を文字列判定用の関数で判定してどこが強引?
    無理に===""や==""で比較することに固執してるから悪いんだろ。
    何をもって強引としてるのか要約しなくていいからはっきり説明して下さいな。
    347 : nobodyさん - 2008/12/07(日) 15:27:02 ID:??? (-1,-29,-34)
    メール受信でヘッダーからReceived: fromの送信元ipを取得したいのですが
    どんな方法で取得できるのでしょうか?

    349 : nobodyさん - 2008/12/07(日) 16:55:54 ID:??? (-3,-21,-36)
    おい人力検索ボランティアども
    windowsでmysqlのコマンドラインからバージョンを調べる方法を教えろやゴルァ
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について