PostgreSQL_7.0.2

テーブル(riyo_t)は ↓ で、

r_c | riyo
-----+--------
r_1 |犬
r_2 |猫

ラジオボタンは ↓ で、

<form method='POST' action='menu.php3'>
<input type=radio name=radio1 value="r_1">犬
<input type=radio name=radio1 value="r_2">猫
</form>

menu.php3 の SELECT文は ↓ としていますが、

$sql = "SELECT yoyaku_t.name as 名前 FROM riyo_t,yoyaku_t
where riyo_t.r_c = ". $radio1;

例えばラジオボタンの"猫"を選択すると
このようなエラーメッセージ ↓ が出ます。

Warning: PostgresSQL query failed: ERROR: Attribute 'r_2' not found in /usr/local/apache/htdocs/riyo.php3 on line 51

いろいろと試しているのですが、うまくできません。
宜しくお願い致します。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

>$sql = "SELECT yoyaku_t.name as 名前 FROM riyo_t,yoyaku_t where riyo_t.r_c = ". $radio1;



「ruyo_tとyoyaku_tというテーブルから、テーブルr_cのriyo_tが$radioである条件で・・・ん?」
テーブル名の後にさらにテーブル???
すみませんselectからfromの間って、どう解釈したらよいのですか?
二つのyoyaku_tは違う物なのでしょうか?
    • good
    • 0

こんばんは。



エラーから推測すると
r_2という変数が宣言されていない。というものだと思います。
r_cの属性はtextだと思うので、
where riyo_t.r_c = \'".$radio1."\'";
と'で$radio1を囲ったらだめですか?PHPは全然知らないんで、'をエスケープする必要があるかどうかはわかりませんが。。。

失礼しました。
    • good
    • 0
この回答へのお礼

アドバイスをありがとうございます。
試してみましたが、¥ がどうやらエラーになってしまいます。

お礼日時:2002/03/14 00:28

手元のPHPの書籍によれば、SQLの実行文の定義は


int pg_exe($connect_name,"SQL文");
とありますが。
PHP4の資料ではありますが、PHP3でも同様であると書いてあります。
    • good
    • 0
この回答へのお礼

例えば、
<input type=radio name=radio1 value="r_1">犬 の、
value="r_1" を value="r_c"
にすると、とりあえず表は出て来るのすが。
これでは使えませんからねぇ。

ありがとうございました。

お礼日時:2002/03/14 00:27

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QAccessVBA 実行時エラー'2766'について質問です。

AccessVBA 実行時エラー'2766'について質問です。

このオブジェクトには、オートメーションオブジェクト'レコードセット'は含まれません。

のエラーが出て困っています。
発生タイミングはフォームで4箇所以上の条件で検索した際に発生してます。
SQLに問題がありそうなのですが、SELECT~FROM文に続けて
WhereSQL = "WHERE List.DeleteCheck <> True "
WhereSQL = WhereSQL & "AND MCate = '" & ![txtFindMachineCate].Column(1) & "' "
WhereSQL = WhereSQL & "AND PName LIKE '%" & ![txtFindProductName] & "%'"
などテキストボックスに入力されているかをIF文でチェックして、
WHERE文をANDで結合しています。(AND文合計30個)
ただし、4個ほどテキストボックスやコンボボックスを選択して検索すると、エラーがでます。

上記の後に、ORDER BY句を結合しています。
SubFormSQL = SubFormSQL & "ORDER BY PNum;"

エラーのタイミングは上記の通りで、どのテキストボックスで起こるかは決まっていません。

何が原因しているのか、さっぱりで大変困っています。
アドバイスよろしくお願いいたします。m(_ _)m

AccessVBA 実行時エラー'2766'について質問です。

このオブジェクトには、オートメーションオブジェクト'レコードセット'は含まれません。

のエラーが出て困っています。
発生タイミングはフォームで4箇所以上の条件で検索した際に発生してます。
SQLに問題がありそうなのですが、SELECT~FROM文に続けて
WhereSQL = "WHERE List.DeleteCheck <> True "
WhereSQL = WhereSQL & "AND MCate = '" & ![txtFindMachineCate].Column(1) & "' "
WhereSQL = WhereSQL & "AND PName LIKE '%" & ![txtFindProductName] & ...続きを読む

Aベストアンサー

連結し生成しているので、空白区切りが要るのにない、シングルコーテーションが片方しかない、こういう観点でSQLが正しいかから探るというのはやりましたか。

QAccess_VBA_記述方法

AccessVBAの記述方法で悩んでいます。
複数のテーブルを順読みして、レコードの更新/追加/削除のプログラムを作成していますが、順読みなので何も入っていないテーブルのレコードも読みに行ってしまいデバックとして出てしまいます。
EOFやNULLをどうにかして判断条件として記述してみましたが、やはり上手くいきませんでした。
レコードでの判断条件では無く、テーブル内にレコードが存在するかどうかという判断文と条件文の記述方法がありましたら、どうか教えて下さい。
宜しくお願い致します。

Aベストアンサー

○案1
Dim cnt
cnt = Dcount("*", "[テーブル名]")
If cnt > 0 Then
' レコードがあるテーブルになにかする
End If

とDcount関数を使えばどうでしょうか。

○案2
また複数のテーブルが同じフィールドを含むならば
ユニオンクエリで1つのテーブルにしてから扱うことも
簡単だと思います。

QAccessのサブフォームで#Nameエラーについて

こんにちはいつもお世話になります。
Accessで教えてください。
Accessのフォームで大分類・中分類・小分類・割引率という項目を作り、メインフォームで大分類と中分類を選択してサブフォームで小分類を選択すると割引率が隣に表示されるようにしたいのです。
1つのテーブル内に全部項目が収まっているので、クエリで抽出区分に各フォームのテキスト名を指定してパラメータにしてやってみたところなぜかわかりませんが、クエリを実行すると小分類のパラメータが開いてしまいます。
SQLは「SELECT テーブル1.SUP, テーブル1.カテゴリ, テーブル1.タイプ, テーブル1.標準値引率
FROM テーブル1
WHERE (((テーブル1.SUP)=[Forms]![算出用]![SUP]) AND ((テーブル1.カテゴリ)=[Forms]![算出用]![カテゴリ]) AND ((テーブル1.タイプ)=[Forms]![割引率]![タイプ]));です。
そして、フォーム内には、割引率のコントロールソースとして「=test!割引率」と入れています。すると、フォームのテキストで#Nameエラーが出てます。すみませんどうしても何が違っているのだか分からなくて教えていただけると助かります。

こんにちはいつもお世話になります。
Accessで教えてください。
Accessのフォームで大分類・中分類・小分類・割引率という項目を作り、メインフォームで大分類と中分類を選択してサブフォームで小分類を選択すると割引率が隣に表示されるようにしたいのです。
1つのテーブル内に全部項目が収まっているので、クエリで抽出区分に各フォームのテキスト名を指定してパラメータにしてやってみたところなぜかわかりませんが、クエリを実行すると小分類のパラメータが開いてしまいます。
SQLは「SELECT テーブル1.S...続きを読む

Aベストアンサー

こんにちは、ats8181oyajiです

サプフォームのフィルタを使う方法が
簡単ではないでしょうか?

また、VBAが組めるのなら、画面の項目で
テーブルをselectして割引率を取得する
方法もあります。

なんか、難しく作りすぎているように
思いますが。

Qアクセスで挿入時のVALUES以下にSelectは使用できますか?

VBでアクセスに対し以下のようなSQL文を発行していますが構文エラーとなりますValues以下にSelectは使用できないのでしょうか?

StrSQL_1 = _
 "insert into 行先 (社員ID, 行先, 帰社予定時刻, 備考)" & _
 "VALUES (select 社員ID from 社員 where 社員名 = '"& IP_a & "', " & _
 " '" & IP_b & "','" & IP_c & "','" & IP_d & "')"

したい処理は行先テーブルに社員ID、行先(変数IP_bが対応)、帰社予定時刻(変数IP_cが対応)、備考(変数IP_dが対応)を格納したいのですが,社員IDについては入力された社員名である変数IP_aと合致する社員名を社員テーブルから検索して取得した社員IDとしたいのですが・・・。

insert into ・・・ select などいろいろ試してみたのですがうまくいきません。

上記の処理を実現する方法を教えていただけないでしょうか

Aベストアンサー

StrSQL_1 = _
"insert into 行先 (社員ID, 行先, 帰社予定時刻, 備考)" & _
"select 社員ID,'" & IP_b & "','" & IP_c & "','" & IP_d & "' " & _
"from 社員 where 社員名 = '"& IP_a & "'"
でいかがでしょう。

QINSERT INTO table(DATE) VALUES('20090101')ができません。

初めましてご教授よろしくお願いします。

Accessにレコードを追加しようとしているのですがうまくいきません。

どうもDATEというフィールドにテキスト型の'20090101'を入れようとするのがいけないみたいです。

予約語だからDATEのフィールド名を変えた方がいいことはわかっているのですが、お客様がテーブルを作成しているので変更することができません。

お客様いわくテキスト型で入るというのですがどうすれば入るのでしょうか?

ちなみにDATEフィールドはテキスト型です。

エラー内容は「INSERT INTO ステートメントの構文エラーです。」と表示されます。

Aベストアンサー

INSERT INTO table(DATE) VALUES('20090101')

INSERT INTO table([DATE]) VALUES('20090101')
にしてみてください。


人気Q&Aランキング

おすすめ情報