現在、sample.htmlで取得した値をajaxでpost.phpに渡してmysqlに格納する処理を
作成しております。
少し、変わった点があるとしたら、form要素を使用せすに値をサーバーに渡そうとしております。
下記のように、サーバーに値を渡したいのですが
data:{text:$('.textarea').val()}
の受け取り方がわかりません。。検索すると大抵$_POST['XX']の受け取り方ばかりで
どなたかご教示願えますでしょうか。
コメントアウトしている部分は明らかに自分でもおかしいと思いながら他に思いつかないため
記載しております。当然、mysqlにはそのまま"text"の文字列が格納されてしまっております。
何卒、よろしくお願い申し上げます。
html
1//sample.html 2<textarea class="textarea" name="main" ></textarea> 3<div class="btn">回答する</div> 4<div class="insert"></div> 5 6<script> 7$(function(){ 8 $('.btn').on('click',function(){ 9 $.ajax({ 10 type:'POST', 11 url:'post.php', 12 data:{text:$('.textarea').val() 13 }, 14 success: function(data){ 15 $('.insert').html(data) 16 } 17 }) 18 }) 19}) 20</script>
php
1 2//post.php 3 4<script type="text/javascript"> 5 <?php $main_respo ="text"?>//多分ここが根本的に誤っているのと思っているのですが 6</script> 7 8<?php 9 try { 10 $dsn ="XXX"; 11 $user="XXX"; 12 $pass="XXX"; 13 $pdo = new PDO($dsn,$user,$pass, array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET CHARACTER SET `utf8`')); 14 $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 15 $stmt = $pdo->prepare('INSERT INTO main_respo (comment) VALUES (:comment)'); 16 $stmt->bindValue(':comment',$main_respo, PDO::PARAM_STR); 17 $stmt->execute(); 18 } catch (PDOException $e) { 19 exit('データベース接続失敗。'.$e->getMessage()); 20 } 21?>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/08/14 14:09
2018/08/15 04:05
2018/08/20 06:40