検索結果

DB

全10000件中9241~9260件表示
  • 全てのカテゴリ
  • 全ての質問
  • カートに商品を追加していく処理について

    自社Winサーバ、OS=WinXP、PHP5+MySQLの環境でカートに商品を追加する機能をいろいろな方法で構築し、一番シンプルに処理できる方法論を 模索しながら試しておりましたが、行き詰ってしまいましたので いくつかご教授頂ければ幸いです。 質問です。 $_SESSION[article] = array ($article_no => array ( "no" => $article_no, "amount" => $article_amount) ); このソースの様に、article_idとarticle_amountだけが 購入するのボタンを押した際にsessionに格納出来れば、 あとの商品名などはDBから参照し表示させるだけなので、 シンプルなのではと思い試しておりますが、 この場合、連想配列をarray_pushのような形で追加するには どのようなfunctionが必要となってくるのでしょうか。 また、本当にこの方法論がスマートかは解りかねておりますので 何か良い方法論が御座いました際にはアドヴァイス頂けると幸いです。 どうぞ宜しくお願いいたします。 また、解説に不備や分り難い所があろうかと思いますので 気軽にご指摘下さればすぐに補足致します。

    • ベストアンサー
    • PHP
    • sato777
    • 回答数1
  • C++の勉強方法

    お世話になります。whatpyonと申します。 最近C++を習得しようと思って勉強を始めているところですが、正直勉強方法に悩んでいます。 (同じような質問を投稿されていた方のレスも拝見させていただきました。) 最終的には、趣味プログラミングで終わらせるつもりはないです。 <最終的な目標> 『MFCを使ってダイアログベースのアプリケーションを作成する』  ※DBへのアクセス処理も含む。 <期間> 3ヶ月(目安) プログラム経験は、VB、Javaを1ヶ月程度(所詮付け焼刃の知識しかないですが)しかなく、ほぼ初心者です。 初心者が理解できるようなMFCの書籍を購入して取り組んでいるのですが、書籍で書いている通りのプログラムは組めますが、本質を理解できていないためか、応用を利かせることができません。 また、クラスをどのように分割すれば一番効率的なのかといったこともまったくわかりません。 ここは、まず1ヶ月程度みっちりC++の基本文法、クラスの設計方法等の習得に注力すべきなのでしょうか?

  • 業務系SEからWEB系SEへ転向する時の要点

    いつもサイトでは勉強させていただいております。 業務系SEを10年続けております。 システム種別は、顧客管理、会計業務、基幹業務などです。 担当フェーズはユーザ要件定義、基本設計です。 言語はVB、VBAで、DBはOracle、SQL-SERVERなどでした。 今回WEB系開発に携わることになり、担当フェーズは変わらないと思いますが、WEB全般に関する知識は皆無で、システム動作環境については大きく変わるとまでは分かるのですが、何がどう変わるのか、何をどこから知識として身につけていったらいいのか、また、お役立ちサイトなどについても、何をキーワードに検索したらいいのかなど、不明点が多すぎなのです。 もし、私のように、分野を変えた開発に携わるようになった技術者の方がおられましたら、どのような点に気をつけたらいいのか、また、どのように知識を習得されたのか、ご教授願えますでしょうか。 宜しくお願いいたします。 P.S.ネットワーク環境には疎い方です。

  • php フォーム開発 IE9のみセッション消滅

    フォーム機能での、「入力画面」>「確認画面」>修正するボタン>「入力画面」 という流れの中の、ブラウザIE9でのセッションの消滅について質問させてください。 はまってしまってから3日になります。とうとう力尽きました。 IE9以外の下位バージョンやFireFoxでは問題なく動きます。 まず、環境から。 xmpp 1.7.3 PHP 5.3.1 MySQL 5.1.41 Smarty 3.0.7 ※同一ドメインで、フォームを複数運営させるため、 各フォームのそれぞれの項目(ラジオ,チェックボックス,テキストエリアなど)を管理画面から一意の値と共にDBに格納しています。 各フォームを表示する際は、その一意の値を呼び出して出力しています。 次に、処理の流れです。 (1)「入力画面」では、各入力項目をDBから取得し、少し整形してフォーム画面を出力しています。 Smartyを使っていますので、テンプレートへ アサインする形です。 ※この際、$_SESSION["f"]["no"]に、フォームを大別する一意の値を入れています。 閲覧者が入力した内容は、自身「入力画面.php」にポストして、 空の判別後、$_SESSION["f"]["別の一意の数値"]に保存します。 その直後、エラーチェック関数にそのセッションを通して、通過すれば「確認画面」へリダイレクトします。 /*下記のように*/ $url = "http://".$_SERVER["HTTP_HOST"].dirname($_SERVER["SCRIPT_NAME"])."/確認画面.php"; header("Location: ".$url); exit; (2)「確認画面」では、 「入力画面」を経由したかどうかをphpの先頭でチェックします。 上述の$_SESSION["f"]["別の一意の数値"]を使って、同じエラーチェック関数で審査を行い、 通過すれば「確認画面」を表示するようにしています。 ※実際は、このチェックの前に$_SESSION["f"]["no"]を使ってDBから値を取得したりしています。 /*下記のように*/ $p[2]=フォーム取得関数($_SESSION["f"]["no"]);//DBからフォームに関する個別の値を取得。 if(count($p[2])!=0){ if(エラーチェック関数($_SESSION["f"])){ //エラー 入力画面経由ではないので 「入力画面」へ戻す $url = "http://".$_SERVER["HTTP_HOST"].dirname($_SERVER["SCRIPT_NAME"])."/入力画面?no=".$_SESSION["f"]["no"]; header("Location: " . $url); exit; } }else{ //エラー フォーム関連パーツを取得できないので 「入力画面」へ戻す $url = "http://".$_SERVER["HTTP_HOST"].dirname($_SERVER["SCRIPT_NAME"])."/入力画面?no=".$_SESSION["f"]["no"]; header("Location: " . $url); exit; } (3)問題なければ、 「確認画面」が表示されます。 (4)内容を修正するのであれば、 「修正するボタン」を押して >「入力画面」へと遷移させます。 /*下記のように*/ <テンプレート内> <form action="確認画面.php" method="post"> <input type="submit" name="modify" value="   修正する   "> </form> <確認画面.php内> if(isset($_POST["modify"]){ $url = "http://".$_SERVER["HTTP_HOST"].dirname($_SERVER["SCRIPT_NAME"])."/入力画面?no=".$_SESSION["f"]["no"]; header("Location: ".$url); exit; } (5)確認画面からゲットでnoの値を受ける(入力画面にて) <入力画面.php内> if(isset($_GET["no"]) && is_numeric($_GET["no"])){ //$_GET["no"]つまり$_SESSION["f"]["no"]を使ってDBの値取得 } そしてセッションを維持したままなので、前回の入力項目を修正することができる。 これらの一連の流れは、IE9以外だと正しく動きます。 IE8も含めIE7 IE6 でも正常に動きます。 しかし、(4)の段階で、$_SESSION["f"]["no"]の値が消滅している為か、「入力画面」へと戻ることができません。 細かく言えば、(2)や(3)の段階(最初の「確認画面」へと遷移した時点)では、$_SESSION["f"]["no"]値は生きているようです。 (4)の段階の修正するボタンを押すと消滅しているようです。 <form action="確認画面.php" method="post"> <input type="submit" name="modify" value="   修正する   "> </form> これをポストして、自身「確認画面.php」に再度アクセスすると、 $_SESSION["f"]["no"]が消滅しているようです。 ただ、おかしなことに、確認画面.php内のどこかに print_r(変数); 入れてやると、一応_SESSION["f"]["no"]の値は維持されるようで、 元の入力画面へと遷移できてしまいます。 ※ただ、元の入力画面に戻ったときには、_SESSION["f"]["no"]は消えているようです・・・・。 ※print_rが発動したphpファイルだけが大丈夫なようです。 いろいろネットで検索をかけました。 ドメインにアンダーバーを使ってはダメだとか、session_idやname のことも調べましたが、 どうも該当している問題ではなさそうなんです。 セッションについて理解が深くない自分ですが、session_idが関連づいていない? 他のブラウザやバージョンでは問題なしだが、 IE9のみ特殊な仕様で、header("Location: " . $url);を使うとセッションを関連付けしてくれない? ということなのかなと推測していますが。 もう自分の力量ではどうにもならず・・・・。 そもそも上記のプログラムの流れで、 他のフォームも沢山作ってきましたが、いままでこのような問題には遭遇しませんでした。 正しく稼動しています。 「入力画面」から「確認画面」へは、セッションを使って安全に遷移したいので、 他の方法をとるのは厳しいかなと・・・。 どうぞお力をお貸しください。 何卒よろしくお願いします。

    • 締切済み
    • PHP
    • n-yuuki
    • 回答数2
  • データベースでの文字化け

    お世話になっております、ぷりんと申します。 下記の投稿をしましたが、解答が得られませんでした・・・。 しかしいろいろ調べているうちに、PHPでは「 mysql_set_charset 」を実行すると文字化けが治るとお聞きしました。 この mysql_set_charset をPerlで実行するには、どうしたらよろしいのでしょうか? 以下前回投稿 3日間文字化けと格闘した結果、ついに力尽きてしまったのでまたこちらにお世話になります(TдT) 使用しているコードはUTF-8です。 さて、データベースへ   $db=DBI->connect("略");   $sth = $do->prepare("select name from xxx"); にて接続、nameカラムのデータを抽出し、配列変数に入れて表示させました。 データベースに直接日本語入力(例えば”ああああ”)をし、抽出すると、HTML出力の際に「????」となってしまいます。 INT型は正常に処理されます。(文字ではありませんが念のため記述) データベースに直接記入しない方法(CGIにてInsertを使用して)「ああああ」を送信しますと、データベースをブラウザで確認した際に「ああああ」になりますが CGIにてSelectを使用し、リクエストすると きちんと「ああああ」と表示されます。 また、InsertでNプレフィックスをつけた際はデータベースをブラウザで確認するときちんと「ああああ」となっておりますが、CGIにてSelectを使用してリクエストすると「????」とデータベースに直接日本語入力した時と同じ結果になります。 最終的に「読み込みも問題なく、データベースをブラウザで確認しても(または直接編集しても)正常に処理される環境にしたいのです! 文字化け関係はしんどいかと思いますが、どなたかお詳しい方、ご教授お願い致します。 -環境- ●ロリポップレンタルサーバー   Perl(ver.5.8.8)   MySQL(バージョン5.1.34)利用可。『PHP My Admin』でのみ利用可。 ●本文中の「データベースをブラウザで確認」とは、PHP My Adminにはいって確認しているという意。 ●cgi保存形式は全てUTF8(BOM無し。有だとエラー) ●HTML出力は   print "Content-type: text/html; charset=utf-8\n\n"; ●show variables like 'char%'; を実行した結果 character_set_client     utf8 character_set_connection  utf8 character_set_database   utf8 character_set_filesystem  binary character_set_results    utf8 character_set_server    utf8 character_set_system    utf8 character_sets_dir/usr/share/mysql/charsets/ ●照合順序 カラム:utf8_unicode_ci テーブル:utf8_unicode_ci DB:utf8_unicode_ci MySQL接続:utf8_unicode_ci -試したこと- Encode::encodeやEncode::decode関数を使用しても変化無し。

    • ベストアンサー
    • Perl
  • ローカル以外のMySQLをphpMyAdminで

    CentOS6.xのhttpdにphpMyAdminをセットアップし、別マシンにおいてあるMySQLに接続しようとしています。 外部マシンにtcpで接続するため、内部ソケットは使用しないと考えておりますが、アクセスしますと、なぜか#2002 Can't connect to local MySQL server ...というエラーメッセージが出ます。 お心あたりがあれば、ご教授ください。 ちなみに、別マシン上(CentOS5.x)で同様にphpmyadmin-2.11.11.3-2を稼動させておりますが、こちらは問題なく稼動しております。 要は、現在稼動しているphpmyadmin2をDBを含めphpMyAdmin3にマイグレーションしたいと考えているわけです。 (DBは現行稼動のものをバックアップして別マシンに再構築しています) 諸元値(関連あると思われるもの抜粋) OS=CentOS6.3 phpMyAdmin-3.5.2-1(EPELからyum) php-5.3.3-14(CentOS BASEよりyum) php-mysql-5.3.3(同上) mysql-5.1.61-4(同上) mysql-libs-5.1.61-4(同上) mysqlクライアントでは問題なくアクセスが可能です。 ※アクセスしたときのエビデンスは以下 # mysql -u root -h 10.9.1.7 -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 74 Server version: 5.1.61 Source distribution Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> config.inc.phpには以下のように設定してあります。 /* Authentication type */ $cfg['Servers'][$i]['auth_type'] = 'cookie'; /* Server parameters */ $cfg['Servers'][$i]['host'] = '10.9.1.7'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; /* Select mysql if your server does not have mysqli */ $cfg['Servers'][$i]['extension'] = 'mysqli'; $cfg['Servers'][$i]['AllowNoPassword'] = false; ※ちなみにphpmyadmin2では、hostとextensionが異なるのみ /etc/httpd/conf.d/phpMyAdmin.confの内容は以下 Alias /mysql /usr/share/phpMyAdmin <Directory /mysql> Order deny,allow Deny from all Allow from all </Directory> ※現在はテスト中なのでInetから切断されたネットワーク環境においてあります /etc/my.conf [client] socket=/var/lib/mysql/mysql.sock port=3306 host=10.9.1.7 user=mysql -- この状態で、httpdを起動し、phpmyadminのフォルダをアクセスすると、userとpassword入力画面まで行きます。 そこで、先にmysqlクライアントで接続可能であったユーザとパスワードを指定すると、冒頭のエラーメッセージが表示されるという具合です。 ちなみに、phppgadminもセットアップしておりますが、こちらは良好に動作しております。 よろしくお願いします。

    • ベストアンサー
    • MySQL
    • f_user
    • 回答数4
  • RSSをMYSQLに入れる最適なコードがわからない

    テーブル接続→テーブル作成(必要か不明)→RSSをまとめる→RSSを取得→RSSをテーブルに入れる→RSSを表示をPHPで作成しているのですが、 RSSをテーブルに入れる最適なコードがわからず困っております。 insertを使用してRSSをテーブルに入れたいのですが、INSERT INTOはphpにいきなり書いてもエラーにならないのでしょうか?$を使用するほうの記載のほうが正しいのでしょうか? <?php require_once(dirname(dirname(dirname(dirname( __FILE__ )))) . '/wp-load.php' ); //ファイルの先頭で読み込む try { $dsn = 'mysql:dbname=ozvutmpq_wp1;host=localhost'; $user = 'ozvutmpq_wp1'; $password = 'Rn_&Zi$gWKae'; $dbh = new PDO($dsn,$user,$pass); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);//エラーが発生した時に、例外を投げる echo "データベースへの接続が出来ました"; }catch (PDOException $e) { echo $e->getMessage();// err時はメッセージを表示 exit; } //RSSをまとめる $url1 = [ 'http://', 'http://', 'http://',];//フィード登録1次元配列に foreach ($url1 as $url) { //複数のRSSを読み込むには?A.RSSのURLを配列に入れ、その配列をsimplexmlの引数にします。 $count = 0;//初期のカウント //RSSを取得 $rss = simplexml_load_file("$url"); // simplexml_load_file()でRSSをパース解析してオブジェクトを取得します。 $site_title = $rss->channel->title; // RSSタイトル取得 値の代入 自作関数 $post_thumbnail= $rss->channel->thumb; // RSSサムネイル画像取得 値の代入 自作関数 foreach ($rss->item as $item) { // この内側で $item を参照する if ($count >= 8) { break;//8件を超えたとき取得を終了する } $count++; $title = $item->title; // タイトル $link = $item->link; // リンク $thumb = $item->thumb->url; // アイキャッチサムネイル $content = $item ->description;// 詳細、必要なのか不明 date_default_timezone_set("Asia/Tokyo");//日時、タイトルとサムネイル画像だけほしいので要らない気がする $dc = $item ->children('http://purl.org/dc/elements/1.1/');//RSSの情報をPHPで取得するとき、[simplexml_load_file()]関数を使いますが、読み込むファイルの形式が[RSS 1.0]の場合、特殊な処理を施してあげないと正確に取得・表示することができません。 $day = date('Y/m/d H:i',strtotime($dc -> date));// RSS日付け取得 値の代入 自作関数 RSS1.0を取得したい場合「dc」の名前空間は「xmlns:dc="http://purl.org/dc/elements/1.1/"」 と定義されているので、これを引数として指定します。 $key = date('YmdGHis', strtotime($dc -> date));//DB等に入れやすい書式に変換 } } //RSSをテーブルに入れる INSERT INTO rssfeed (title, link, thumb,content)//テーブル名 VALUES ($title, $link,$thumb,$content now()) ON DUPLICATE KEY UPDATE up_date = now(); //名前を独自につける $item_insert_sql = "INSERT INTO $db_database.`rssfeed`(title, link, thumb, content) VALUES ('" . $title . "', '" . $link . "', '" . $thumb . "', '" . $content . "')";//mysql_queryとしてまとめてコードとして使うため?

    • ベストアンサー
    • MySQL
  • LAMPを使用したログインシステムの暗号化について

    LAMPを使用したログインシステムの暗号化についてご教授ください。 アマゾンのような会員制ネットショップの開発を考えております。 DB(MYSQL5)へ会員情報を保存し、会員がログインできる仕様予定です。 要件 **************************** .MYSQLへ保存する会員情報は「会員番号以外」の全フィールドをBlowfish方式,salt使用で暗号化して保存したい (安全であれば暗号化方式にはこだわりません。)  目的:万が一会員情報データが流出した場合の被害を軽減したい ・会員テーブルのフィールド構成は5列  「会員番号、ログインパスワード、クレジットカード番号、住所、電話番号」 質問 *************************** 会員(仮に鈴木さん)は前月にログインパスワード「1234」で会員登録しました。 鈴木さんがログインパスワード「1234」を忘れた場合の手順は以下の手順で新パスワードに変更します。 (処理1) システム側が仮パスワード「tmp0000」を作成し、会員テーブル内の鈴木さんのログインパスワードを「tmp0000」で上書きします。 (処理2) 鈴木さんへ仮パスワード「tmp0000」をメールで送信 (処理3) 鈴木さんが「tmp0000」でログインして会員テーブル内の鈴木さんのログインパスワードを新パスワード[new1111]で上書きします。 この場合、会員テーブル内の鈴木さんレコードのログインパスワード以外の列(クレジットカード番号、住所、電話番号) は「1234」で暗号化されたままです。 【質問1】 処理1と処理3のタイミングでパスワード以外のフィールドは一旦復号化して再度暗号化、保存の手順が必要と思うのですが、元の復号キーが不明でも可能でしょうか? 復号しないと鈴木さんは住所、電話番号等の再入力が必要になってしまうと思いますので・・・ 【質問2】 質問1の回答が可能な場合、どのような処理が必要でしょうか? 【質問3】 質問1の回答が不可能な場合、データが流出した場合の被害を軽減する代替え案は何かありますでしょうか? 住所、電話番号等は平文で保存すれば問題ないのかもしれませんが、リスキーなので躊躇します。 アマゾンや楽天等でパスワードを変更したときも住所等の再入力は必要なかったように記憶しています。 【質問4】 予想でも結構なのですがアマゾンや楽天等は住所などのフィールドは平文で保存しているのでしょうか? 【質問4】 ログインシステム開発時のDB暗号化の実装方法・概念等、のわかる 書籍やWEBページ等ありましたら教えてください。 また、この質問全体をとおして私に諸先輩方からアドバイス等あれば宜しくお願いします。

    • 締切済み
    • PHP
    • JJ_1234
    • 回答数3
  • 海外サーバ利用時にのみサーバへ極端な負荷が

    簡易的なブログシステムをフルスクラッチで作成しました。 XAMPPでテストしていますし、まったく同じシステムを国内サーバで快適に運用しています。 無料サーバでテストした際の事も含めると、国内10サーバ程では問題が発生しませんでした。 安価さ大容量さに釣られてこのたび海外サーバをレンタルしたのですが、国内サーバでは快適に動作した該当システムが非常に動作が鈍くなりました。 伝送距離の問題ではあり得ないレベルです。 海外の無料レンタルサーバ、数社を試しましたがそのうち一社を除きすべてのサーバで同現象です。 問題の発生したサーバのうち一社からは、サーバに負荷を掛けた事が理由でアカウントを停止させられました。 海外サーバにのみ発生するという事で、マルチバイト絡みかとも思えますが、php_infoを確認してもmb_stringが使用できる事を確認しています。 ページが文字化けしているという現象も発生していません。 問題が発生したサーバのうちの一つは、日本語版のWordpressをインストールして運用しても、何も問題は発生していません。 PHPは5で書いていて、対象サーバはすべて5以上を確認しています。 PHPソースコード、HTMLの文字コードもすべてUTF-8で統一しています。BOMも無しです。 DBはMySQLで文字コードはUTF-8、DBへの接続はPearのMDB2を利用していて、ライブラリのバージョンは最新のものです。 テンプレートシステムとしてSmartyを利用しています。 .htaccessでmod_rewriteを使用しています。 問題を切り分けるためにテストをしようにも、実サーバ上でしか問題が発生せずに、しかもサーバ負荷が激しいため上手く行かない状態です。 また、サーバ会社はスクリプトの相談に乗って貰えない事や、英語でのやり取りで意思疎通が充分ではない事などがあり、うまく情報が取れません。 現在は海外サーバを利用する事は諦めて、国内サーバで運用している為急ぎではありませんが、後学のためという事もあり、海外サーバにおいて発生する問題について広く意見を聞かせて欲しいと思います。 せっかくレンタルした海外サーバが勿体ないので、問題解決できる事に越した事はありませんが。 よろしくお願いします。

    • ベストアンサー
    • PHP
    • coai
    • 回答数1
  • MTのインストールと設定教えてください

    MTのインストールが分からないので質問します。 新たにサーバー(ハッスルサーバー)を借り、ブログではなく メインページ(独自ドメインでMTが表示されるように)として MTをインストールしようと思っています。 MTのダウンロードは終わっています。 他サイトで、mt-config.cgi-originalというファイルのファイル名を、mt-config.cgiに変更し、 15行目付近にある CGIPath http://www.example.com/cgi-bin/mt/ と書かれた行を CGIPath http://MTを表示させたいドメイン名/ のように変更します。MovableTypeを表示させる予定のご自身のドメイン名やサブドメインをここに記入します。 21行目付近にある StaticWebPath http://www.example.com/mt-staticと書かれた行を、 先頭に#(半角)をつけて #StaticWebPath http://www.example.com/mt-static と変更します。 43行目付近のDatabase /path/to/sqlite/database/file と書かれた行を、 Database db/sqlitedb といった形に変更します。 とありましたのでその通りにしました。 MTを表示させたいドメイン名は今朝取得した独自ドメインをいれました。DNS設定(ムームー側でしました)、ハッスル側での独自ドメイン設定もしました。 そこで質問なのですが、 まず、MTをメインで表示させたい場合にサーバー側のWWWフォルダ(ハッスルだとindex.htmと同じ階層)にパーツをすべてアップロードしてよいのでしょうか? それとも、やはりmtというフォルダを作ってそのフォルダ内に MTパーツをアップロードすべきでしょうか? 重ねていいますが、独自ドメインでアクセスがあった時、 MTがダイレクトに表示されるようにしたいのです。 http://www.×××.com/mtとはしたくないのです。 http://www.×××.com/でMTのindex.htmlを表示させたいのです。 MTはテンプレートを購入済みでそれを使う予定です。 その場合、パスの設定は、 CGIPath http://MTを表示させたいドメイン名/ でよろしいのでしょうか? mt-config.cgiの変更点は他にありますでしょうか? また、これはサイトによってそれぞれなのですが、 MTパーツの拡張子.cgiのパーミッションを700にしなさいというサイト と750にしなさいというサイトと両方ありますがどちらが正しいのでしょうか? それとDBというフォルダを作るようですがこれもパーミッション設定は すべきなのでしょうか? いろいろと質問してしまい申し訳ありません。 急ぎサイトをアップしたいと考えております。 早いご回答をお待ちしております。 環境 サーバー ハッスルサーバー MTバージョンMT-4.261 mt-config.cgiの変更はドリームウィーバーで行いました。 以上よろしくお願いします。

    • shu0103
    • 回答数5
  • oracleのメモリ使用量が97%ほどに・・・減らしたいです

    いつもお世話になります。 oracle8.1.7がインストールされている Linux サーバに関して、現在メモリ使用量が逼迫しているためか、 時々OSの処理が重くなり、応答が無くなる事が多々発生して困っています。 Database:Oracle 8.1.7 Enterprise Edition Linux:RedHat Linux 6.2 freeコマンドで調べたところ、 --------------------------------------------------------------------------- [root@sample dir1]# free total used free shared buffers cached Mem: 2073296 1996752 76544 1575952 112904 813364 -/+ buffers/cache: 1070484 1002812 Swap: 2097136 2536 2094600 --------------------------------------------------------------------------- topコマンドで調べたところ(Shift + M でメモリ使用順としました) --------------------------------------------------------------------------- 6:05pm up 5:06, 2 users, load average: 0.22, 0.11, 0.10 69 processes: 66 sleeping, 1 running, 0 zombie, 2 stopped CPU states: 17.3% user, 1.4% system, 0.0% nice, 81.1% idle Mem: 2073296K av, 1996832K used, 76464K free, 2385012K shrd, 110684K buff Swap: 2097136K av, 2632K used, 2094504K free 816100K cached PID USER PRI NI SIZE RSS SHARE STAT LIB %CPU %MEM TIME COMMAND 1672 oracle 0 0 848M 848M 847M S 604M 0.0 41.9 13:47 oracle 1710 oracle 4 0 458M 458M 456M S 445M 1.5 22.6 13:03 oracle 1767 oracle 6 0 350M 350M 348M S 337M 2.3 17.3 10:17 oracle 1764 oracle 6 0 347M 347M 342M S 331M 2.3 17.1 4:38 oracle 1915 oracle 16 0 84564 82M 80532 S 68M 29.2 4.0 0:59 oracle 1688 oracle 0 0 74804 72M 73592 S 71M 0.0 3.5 0:36 oracle 1677 oracle 0 0 62808 61M 61100 S 46M 0.0 3.0 0:44 oracle 848 oracle 0 0 39160 38M 37960 S 36M 0.0 1.8 0:01 oracle 854 oracle 0 0 30092 29M 29632 S 25M 0.0 1.4 0:01 oracle 852 oracle 0 0 14592 14M 14144 S 9.8M 0.0 0.7 0:02 oracle ---------------------------------------------------------------------------  ※10件のみとしました 上記となり、恐らくoracleがメモリ使用量を圧迫し、Swap領域も逼迫した場合にサーバ処理の 応答が無くなると推測しています。 上記を改善するために、init.ora 内の以下の項目を編集しようと考えていますが、数値を決めかねています。 サーバがフリーズ状態(僅かながらもゆっくり動いている)原因について、 何でも結構ですので、アドバイスいただけたらと思います。よろしくお願いいたします。 open_cursors = 1000 max_enabled_roles = 30 db_block_buffers = 64000 shared_pool_size = 524288000 large_pool_size = 1048576 java_pool_size = 0 log_checkpoint_interval = 10000 log_checkpoint_timeout = 1800 processes = 150 log_buffer = 532480 db_block_size = 8192 sort_area_size = 1048576 sort_area_retained_size = 1048576

  • VBA データセットした後にその一部をLOCK

    こんばんは。 お世話になります。 エクセルVBAにてアクセスからデータを取得し、その一部をロックしたいです。 (取得方法には色々あるかと思います。 経験が浅いためどう表現すれば適切か自信がありませんが 「ADOコネクションオブジェクトとADOレコードセットオブジェクトにて実施しています。」) 【VBAの仕様の説明】 「読込」ボタンを押すと、B12~AA1000のエリアのデータを一掃して、 そこに条件によりレコード数が変わりますが、アクセスのデータをセットしています。 その後、これらの出力されたレコードについてエクセル上にて値を書き換えたのちに 「更新」ボタンを押すと、アクセスに更新に行くというものです。 このときB,C,D,E列については、更新処理時に重要なものであり、F列以降と異なり 書き換えてはいけないものです。 【実現したいこと】 このエクセルを開いてから閉じるまでの間、いつでもB12~E1000は手入力不可にしたいです。 ただし、エクセルを開いていきなりロックをしてしまうと、「読込」を押したときに アクセスのデータを出力するときにエラーになってしまいますので 読込ボタンを押した後はB12~E1000のロックを外したいです。 これが難しいようであれば、エクセルを開いてから「読込」を押すまでの間は ロックをかけなくてもよいです。 ある程度ググったので シートを保護する & 特定のセルのLOCKをfalseにする を適切なタイミングで 実施するのだとは理解していますが、実装しようとすると 「RangeクラスのLockedプロパティを設定できません」というエラーが出てしまって 詰まってしまっています。 よろしくお願いいたします。 ↓↓↓↓ソースです。↓↓↓↓ Private adoCn As Object 'ADOコネクションオブジェクト Private adoRs As Object 'ADOレコードセットオブジェクト Private strSQL As String 'SQL文 Private Const DBpath As String = "C:\zaiko.accdb" '接続するファイル(2007~)のフルパス '---------ファイルが開けない場合のエラーを追加 Private file_error As String '--------- Sub DBconnect(flg As Boolean) 'DB接続プロシージャ '---------ファイルが開けない場合のエラーを追加 On Error GoTo Err_Handler 'エラーが起きたら"Err_Handler"へ file_error = 0 'エラーが起きない正常な間はエラーをオフにする。 '--------- Set adoCn = CreateObject("ADODB.Connection") 'ADOコネクションオブジェクトを作成 If flg = True Then Set adoRs = CreateObject("ADODB.Recordset") 'ADOレコードセットオブジェクトを作成 'adoCn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBpath & ";" 'Accessファイル(~2003)を開く adoCn.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & DBpath & ";" 'Accessファイル(2007~)を開く '---------ファイルが開けない場合のエラーを追加 Exit Sub '正常ならここで終了 Err_Handler: 'エラーが起きたらここへ飛ぶ MsgBox "「C:\」フォルダの下にエクセルとアクセスファイルを置いてください。" file_error = 1 '--------- End Sub Sub DBcut_off(flg As Boolean) 'DB切断プロシージャ If flg = True Then adoRs.Close 'レコードセットのクローズ adoCn.Close 'コネクションのクローズ Set adoRs = Nothing 'オブジェクトの破棄 Set adoCn = Nothing End Sub Sub DBread() '読み込み Dim shouhinbangou As String, dy As String, txt As String Call DBconnect(True) 'DB接続 If file_error = 1 Then file_eroor = 0 '初期化してから Exit Sub '処理終了 End If With UserForm1 .show 'ユーザーフォーム表示 If .TextBox1 = "" Then '商品番号欄が空欄の場合 shouhinbangou = "" Else '商品番号欄が記入済 shouhinbangou = "WHERE item_no LIKE '%" & .TextBox1 & "%' " '~を含む End If End With strSQL = _ "SELECT * " & _ "FROM zaiko_table " & _ shouhinbangou adoRs.Open strSQL, adoCn 'SQLを実行して対象をRecordSetへ Range("B12:Z1000").ClearContents '前のデータクリア Range("B12:Z1000").Font.ColorIndex = xlAutomatic 'フォント色を初期化 Range("B12:AA1000").Borders.LineStyle = xlLineStyleNone Application.EnableEvents = False 'イベントオフ(ワークシートチェンジが反応しないように) i = 12 'スタート行 Do Until adoRs.EOF 'レコードセットが終了するまで処理を繰り返す Cells(i, 2) = adoRs!ID Cells(i, 3) = adoRs!item_no Cells(i, 4) = adoRs!color_no Cells(i, 5) = adoRs!item_name Cells(i, 6) = adoRs!~~~ ~中略~ Cells(i, 26) = adoRs!~~~ i = i + 1 '行をカウントアップする adoRs.MoveNext '次のレコードに移動する Loop '下から数える With Range("B12") .Resize(Cells(Rows.Count, .Column).End(xlUp).Row - .Row + 1, 26).Borders.LineStyle = xlContinuous End With Application.EnableEvents = True 'イベントオン Call DBcut_off(True) 'DB切断 End Sub

    • ARIES10
    • 回答数3
  • 【数学】ベクトルの問題です。

    【問題】 ベクトル↑a≡(a1,a2)、↑b≡(b1,b2)が一次独立の為のa1,a2,b1,b2に関する条件を求める。但し、a1,a2,b1,b2は実数とする。 この問題の私なりの回答を載せます。出来るだけ細かいご指摘をお願いします。 【以下回答】 ベクトルの一次独立の定義より 「ベクトル↑a、↑bが一次独立である」⇔「k*↑a+t*↑b=0を満たす実数の組(k,t)が(0,0)以外にない」である。 よって、 (I)ベクトル↑a、↑bが一次独立の定義より k(a1,a2)+t(b1,b2)=0⇔(k*a1+t*b1,k*a2+t*b2)=0 したがって、 k*a1+t*b1=0・・・(1) k*a2+t*b2=0・・・(2) (1)*b2,(2)*b1より k*a1*b2+t*b1*b2=0・・・(1)’ k*a2*b1+t*b1*b2=0・・・(2)’ (1)’-(2)’ k(a1*b2-a2*b1)=0・・・(3) (1)*a2,(2)*a1より k*a1*a2+t*a2*b1=0・・・(1)'' k*a1*a2+t*a1*b2=0・・・(2)'' (2)''-(1)'' t(a1*b2-a2*b1)=0・・・(4) (3)、(4)より、a1*b2-a2*b1=0、または、k=t=0 このとき、a1*b2-a2*b1=0が成り立つと仮定すると a1*b2=a2*b1より、b1について場合分けをして考える。 (a)b1≠0であるとき、a2=a1*b2/b1となる。 ↑a≡(a1,a2)≡(a1,a1*b2/b1)≡a1/b2(b1,b2)≡a1/b1*↑b となり、ベクトル↑a、↑bは一次従属となる。 (b)b1=0であるとき、a1*b2=0であるので、a1=0またはb2=0となる。 b1=0、かつ、b2=0のとき、↑b≡↑0となるので、ベクトル↑a、↑bは一次従属となる。 また、b1=0、かつ、a1=0のとき、a2=0、または、b2=0であれば、ベクトル↑a、または↑bが↑0となる。 従って、a2≠0,b2≠0であるとき、↑a≡(0,a2)であり、↑b≡(0,b2)≡a2/b2(0,a2)≡a2/b2*↑aとなり一次従属となる。 よって、b1=0のとき、ベクトル↑aと↑bは一次従属となる。 (a)(b)は、a1,a2,b2について考えた時も同様であるので、a1*b2-a2*b1=0となる時、ベクトル↑a、↑bが一次独立である事に矛盾する。従って、ベクトル↑a,↑bが一次独立であるとき、a1*b2-a2*b1≠0より、a1*b2≠a2*b1となる。 (II)a1*b2-a2*b1≠0のとき、ベクトル↑a,↑bが一次独立である事を証明するために、 対偶である「ベクトル↑a,↑bが一次従属であるとき、a1*b2-a2*b1=0となる。」ことを示す。 ベクトル↑a,↑bが一次従属であるとき、k*↑a+t*↑b=0・・・(*) について、少なくとも一つは0でない実数の組(k,t)が存在する。 すなわち、k≠0とするとき(*)は、↑a=-t/k*↑bとなる。 ここで、D=-t/kとおくと、↑a=D*↑bが成り立つ。 よって、(a1,a2)=D(b1,b2)=(Db1,Db2)よりa1=Db1,a2=Db2となり a1*b2-a2*b1=D*b1*b2-D*b2*b1=D(b1*b2-b2*b1)=0となる。 よって、ベクトル↑a,↑bが一次従属であるとき、a1*b2=a2*b1が成り立つ。 (I)(II)より、ベクトル↑a,↑bが一次独立となる為のa1,a2,b1,b2に関する条件はa1*b2-a2*b1≠0

  • 音圧でなく音圧レベルを使用する理由は

    「音圧レベル」について、Wikipediaでは次のように言っています。 「音圧レベル(おんあつレベル、英: sound pressure level)とは、音圧の大きさを、基準値との比の常用対数によって表現した量(レベル)である。単位はデシベル[dB]が用いられる。 可聴域にある音は同じ周波数であれば、音圧が大きいほど大きな音として認識される。また、音圧の単位は圧力を示す単位であるPa(パスカル)であるが、人間が認識しうる音の大きさの範囲は音圧の実値では広範囲にわたる。そこで、音響工学の分野では人間の聴覚特性に合わせ、音圧の大きさを基準となる値との比の常用対数によって表現される量(レベル)である音圧レベルを用いて表すことが多い。」 http://ja.wikipedia.org/wiki/%E9%9F%B3%E5%9C%A7%E3%83%AC%E3%83%99%E3%83%AB この意味がよく分からないのですが、なぜ、音圧(パスカル)を示すのに、音圧(パスカル)ではなく音圧レベル(デシベル)を使用するとしているのでしょうか? 詳しい方、できるだけ分かりやすく教えて下さい。

    • hatu99
    • 回答数3
  • DropDownListの初期値の設定(C#)

    DropDownListの初期値を設定する方法は、 何かありませんでしょうか? 車を一覧表示する画面(GridView)を作っております。 [メーカー][車種][カラー]をプルダウン選択して、 GridViewを絞り込みで一覧表示をします。 以下のような、 AutoPostBackでDBを取得して、連動したDropDownListを作りました。 ----------- ▼メーカー 1.TOYOTA 2.日産 3.SUZUKI 4.三菱 5.マツダ ----------- ▼車種(2.日産の場合) 1.リーフ 2.ティーダ 3.マーチ 4.セレナ ----------- ▼ボディカラー(1.リーフの場合) 1.白 2.黒 3.青 ここまではうまくできたのですが、この一覧画面を表示する際に、 ・ログインより日産の社員は、初期値として[日産]をデフォルト選択をしたい。 ・一度検索したプルダウンの値を、初期値としてデフォルト選択をしたい。 という事をしたいのです。 Sessionで値を保持してプルダウンのデフォルト値としたいのですが。 出来ません・・・ 何かいい方法はありませんでしょうか? AJAXを多用するなど方法は何でもよいのですが。 何かサンプルなどあればご紹介頂きたいです。 どうぞ宜しくお願い申し上げます。 ----------------------- Webアプリケーションです。 .Net Flamework4.0 C# Visual Basic 2010 SQL Server 2008 R2 -----------------------

  • デザインビューで作成したクエリの実行

    よろしくお願いします。 環境  WindowsXP  Access2003  VB2005 以下の内容でAccessの準備をしました。  1.AccessでテーブルA,Bを作成。  2.テーブルAから条件に合ったデータを抽出する選択クエリC作成  3.選択クエリCとテーブルBの差分クエリDを作成  4.差分クエリDをテーブルBに追加する追加クエリEを作成 その後VBで以下のコードを実行すると途中でエラーにもならず終了するのですが Accessを開いてみても追加クエリEが反映されていません。 Sub test()   Dim Cnn As New ADODB.Connection   Dim Cmd As New ADODB.Command   Cnn.Provider = "Microsoft.Jet.OLEDB.4.0"   Cnn.Open("\\ファイルサーバー名\DB.mdb")   Cmd.ActiveConnection = Cnn   Cmd.CommandText = "追加クエリE" ← 反映されていない   Cmd.Execute()   Cmd = Nothing   Cnn.Close() : Cnn = Nothing End Sub Accessから追加クエリEを実行すると正常に反映されているのでAccessの 設定は合っていると思います。 また追加クエリEをAccessからパススルーを開いてSQLを直接”追加クエリEにコピペしても うまく動いてくれません。(反映されない) 何が間違っているのかご指摘ください。 よろしくお願いします。

  • PHP4とpostgreSQLについて

    始めまして、私はi-mode用のランキングサイトを運営しております。 どなたかご回答いただけますと幸いです。どうぞよろしくお願いいたします。  昨年末、レンタルサーバーへ依頼しプログラムを作成し新たにPHP4より postgreSQLを呼び出す形でサイトをリニューアルしたのですが、サーバーが急に 重くなり正常な運営が困難な状態になっております。 サイトは現在TOPページ3万PV/日ほどでリニューアル前はこの倍はありました。 登録サイト数は380ほどです。 現在のサーバースペックですがCPUはP3の700M、メモリ768MBです。OSはLinux、 wwwサーバーはApacheです。 DBサーバーを別に用意すればよいと助言されたのですが、本当にそれでよいのか、なにかプログラム的に問題があるのではとも思いまして他の方のご意見も参考に したほうがよいと判断してご相談させていただいております。 私にはまだPHPとpostgreSQLの知識が浅くこのような情報でよいのかもわかりませ んがどうぞよろしくご回答くださいませ。 サイトURLは下記に記載いたします。 http://web-iranking.com/rank.php

    • 締切済み
    • CGI
    • jyoweb
    • 回答数2
  • 地デジ 映らないチャンネルがある

    宮城県です。民報4つ NHK2つ の計6つのTVチャンネルがあります。 添付画像のような配線になっているのですが 民報の1つだけが受信できづらいです。 1局だけが全ての部屋で映らない場合と 物置のTVでは全て受信できるのに 他の部屋では受信できない日もあります。 まったく、全ての部屋のTVで1局のみ映らない日があります。 数年前に設備した業者が倒産されたので別の業者に依頼をして みてもらっています。 地デジが4月より開始されたのでこのような事がおおくなりました。 Q1 2150 2655MHZとか関係あるのでしょうか。 Q2 ブースターの電源部と増幅部の距離などの関係? Q3 母屋での分配器    (2655MHZ~2150MHZへつないだ場合、2150MHZから出たdbの値が     極端にすべてのチャンネルで悪くなります。こんなに悪くなるものなのでしょうか?) Q4 廻りの住宅の方は問題なく受信できているようです。    我が家でだけの問題のようです。  なにか、アドバイスいただけると助かります。 よろしくお願いします。

    • shin2
    • 回答数5
  • zendframeworkを勉強中です。

    zendframeworkを勉強中です。 つい最近から勉強を始めました。 何とか思うような動作をさせる事はできてきたのですが根本的な事で悩んでおります。 アクションコントローラーの部分なのですが基本的に『init()』は大抵のファイルが共通になります。 ※例えばDBの接続やメンバ変数の設定など・・・ 具体的に今の私の見解は以下のようなイメージです。 class IndexController extends Zend_Controller_Action { public function init() { //大抵のファイルが共通なので何とかしたい } public function hogeAction() { //必要な処理 // fooActionと重複するようなソースであればmodelにclassファイルを作成 } public function fooAction() { //必要な処理 // hogeActionと重複するようなソースであればmodelにclassファイルを作成 } } 全く同様の関数を複数のファイルに作っても意味ないですしメンテも大変です。 参考書やマニュアルを見てもひたすら重複ソースを書くような内容しか見当たらなかったのですが 皆さんはどのような構成で構築されているのでしょうか? まだまだ理解が乏しいので、できるだけわかりやすく教えて頂けますと幸いです。 詳しい方がいらっしゃいましたらアドバイスを宜しくお願い致します。

    • ベストアンサー
    • PHP
    • dcx147
    • 回答数2
  • 【PHP】CSVファイル内の文字列をMySQLへ

    ■質問内容: 超初心者です。質問が的外れかもしれませんが自己解決できずにいます。何卒ご教授ください。 達成したい内容は 「PHPでCSVの内容をMySQLで既に作成されたテーブルへ登録したい」というものです。 ネットや書籍でCSVを読み込む方法や、テキストファイルを読み込む方法など試行してみましたが上手くいきません。 ■環境: php:ver5.2.6 MySQL:ver4.0.24 ホスティングサーバはロリポップです。 ■状況と経緯: ソースを交え直接的なご指摘いただけると、大変ありがたいです。 【aaa.csv】 091010-01,TO_001,'【内装】','ドアの取り付け' 091011-02,TO_002,'【外装】','タイル拭きつけ' ・・・・・ のようにカンマ区切りの4つの項目があります。 これを、PHPを介して、 MySQL/DB/ TABLE: day|ver|module|naiyou (|は区切り) 4つのフィールドへ上記のCSVファイルの左から順に格納したいのです。 ○結果的に、 day|ver|module|naiyou(|は区切り) 091010-01|TO_001|'【内装】'|'ドアの取り付け' 091011-02|TO_002|'【外装】'|'タイル拭きつけ' ・・・のようにしたいです。 --以上-- 上記について教えてください。 出来れば具体的な記述でご指摘いただけるか参考サイトをご紹介 下さるとありがたいです。 何卒、宜しくお願いいたします。

    • ベストアンサー
    • PHP
    • m_toma
    • 回答数3