質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

0回答

1241閲覧

INSERT INTOでフォームから受け取った値を追加できない。

Tikka123456

総合スコア34

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2020/03/30 00:19

Nodeを使ってformタグで入力したデータをMysqlのデータベースに追加したいのですが、なんどやっても入力した文字が追加されず画面に表示されません。良ければお力添えを頂きたいです。

OS:Windouws10
node: version 1.0.0
mysql: version 2.18.1
ejs: version 2.18.i


server.js

javascript

1let express = require("express") 2const mysql = require('mysql') 3 4let http = require('http') 5let app = express() 6let server = http.createServer(app) 7 8app.use(express.static('public')) 9app.use(express.urlencoded({extended : true})) 10 11 12const connection = mysql.createConnection({ //データベースに接続 13 host: 'localhost', 14 user: 'root', 15 password : '', 16 database : 'mydb' 17}); 18 19app.get('/', (req, res)=>{ 20 connection.query('SELECT * FROM zatu', (error, results)=>{ 21 console.log(results) 22 res.render('top.ejs', {zatu: results}) 23 }) 24 25}) 26 27app.get('/new', (req, res)=>{ 28 res.render('new.ejs') 29}) 30 31app.post('/create', (req, res)=>{  // 今回問題の場所 32 console.log(req.body.zatuName, req.body.zatuContent) 33 34 connection.query('INSERT INTO zatu (title) VALUES (?)', [req.body.zatuName],  // ここの処理が機能していない 35 (error, results)=>{ 36 connection.query('SELECT * FROM zatu', (error, results)=>{ 37 res.render('top.ejs', {zatu: results}) 38 }) 39 }) 40}) 41 42app.listen(process.env.PORT, ()=>{ 43 console.log("HelloWorld") 44})

top.ejs

HTML

1 <div class="item-form-wrapper"> 2 <form action="/create" method="POST"> 3 <input class="input" type="text" name="zatuName" placeholder="雑学のタイトル"> <!-- name属性を指定している --> 4 <textarea class="textarea" placeholder="ちょっとした説明" name="zatutitle"></textarea> <!-- なぜかtextarea内だとnameを受け取れない --> 5 <input type="submit" class="button is-success is-rounded" value="投稿する"> 6 </form> 7  </div>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

programming

2020/04/01 00:54

top.ejs は、これが全体でしょうか。 データベースへの問い合わせ結果を表示するコードがあれば、ご提示ください。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問