検索結果
DB
- 全てのカテゴリ
- 全ての質問
- phpでMysqlに接続し掲示板を作りたいのですが
質問させて頂きます。 ご存じの方がおられましたらご享受くださいませ。 phpをつかって MySQLに接続し掲示板を作ろうとしていますが 参考書に書いてある通りに書きましたが動きません。 どこか記載がおかしいのでしょうか… SQL初心者で完全にハマっております。 ご存じの方がおられましたら是非教えてくださいませ。 宜しくお願いいします!! ※接続はできています。 多分インサートあたりが反応していません。 プレペアドステートメントが変なのかな? <?php include("../header.php");?> <?php $savepath = dirname(_FILE_).'/chatlog.db'; $script_name = $_SERVER["SCRIPT_NAME"]; $dsn = 'mysql:dbname=DB名;host=ホスト'; $user = 'ユーザ名'; $password = 'パスワード'; try { $dbh = new PDO($dsn, $user, $password); echo 'MySQL DataBase と接続しました。'; $dbh->query('SET NAMES utf8'); } catch (PDOException $e) { echo 'データベースに接続できません。'.$e->getMessage(); } $create_query = <<< _SQL_ CREATE TABLE IF NOT EXISTS chatlog ( log_id INTEGER PRIMARY KEY, name TEXT, body TEXT, ctime INTEGER ); _SQL_; $db->exec($create_query); if (isset($_GET["name"]) && isset($_GET["body"])) { if ($_GET["name"] == "" || $_GET["body"] == "" ) { echo "<p>名前と本文は必ず入力してください。</p>";exit; } $template = "INSERT INTO chatlog (name,body,ctime)". "VALUES(?,?,?);"; $stmt = $db->prepare($template); $stmt->execute(array($_GET["name"],$_GET["body"],time())); header("location: $script_name"); exit; } echo <<< _FORM_ <h3>チャット</h3> <form action="$script_name" method="GET"> 名前:<input type="text" name="name" size="8" /> 本文:<input type="text" name="body" size="40" /> <input type="submit" value="書込" /> </form> _FORM_; $select_query = "SELECT * FORM chatlog ORDER BY log_id DESC"; $stmt = $db->query($select_query); foreach ($stmt as $row) { $name = htmlspecialchars($row["name"]); $body = htmlspecialchars($row["body"]); $ctime = date("H:i:s", $row["ctime"]); echo "($ctime) $name > $body"; } ?> <?php include("../footer.php");?>
- mysqlのデータを変数に代入する方法
php/mysql初心者です。かなりつたない内容になっているかもしれませんが、ご容赦ください。 過去ログで何のワードで検索したらいいかもわからなかったので質問投稿させていただきます。 データベースに入っている情報を変数に代入して POSTメソッドで送信したいと考えています。 DBからSELECTで特定の情報を取り出す ↓ 変数に代入する ↓ POSTで送信 このような流れで処理したいです。 [環境] PHP 5.2.17 MySQL 5.1.59 今書いているソースを一部抜粋します。 ------------ <?php if ($_SERVER['REQUEST_METHOD']=="POST") { require_once "Request.php"; $req =& new HTTP_Request("【送信先URL】"); $req->setMethod(HTTP_REQUEST_METHOD_POST); $connect = mysql_connect('localhost', '【DB名】', '【パスワード】'); if (!$con) { exit('データベースに接続できませんでした。'); } $result = mysql_select_db('【データベース名】', $connect); if (!$result) { exit('データベースを選択できませんでした。'); } $db = mysql_query('SELECT username FROM userinfo where id=6', $connect); $u="$db"; $req->addPostData("username", $u); $con = mysql_close($con); if (!$con) { exit('データベースとの接続を閉じられませんでした。'); } ?> ------------ ※idが6のusernameは「テスト太郎」になっています。 上記のPHPを実行すれば"userinfo"テーブル内の"id"が6の"username"が 送信されると思いましたが、実際は異なる内容が送信されます。 送信されるデータはusernameの内容ではなく "Resource data"となっています。 なぜ$uに代入した値がResource dataという内容になるのでしょうか。 初歩的な質問かもしれませんが、 ご教示の程よろしくお願いいたします。
- ベストアンサー
- MySQL
- midorinodonchan
- 回答数2
- 結合テーブルクエリPrimaryKey取得について
自己解決できず、どなたかお助けくださいませ。 環境:OS/Win7 ACCESS2010 やりたいことは、結合テーブルのクエリからPrimaryKeyを取得したいのです。 次の2つのテーブルと2つのフィールドを作成したとします。 Tbl_a.Fld_ID / Tbl_a.Fld_Name Tbl_b.Fld.ID / Tbl_b.Fld_Sex ※どちらも Fld_ID フィールド を PrimaryKey 名でINDEX設定します。 ACCESSに次のクエリを作成したとします。 SELECT Tbl_a.Fld_ID, Tbl_a.Fld_Name, Tbl_b.Sex FROM Tbl_a INNER JOIN Tbl_b ON Tbl_a.ID = Tbl_b.ID クエリ名:Q_AandB 次のVBAを作成したとします。 ※引数 VR には10万件の2次元配列 0:ID 1:氏名 2:性別 が入っている Public Sub UpdateExe(Byval VR As Variant) Dim DB As DAO.Database: Set DB = CurrentDB Dim RS As DAO.Recordset: Set RS = DB.OpenRecordset("Q_AandB") Dim Z As Long With RS For Z = 0 To UBound(VR) .Index = "PrimaryKey" ← ここでエラーが出ます。 .Seek "=", VR(Z,1) IF .NoMatch Then .AddNew !Fld_ID = VR(Z,0) 'ID !Fld_Name = VR(Z,1) '氏名 !Fld_Sex = VR(Z,2) '性別 .Update Else .Edit !Fld_ID = VR(Z,0) 'ID !Fld_Name = VR(Z,1) '氏名 !Fld_Sex = VR(Z,2) '性別 .Update End If Next Z .RS.Close End With Set RS = Nothing DB.Close: Set DB = Nothing End Sub これを実行すると、「実行エラー'3251': この操作は、このタイプのオブジェクトには 実行できません。」 とのエラーで弾かれてしまいました。 結合テーブルでのプライマリキーの取得がわからず困っております。 以上、何卒よろしくお願い申し上げます。
- ベストアンサー
- オフィス系ソフト
- hoihoi_book
- 回答数1
- FLASHとの連携について
FLASHに値を渡すためPHPを書いていますが行き詰ってしましました。 下の文面の $messeid = ?; echo "&res1=".$messeid."&"; の$messeidに<?=$rs['id']?>の値を代入したいのですが出来ません。 ブラウザで確認するとテーブルに値がちゃんと入って表示されますし $messeid = 1; とするとFLASH側で1と表示されますのでデータベース、FLASHともに通信は出来ているようです。 (xx)/~何卒ご指導お願いいたします。 <?php require_once("DB.php"); $dbUser = "Youser"; // ユーザー名 $dbPass = "Pass"; // パスワード $dbHost = "localhost"; // ホスト名 $dbName = "Database"; // データベース名 $dbType = "mysql"; // データベースの種類 $dsn = "$dbType://$dbUser:$dbPass@$dbHost/$dbName"; // データベースに接続 $conn = DB::connect($dsn); // 接続に失敗したらメッセージを表示して終了します。 if (DB::isError($conn)){ die($conn->getMessage()); } // POSTされたデータを受け取り、エスケープします。 $s_designid = addslashes($_POST['search_designid']); $s_newpass = addslashes($_POST['search_newpass']); $sql = <<<EOS SELECT * FROM passkanri where back_pass = '$s_designid' and new_pass = '$s_newpass'; EOS; //この$messeidにデータベースから得た値を代入したい $messeid = <?=$rs['id']?>; echo "&res1=".$messeid."&"; // SQL文を発行 $result = $conn->query($sql); if (DB::isError($result)) { die ($result->getMessage()); } // 検索件数の表示 $count = $result->numRows(); print "検索結果は" . $count . "件です。<BR>"; if($count > 0){ ?> <TABLE width="450" border="1" cellspacing="0" cellpadding="8"> <TBODY> <TR><TH>ID</TH><TH>DESIGN_ID</TH><TH>BACK_PASS</TH><TH>NEW_PASS</TH></TR> <?php while ($rs = $result->fetchRow(DB_FETCHMODE_ASSOC)) { mysql_query("set names utf8"); ?> <TR> <TD align="center"><?=$rs['id']?></TD> <TD align="center"><?=$rs['design_id']?></TD> <TD align="center"><?=$rs['back_pass']?></TD> <TD align="center"><?=$rs['new_pass']?></TD> <?php } ?> </TBODY></TABLE> <?php } $result->free(); $conn->disconne ?>
- 締切済み
- PHP
- kohkun2008
- 回答数1
- JavascriptでOpenOffice Baseに接続したいです。
初めて質問させて頂きます。 私はWeb初心者ですので、文脈に不備/不足が予想されるので出来る限り状況を 説明させて頂きますので、宜しくお願い致します。 (HTML,CSS,Excel VBA,PHP,MySQLなどを、ちょびっとずつかじっております。) 現在、下記HPを参考にファイル共有サーバーで動くDBを作ろうとしています。 http://java-script.seesaa.net/category/3196594-1.html 【質問】 ・JavascriptでOpenOffice Baseに接続するにはどのようにしたら良いのでしょうか? 【経緯】 ・会社で、Max時40人がアクセスするDBを作りたい。(DBからの抽出データを分析する、二次的なDBです。) ・やりたい操作は、データ閲覧(検索/ソートのみ)、データ件数(行):5000-10000,カラム数(?、列):10-20,各クライアントからの入力はしません。 ・環境として、ファイル共有サーバ(Buffalo Terastation)がイントラ(?)ネットワーク上にある。 ・PHP+MySQL等サーバサイドのプログラムは使えないとのこと。 ・各クライアントPCにはWinXP SP2, MS Accessがインストール済。 ・PCに不慣れなユーザーも含むのでAccessDBに直接触れて欲しくない。 ・では、クライアントサイドで動作するJavaScriptで間接的に AccessDBにアクセスしてもらえば良いのではないか。 ・自宅PCで上記DBを勉強したい。(MS Word,Excel,PPTのみインストール済) ・MS Accessの代わりにOO Baseで勉強できないかな。 長くなりましたが、上記の経緯でこの質問に至りました。 Javascriptには負荷が大き過ぎるか否かもわかりません。 もっと、効率的な方法があるよ、こんな良書があるよ、といったアドバイスもありましたら 大変、助かります。
- ベストアンサー
- その他(データベース)
- noname#123490
- 回答数2
- IEでの文字化け(?)について
いつもお世話になります。 IE(6.0.29)で文字化けらしきことが起こり、行き詰ってしまいました。 申し訳ございませんが、対策方法等、ご教授お願いいたします。 状況は以下の通りです。(複雑です。すみません。) BDから値を読み出して、表示させようとしています。 いままでは問題なかったのですが、下記のような文字列で試してみたところ、 文字化けしてしまいました。(FireFoxでは問題ありません) ソースコードを見ると、さらにひどい文字化けが起こっていました。 あと、DBの値を例えば、"[至急です]"の部分を"[至急]"に変更すると、文字化けが収まります。 また、下記のソースにDBの値をコピ&ペーストで貼り付けて表示させると、文字化けは起こりません。 以上、カテゴリ違いかもしれませんが、よろしくお願いいたします。 (情報が足りなければ、教えてください。UPします。) 【コード】 <?php $sql = "SELECT title FROM hoge WHERE no = 1"; $rst = mysql_db_query(DB_NAME, $sql, $con); $col = mysql_fetch_array($rst); $title = $col['title']; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta http-equiv="Content-Style-Type" content="text/css"> </head> <body> <h1><?= $title ?></h1> </body> </html> 【DBの値】 [至急です]テキストは左寄せ、画像は右下に? 【画面に表示される内容】 [至急です]テキストは左寄せ、画像は右下にOh1> 【ソース】 <h1>[閾ウ諤・縺ァ縺兢繝・く繧ケ繝医・蟾ヲ蟇・○縲∫判蜒上・蜿ウ荳九↓・/h1>
- MySQL の設定で行き詰っております・・・。
こんにちは。 ある海外のフリーソフトをサーバーにインストールしようとして、行き詰っております。宜しくお願い致します。 そのソフトは、MySQLのデータベースを必要とします。 私は今までMySQLのデータベースを使った事はあるのですが、データベースさえ作ればその他は自動的にやってくれるものばかりだったので、今回手動(?)で分からなくなっております。インストールの説明文に次のようにあります。[5]までは済ませています。 ----------------------------------------------- [5] Create the mysql database (usually tinylink) with mysqladmin. mysqladmin -u<your_mysql_user> -p<your_mysql_pass> create tinylink (tinylink というのはソフトの名前なので、データベースの名前も通常その名前だという説明だと思います。mysql admin を使ってここまではできました。) [6] Create the mysql tables. You have 2 options : 1) mysql -u<your_mysql_user> -p<your_mysql_pass> tinylink < db_structure.sql 2) use phpMyAdmin to run the SQL file 'sql/db_structure.sql' ここがわかりません。(1)でも(2)でも良い、という事なのですが、(1)は私には意味が不明です。(特に tinylink < db_structure.sql の部分が不明) (2)はphpMyadminを使って、テーブルの作成に次のファイル('sql/db_structure.sql')を実行するように設定してね、という意味だと思うのですが、phpMyAdminのどの部分でファイルを実行するように設定できるのかが不明です。 "db_structure.sql'"ファイル自体はすでにアップロードしてあるのですが・・・。 なにぶん分かっていない事が多いのでちんぷんかんぷんな事を言っているかも分かりませんが、どうぞお手柔らかに宜しくお願い致します。
- ベストアンサー
- MySQL
- realslimshady
- 回答数1
- DataGridの行番号
クライアント:Windows2000 Professional VB.net 2003 .net初心者です。 .net標準のDataGridコントロールにDB(Oracle)より取得したデータを表示させようとしております。 その際に、DBの項目のほかに、行番号を「1」から順に昇順で振っていきたいと思っております。 プロパティの設定で出来るものと思っておりましたが、どうもそうでないようで、実現の方法をご存知の方、いらっしゃいましたら、宜しくご教授お願いします。
- ベストアンサー
- Visual Basic
- kaki3
- 回答数3
- PostgreSQLのクラスタ運用について
毎度お世話になっております。 今回はお客さまがOracleが高価で予算が取れないとの事で、9i+Veritas Cluster Serverで実現していた2台のサーバから共有ディスク上のDBにアクセスする方法を模索しております。 ACT-ACT構成で2台のサーバから共有ディスク上のDB(PostgreSQL)に具体的にアクセスするにはどのようなソフトウェア構成にしたら良いかご教示願います。 よろしくお願いします。
- ベストアンサー
- PostgreSQL
- kagemarurx
- 回答数4
- サーブレットでデータベースの件数を取得する方法がわからなくて困っています
サーブレットでデータベースの件数を取得する方法がわからなくて困っています。 dborder_tranテーブルの DB_ordernumber フィールドの件数を取得したいです。 以下の方法では COUNTというフィールドはないので取得できないです。 しかし、while(rs.next()) にカウンタを付けて取得するのも効率が悪いように思います。 何か良い方法はありませんか? qry = "SELECT COUNT(*) FROM dborder_tran"; rs = st.executeQuery(qry); Integer ordernumber = Integer.valueOf((rs.getInt("DB_ordernumber") + 1));
- バックアップの復元
早速ご教示ください。 例えば、テーブルA,テーブルB,テーブルC・・・・テーブルZまでテーブルがあるデータベース(TEST_db)があるとします。 【流れ】 (1)TEST_dbの完全データベースバックアップをとります。 (2)テーブルC~テーブルFをDELETE FROM文で削除します。 (3)上記(1)でとったバックアップファイルから(2)で削除したテーブルC~F を復元できますでしょうか? できるのであれば、その方法を、できないのであればなにか提案を宜 しくお願い致します。
- ベストアンサー
- SQL Server
- runathicku
- 回答数4
- PHPでデータベース
お世話になっております。 PHPを使い入力フォームを作り、フォームに入力した内容をDBに書き込むようにしたいです。 DBにはEXCELかMySQLを検討しています。 また、ドロップダウンで項目が選択でき、内容も参照できるように(過去ログの様な機能や、グラフの作成)もしたいと思っています。 この様な機能を実現できるような、サイトやツールがあればご教授頂ければと思います。 よろしくお願いします。
- ResultSetのクローズについて
下記のURLの質問で、アクションクラスと、DB接続クラスは分けるのが普通だということは分かりましたが、 そうなると、ResultSetとか、Connectionとかのクローズのタイミングが、いまいち分かりません。 イメージ的には、そのDB接続クラス内でクローズするのが正しいとは思うのですが・・・。 でも、そうすると、取得した結果を呼び出したアクションクラスに渡せない・・・。 どうすれば、いいのでしょうか? http://okwave.jp/qa/q6345240.html
- Lag関数はないのでしょうか?
SQLServer2005を使用しています。 OracleでいうところのLag関数とおなじような関数は、SQLServerにはないのでしょうか? オラクルと同じようにSQLを書くと、「組込関数ではない」とエラーが出てしまいます。 自分で調べて、以下のURLのように記述してみると、今度は「Rows付近に不適切な構文があります。」と言われてしまいます。。。 http://oraclesqlpuzzle.hp.infoseek.co.jp/db2/db2-8-1.html SQLServerでは、実現できないのでしょうか?
- 締切済み
- SQL Server
- osaru_kun
- 回答数2
- Ruby on Rails でプルダウン
Ruby on Rails でプルダウンを使ったページを作ってます。 プルダウンを選択すると、別のプルダウンの内容が変更されるというものです。 それ自体はjavascriptを使えばできるのですが、プルダウンの内容はDBに保存されてあるものから引っ張って使いたいと思ってます。 javascriptではDBの内容は引っ張ってこれないと思うのですが、 Railsでこういうことができるのでしょうか。 よろしくお願いします。
- ベストアンサー
- Ruby
- arumitsuku
- 回答数2
- チェックボックスをビット演算子で処理したい
チェックボックスをビット演算子で処理したいのですが、DBに格納した数値をビット演算子で処理する方法がわかりません。 たとえば、北海道から沖縄までのチェックボックスを作成してそれぞれに 1,2,4,8,16,32・・・とvalueを持たせます。 DBには数値の和を入れておきます。 その値を分解してチェックボックスをcheckedにしたいです。 ちょっとわからなくなってしまって。 教えてください、。よろしくお願いします。
- .htaccessは削除できないのですか?
さくらインターネットに、MTを設置しようとしています。 マニュアルによると .htaccessをdbファイルの中に設置しなければいけなかったのに、 間違えて外に設置してしまいました。 変更しようにも、1度設置したものは動かないようなのですが (ネットで検索したところ)・・・。 このあと、どうするのが最善の策でしょうか? ・このままdbファイルの中にも.htaccessを作っても大丈夫でしょうか?何か影響はありますか?
- 配列の初歩
初めてのプログラミングのため、初歩的な質問で申し訳ございません。 PHP+MYSQLに挑戦していますが、 複数の値を配列(これがわかりません)を使って、レコードを増やすやり方がわかりません。 $area = 5; $area2 = 6; $sql = "insert into t1 (number,number2) values ('.$area.','.$area2.')"; $res = mysql_db_query($db,$sql); なら、レコードを増やすことができましたが、これを配列(5,6)を使ってやるにはどうしたらよいのでしょうか。何卒よろしくお願いします。
- phpMyAdminのユーザーについて
MySQL5.0を使っていてphpMyAdminを使って操作などをしているのですが、ログインした際に他のDBもアクセスが可能な状態なのですが、ユーザーに対してアクセスできるDBを制限したい場合はどうしたらいいのでしょうか?