前提
投稿データを出力する画面を作っています。
そもそも、arrayには複数データを保持した変数は入れられないのでしょうか。
変数展開をしたいので""で囲ったのですが、予期しないと言われてしまいました。
実現したいこと
15件の取得したtitleデータを順に出力したい。
発生している問題・エラーメッセージ
Parse error: syntax error, unexpected string content "", expecting "-" or identifier or variable or number
該当のソースコード
php
1<?php 2 $db = new PDO('mysql:host=------'); 3 $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 4 $db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); 5 $sql = 'SELECT title FROM post ORDER BY post . id DESC LIMIT ?, 15'; 6 $stmt = $db->prepare($sql); 7 $stmt->bindValue(1, $minvalue, PDO::PARAM_STR); 8 $stmt->execute(); 9 $result = $stmt->fetch(); 10 $stmt = null; 11 $db = null; 12 if(!empty($result)){ 13 $title[] = array("$result['title']"); 14 }else{ 15 echo 'データを取得できませんでした。リロードして下さい。'; 16 } 17 for($i=0;$i<15;$i++){ 18 echo" 19 <div> 20 <article class='question'> 21 <div class='questionInfo'> 22 <h2 class='questionTitleAround titlesize titlebase'> 23 <a class='questionTitle questionTitleColor'>$title[$i]</a> 24 </h2> 25 </div> 26 </article> 27 </div>"; 28 } 29 ?>
-- テーブルの構造 `post` -- CREATE TABLE `post` ( `id` int(10) NOT NULL, `subject` varchar(15) DEFAULT NULL, `grade` varchar(15) DEFAULT NULL, `post` varchar(2000) DEFAULT NULL, `pictures` int(11) DEFAULT NULL, `title` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_bin DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
試したこと
arrayを消すと太宰治1が最初に一件だけ表示されます。
for文でif文を囲うようにして書いてみたのですが、どれも上手くいきませんでした。
複数データではない変数をarrayの中に書いてというのはインターネットで見つけたのですが、複数のものが見つかリませんでした。
"ではなく{}や[]でも代用できるというのを見つけたので、行ってみたのですが、どれも求めているものは出力できませんでした。
補足情報(FW/ツールのバージョンなど)

回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/09/14 01:38