teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

3

2017/10/26 08:46

投稿

nana_77
nana_77

スコア6

title CHANGED
File without changes
body CHANGED
@@ -2,128 +2,13 @@
2
2
 
3
3
  現在、投稿サイトを作っています
4
4
  掲示板のように投稿された内容を表示して、一つの投稿文にたいして返信できるようにしたいと考えています。
5
- 作るにあたってsqlを使用して、投稿文と返信をつなげるために自然結合を使っています。ですが、その前に値データベースに入りません。
5
+ ですが、その前に値データベースに入りません。
6
6
 
7
7
  初心者で拙い文章ですが、回答お待ちしております
8
8
  ##該当のソースコード
9
9
 
10
- ```
10
+ ``
11
- #!/usr/bin/perl
12
11
 
13
-
14
-
15
- use CGI;
16
- use Jcode;
17
- use Pg;
18
-
19
-
20
- $q=new CGI;
21
-
22
-
23
- $conn=Pg::connectdb('dbname= user= password= host=localhost');
24
-
25
- if ($q->param('name')){
26
- $name=$q->param('name');
27
- }
28
- if ($q->param('gender')){
29
- $gender=$q->param('gender');
30
- }
31
- if ($q->param('kankei')){
32
- $kankei=$q->param('kankei');
33
- }
34
- if ($q->param('situ')){
35
- $situ=$q->param('situ');
36
- }
37
- if ($q->param('comment')){
38
- $comment=$q->param('comment');
39
- }
40
-
41
- if ($name){}
42
- else{$name='unknown';}
43
- if ($kankei){}
44
- else{$kankei='unknown';}
45
- if ($situ){}
46
- else{$situ='unknown';}
47
- if ($comment){}
48
- else{$comment='unknown';}
49
- $sql="insert into Pupload(name,gender,kankei,situ,comment)
50
- values ('" . $name . "','".$gender."','".$kankei."','".$situ."','".$comment."');";
51
- Jcode::convert($sql,'utf8');
52
- $conn->exec($sql);
53
-
54
- if ($q->param('PPname')){
55
- $PPname=$q->param('PPname');
56
- }
57
- if ($q->param('PP')){
58
- $PP=$q->param('PP');
59
- }
60
- $sql2="insert into PP(PPname,PP)
61
- values ('" . $PPname . "','".$PP."'');";
62
- Jcode::convert($sql2,'utf8');
63
- $conn->exec($sql2);
64
-
65
-
66
- print <<"END_T1";
67
- Content-type: text/html; charset=UTF-8
68
-
69
-
70
- <html>
71
- <head>
72
- <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
73
- <title>***</title>
74
- </head>
75
- <body>
76
- <h1>***</h1>
77
-
78
-
79
- END_T1
80
- print "<div class = resulst>\n";
81
- # 投稿された文をだします
82
- # cssで装飾してください。
83
- $sql="select * from Pupload NATURAL JOIN PP; ";
84
- $res=$conn->exec($sql);
85
- if ($res->ntuples==0){print "No results.";}
86
- else{
87
- for ($i=0;$i<$res->ntuples;$i++){
88
- $tmp= $res->getvalue($i,1);
89
- $tmp1=$res->getvalue($i,2);
90
- $tmp2=$res->getvalue($i,3);
91
- $tmp3=$res->getvalue($i,4);
92
- $tmp4=$res->getvalue($i,5);
93
- $tmp5=$res->getvalue($i,7);
94
- $tmp6=$res->getvalue($i,8);
95
-
96
- print <<"PT"
97
- <div class="PT">
98
- 名前: $tmp<br>
99
- 性別: $tmp1<br> 
100
- 関係性: $tmp2<br>
101
- シチュエーション: $tmp3<br>
102
- コメント: $tmp4<br>
103
- </div>
104
- <hr>
105
-
106
- <!--t提案のためのフォームです-->
107
- <div class="PPT">
108
- <form method="post" enctype="multipart/form-data" action="./present3.cgi">
109
- name:<input type="text" name="PPname"><br>
110
- present:<input type="text" name="PP"><br>
111
- <input type="submit" value="提案する!"><br>
112
- </div>
113
- $tmp5
114
- $tmp6
115
- PT
116
- }
117
- }
118
-
119
-
120
-
121
- print "</div>\n";
122
- print "</body>\n";
123
- print "</html>\n";
124
-
125
- exit 0;
126
-
127
12
  ```
128
13
 
129
14
 

2

2017/10/26 08:46

投稿

nana_77
nana_77

スコア6

title CHANGED
@@ -1,1 +1,1 @@
1
- 返信機能について教えてください
1
+ データベース値を入れる方法について
body CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  現在、投稿サイトを作っています
4
4
  掲示板のように投稿された内容を表示して、一つの投稿文にたいして返信できるようにしたいと考えています。
5
- 作るにあたってsqlを使用して、投稿文と返信をつなげるために自然結合を使おうと思っています。自然結合を使用る場合書き方を教えてください
5
+ 作るにあたってsqlを使用して、投稿文と返信をつなげるために自然結合を使っています。が、そ前に値データベースに入りません
6
6
 
7
7
  初心者で拙い文章ですが、回答お待ちしております
8
8
  ##該当のソースコード
@@ -10,10 +10,8 @@
10
10
  ```
11
11
  #!/usr/bin/perl
12
12
 
13
- # できないこと
14
- # 提案内容がデータベースに入らない
15
- # NO,resultが投稿された内容の1番下にしか表示されない
16
13
 
14
+
17
15
  use CGI;
18
16
  use Jcode;
19
17
  use Pg;

1

自然結合を使うことにしたため

2017/10/25 21:40

投稿

nana_77
nana_77

スコア6

title CHANGED
@@ -1,1 +1,1 @@
1
- レス機能について教えてください
1
+ 返信機能について教えてください
body CHANGED
@@ -2,15 +2,18 @@
2
2
 
3
3
  現在、投稿サイトを作っています
4
4
  掲示板のように投稿された内容を表示して、一つの投稿文にたいして返信できるようにしたいと考えています。
5
- 作るにあたってレス機能についてわかりません
5
+ 作るにあたってsqlを使用して、投稿文と返信をなげるために自然結合を使おうと思ってます。自然結合を使用する場合の書き方を教えてください
6
- どなたかわかりやすく教えていただきたいです、、、
6
+
7
- また、どのようなものを使って学習するのでしょうか
8
7
  初心者で拙い文章ですが、回答お待ちしております
9
8
  ##該当のソースコード
10
9
 
11
10
  ```
12
11
  #!/usr/bin/perl
13
12
 
13
+ # できないこと
14
+ # 提案内容がデータベースに入らない
15
+ # NO,resultが投稿された内容の1番下にしか表示されない
16
+
14
17
  use CGI;
15
18
  use Jcode;
16
19
  use Pg;
@@ -50,7 +53,18 @@
50
53
  Jcode::convert($sql,'utf8');
51
54
  $conn->exec($sql);
52
55
 
56
+ if ($q->param('PPname')){
57
+ $PPname=$q->param('PPname');
58
+ }
59
+ if ($q->param('PP')){
60
+ $PP=$q->param('PP');
61
+ }
62
+ $sql2="insert into PP(PPname,PP)
63
+ values ('" . $PPname . "','".$PP."'');";
64
+ Jcode::convert($sql2,'utf8');
65
+ $conn->exec($sql2);
53
66
 
67
+
54
68
  print <<"END_T1";
55
69
  Content-type: text/html; charset=UTF-8
56
70
 
@@ -67,9 +81,9 @@
67
81
  END_T1
68
82
  print "<div class = resulst>\n";
69
83
  # 投稿された文をだします
84
+ # cssで装飾してください。
70
- $sql="select * from Pupload order by Pid DESC;";
85
+ $sql="select * from Pupload NATURAL JOIN PP; ";
71
86
  $res=$conn->exec($sql);
72
-
73
87
  if ($res->ntuples==0){print "No results.";}
74
88
  else{
75
89
  for ($i=0;$i<$res->ntuples;$i++){
@@ -78,25 +92,28 @@
78
92
  $tmp2=$res->getvalue($i,3);
79
93
  $tmp3=$res->getvalue($i,4);
80
94
  $tmp4=$res->getvalue($i,5);
95
+ $tmp5=$res->getvalue($i,7);
96
+ $tmp6=$res->getvalue($i,8);
81
97
 
82
98
  print <<"PT"
83
99
  <div class="PT">
84
- $tmp<br>
100
+ 名前: $tmp<br>
85
- $tmp1<br> 
101
+ 性別: $tmp1<br> 
86
- $tmp2<br>
102
+ 関係性: $tmp2<br>
87
- $tmp3<br>
103
+ シチュエーション: $tmp3<br>
88
- $tmp4<br>
104
+ コメント: $tmp4<br>
89
105
  </div>
90
106
  <hr>
91
107
 
92
- <!--返信のためのフォームです-->
108
+ <!--t提案のためのフォームです-->
93
109
  <div class="PPT">
94
- <form method="post" enctype="multipart/form-data" action="./***.cgi">
110
+ <form method="post" enctype="multipart/form-data" action="./present3.cgi">
95
111
  name:<input type="text" name="PPname"><br>
96
- <input type="text" name="PP"><br>
112
+ present:<input type="text" name="PP"><br>
97
113
  <input type="submit" value="提案する!"><br>
98
114
  </div>
99
-
115
+ $tmp5
116
+ $tmp6
100
117
  PT
101
118
  }
102
119
  }
@@ -114,8 +131,7 @@
114
131
 
115
132
 
116
133
  ###試したこと
117
- データベースに$PPname,$PPをいれて、表示させようとしましたがデータベースに入らず、、、
134
+ データベースにいれて、表示させようとしましたがデータベースに入りませんでした。
118
- 勉強不足です
119
135
 
120
136
  ###補足情報(言語/FW/ツール等のバージョンなど)
121
137
  perlをつかいました