付随する問題点が次々出ているため更新していっています。ご迷惑をおかけします。
###前提・実現したいこと
現在、PHPとMySQLを利用して、テーブル作成・入力・データを取得して表示という一連の流れを実行しようと考えています。
###発生している問題・エラーメッセージ
テーブルへのデータ入力に関して、全角文字(ひらがななど)が入力・表示されません。
データ入力のプログラムについては以下の通りです。
PHP
1//接続に必要な情報は省略させていただきます 2try{ 3 4 $pdo=new PDO($dsn,$user,$password); 5 6 echo "接続成功"; 7 echo "<br>"; 8 9 $sql="INSERT INTO banana(name,comment) VALUES(:name,:comment)"; 10 11 $stmt=$pdo->prepare($sql); 12 13 $stmt->bindParam(":name",$name,PDO::PARAM_STR); 14 $stmt->bindParam(":comment",$comment,PDO::PARAM_STR); 15 16 $name="テスト"; 17 $comment="テスト投稿です。"; 18 19 $stmt->execute(); 20 21}catch (PDOException $e){ 22 23 echo '接続失敗'.$e->getMessage(); 24 25 exit; 26 27}
これを取得・表示するプログラムは以下の通りです。
PHP
1try{ 2 3 $pdo=new PDO($dsn,$user,$password); 4 5 echo "接続成功"; 6 echo "<br>"; 7 8 $sql="SELECT*FROM banana"; 9 10 $result=$pdo->query($sql); 11 12 foreach($result as $row){ 13 14 echo $row['id'].','; 15 echo $row['name'].','; 16 echo $row['comment'].'<br>'; 17 18 } 19 20}catch (PDOException $e){ 21 22 print('接続失敗:'.$e->getMessage()); 23 24 die(); 25 26}
これを実行すると、入力した内容のうち半角英数字だけが表示されます。
###試したこと
具体的には
・全角文字だけ→表示されない
・半角英数字だけ→表示される
・全角文字と半角文字を混ぜる→全角文字以前の文字列は表示されるが、それ以降は表示されない
恥ずかしながら情報を十分に集めきることができず、煮詰まっている状態です。
初歩的な質問かもしれませんが、よろしくお願いいたします。
###追記
テーブルの中身ですが、以下のように作成しています。
'CREATE TABLE banana( id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY, name VARCHAR(50), comment VARCHAR(50) )';
SHOW TABLESで見たところ、正しく作成できていることは確認できました。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/11/14 06:56
2017/11/14 07:19
2017/11/14 07:22
2017/11/14 07:24
2017/11/14 07:40
2017/11/14 07:52
2017/11/14 08:01
2017/11/14 08:21
2017/11/14 08:30
2017/11/14 08:36
2017/11/14 08:55
2017/11/14 09:07
2017/11/14 09:21
2017/11/14 09:26