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

    元スレくだすれPHP(超初心者用)3

    php覧 / PC版 /
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 'XSLTProcessor' + - 410Gone + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    451 = :

    php として動作してないだけじゃ?
    httpd.conf とか確認してみたら?

    453 = :

    あとは、デバッグの基本中の基本。チェックライト入れまくる

    454 = :

    つーか、LoadModuleしてるのか?

    455 = :

    亀レスになってしまい申し訳ありません。

    $sql = "insert into tablename (log,a,d,_in_date)
        values('$new_log_no','$a','$d','$in_date')";}
    の部分のSQLに対し
    pg_query($con,$sql);
    を設定するとテーブルにデータを追加することが出来ました。
    しかし作成されたデータは中身が空でしたorz
    insertが動いてるのでPHPとデータベースの連携は取れてると思います。

    >>454
    Loaded Modulesを調べた所次の通りの結果でした。
    mod_php5, mod_setenvif, mod_so, mod_auth, mod_access,
    mod_alias, mod_userdir, mod_actions, mod_imap, mod_asis,
    mod_cgi, mod_dir, mod_autoindex, mod_include, mod_status,
    Momod_negotiation, mod_mime, mod_log_config, mod_env, http_core

    456 = :

    >>449

    457 = :

    つーか、まずはHTMLしかないphpを書いて試すとか
    白紙のときにブラウザの機能でソース見るとどうなってるとか
    いろいろやってんのかな

    458 = :

    だいぶ前にログナンバーを引っ張り出して重複せずに+1したいと
    言っていたものですがa+モードとファイルロックのタイミングで
    何とか実現できました。
    その後に続くwモードのファイルーオープンで
    ログ数を調整しようと思ったのですが
    この処理を付けるとログが全部消えてしまいます。
    何か間違えていますか?

    459 = :

    //指定行数以上のログの削除
    $delfilename = ('card-walin.txt');
    $dellines = file($delfilename);
    $delcountlines = count($dellines);
    $yojyou = $delcountlines - 2;
    $delhandle = fopen($filename, "w");
    $delnewlog = "";
    flock($delhandle,LOCK_EX);
    for ($i = $delcountlines; $i <= $yojyou; $i--) {
    array_unshift($delnewlog, $dellines[$i]);
    }
    fwrite($delhandle,$delnewlog);
    flock($delhandle,LOCK_UN);
    fclose($delhandle);

    460 = :

    すいません、これで。
    ログ二行以上ならログの先頭から余剰分消していくと言う感じで

    //指定行数以上のログの削除
    $delfilename = ('card-walin.txt');
    $dellines = file($delfilename);
    $delcountlines = count($dellines);
    if ($delcountlines > 2) {
    $yojyou = $delcountlines - 2;
    } else {
    $yojyou = 0;
    }
    $delhandle = fopen($delfilename, "w");
    flock($delhandle,LOCK_EX);
    $delnewlog = "";
    for ($i = $delcountlines; $i <= $yojyou; $i--) {
    fwrite($delnewlog, $dellines[$i]);
    }
    flock($delhandle,LOCK_UN);
    fclose($delhandle);

    465 = :

    掲示板の削除なんですが下記操作してからファイルロックかけて書き込むと
    場合によっては重複しませんか?

    if ($_POST['delete']) {
    for ($i = 0; $i < count($lines); $i++) {
    $items = explode("\t", $lines[$i]);
    if ($items[0] == $_POST['delradio'] && $items[4] == $_POST['delkey2'] || $items[0] == $_POST['delradio'] && 'masterpass' == $_POST['delkey2']) {
    array_splice($lines, $i, 1);
    }
    }
    }

    466 = :

    >>465
    if (isset($_POST['delete']) && $_POST['delete']) {
     foreach ($lines as $key => $value) {
      $items = explode("\t", $value);
      if ($items[0] == $_POST['delradio'] && ($items[4] == $_POST['delkey2'] || 'masterpass' == $_POST['delkey2'])) {
       unset($lines[$key]);
      }
     }
    }

    書き込みの部分を見ないとなんとも言えない

    467 = :

    if($_POST['deletion']){
    $deletionlogname = ('card-walin.txt');
    $deletionloglines = file($deletionlogname);
    $deletioncountloglines = count($deletionloglines);
    $deletionlognumbers = $deletioncountloglines - 1;
    $deletionfopen = fopen($deletionlogname, "w");
    flock($deletionfopen,LOCK_EX);
    for($i=0; $i<$deletionlognumbers; $i++){
    $deletionlogitems = explode("\t", $deletionloglines[$i]);
    if($deletionlogitems[0]==$_POST['deletionradio'] && $deletionlogitems[3]==$_POST['deletionkey'] || $deletionlogitems[0]==$_POST['deletionradio'] && 'masterpass'==$_POST['deletionkey']){
    continue;
    }else{
    fwrite($deletionfopen,$deletionloglines[$i]);
    }
    }
    flock($deletionfopen,LOCK_UN);
    fclose($deletionfopen);
    }

    468 = :

    $deletionlogname = ('card-walin.txt');
    何これ

    469 = :

    >>467>>465が書いたものです、アンカー打ち間違えた・・・・・
    んでこれは記事の固有IDとパスが一致した行を削除と言う流れで
    書いてるんですがどうも訳わからん記事まで削除されてしまいます。
    >>465の質問とあわせてアドバイス頂けないでしょうか?

    470 = :

    >>468
    ログの名前です、
    変数名の英語的意味めちゃくちゃなのは
    とりあえず別の変数と重ならなくさせるためなので
    ご勘弁を。

    471 = :

    パスワードがどれかすら分からんし

    473 = :

    $deletionlogitems[0]がパスワード、
    POST['deletionradio']が記事の固有IDになります、
    説明不足ですいません。

    474 = :

    なんでログの件数ー1だけforでループしてんの?

    475 = :

    >>474
    その部分もしログが0だった場合とか書いてませんね、迂闊でした。
    ログの記事数のカウントが0から始まるのでそうやってみたのですが・・・・・

    476 = :

    訳分からん記事ってどういうの?

    477 = :

    関係ない別の固有IDの記事まで消えるんですよね、
    例えば記事が3つあって、3つめの記事で固有ID3の記事を削除したら
    1つめの記事も同時に消えたりします。

    478 = :

    1つめの記事が消えないこともあんの?

    479 = :

    >>478
    今試したら記事3つのログで2つめの記事消したら
    3の記事も同時に消えました。
    つかその後、削除ボタン押したら全部消えたw
    どうも記事固有IDとパスワード一致しなかった場合書き換えしないと言う
    処理が抜けてたようです。
    ただこれを直しても記事の同時消えが直る気がしない・・・・
    ロジック的には大体上にあげたプログラムである程度あってるのでしょうかね。

    480 = :

    データベースにおいて、データは物理的に削除するのではなく、
    フラグ変更することをお薦めする。

    481 = :

    >>480
    表示するかしないかで処理するということですか。

    482 = :

    >>481
    データベースの場合だ
    ファイルの場合は消した方がいいよ
    速度変わってくるし

    483 = :

    じゃ別に今言うべき話じゃないだろw

    484 = :

    >>483
    俺が言ったんじゃないw

    485 = :

    まず
    ||と&&の使い方を覚えよう
    466でも書いたけど(最初のifで要らん部分あるけどw)
    ループ中にある
    if ($items[0] == $_POST['delradio'] && $items[4] == $_POST['delkey2'] || $items[0] == $_POST['delradio'] && 'masterpass' == $_POST['delkey2']) {
    これは変です(処理的には通るけど)
      if ($items[0] == $_POST['delradio'] && ($items[4] == $_POST['delkey2'] || 'masterpass' == $_POST['delkey2'])) {
    やりたい事は多分これ
    んで、POST内容は意図したものがきてるの?

    486 = :

    >>484
    お前に言ってないw

    488 = :

    >>486
    俺にか?

    489 = :

    なんだか喧嘩させてしまったようで申し訳ない・・・・・

    490 = :

    架空請求の詐欺師が特定されてるよw
    【ユビキタス銀河】 詐欺師プログラマー 武田洋幸
    http://pc11.2ch.net/test/read.cgi/antispam/1204457908/l50

    491 = :

    何度も投稿すいません、掲示板で書き込んだ後ブラウザの更新ボタン押すと
    もう一度書き込まれてしまうのですがこれを防止するのは2重書き込み防止処理だけでいいのでしょうか?
    これだとたまに別の人が書き込んだ後に更新押した場合
    書き込まれちゃいますよね。
    皆さん過去ログの内容走査処理したりしてるのでしょうか?

    492 = :

    >>491
    書き込んだ後ブラウザを強制的に閉じるようにしたら更新できなくなるよ

    493 = :

    そんな~、ドラえも~ん!

    494 = :

    a.html←フォーム
    b.php←post先
    c.php←投稿完了しました表示

    b.phpで投稿完了したら
    header('Location :http://example.com/c.php';);

    これでa.htmlまで戻るとかで戻らない限り2重投稿はある程度防げる

    495 = :

    なるほど、そういうことでしたか、取り乱しました。
    html作成せずにphp1つだけで全部やろうとしてもややこしそうですね・・・・・

    496 = :

    >>495
    別にhtml作らなくてもできるけど
    ファイルは分けたほうが後々良いよ

    497 = :

    >>495
    だまされるな!
    ドラえもん呼ぶのが正解だ

    498 = :

    htmlってどうやって作るんでしたっけ?
    なんかリファレンス読んでも見つからないのですが。


    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 'XSLTProcessor' + - 410Gone + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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