<?php try{ $db=new PDO('mysql:dbname=mydb;host=127.0.0.1;charset=utf8','root','s@kana51'); }catch(PDOException $e){ echo 'DB接続エラー:'.$e->getMessage(); } ?>
<?php require('dbconnect.php');?> <!doctype html> <html lang ="ja"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel ="stylesheet" href="css/style.css"> </head> <body> <h2>practice</h2> <?php $memos=$db->query('SELECT * FROM memos ORDER BY id LIMIT 0,5'); ?> <article> <?php while ($memo=$memos->fetch()):?> <p><a href="memo.php?id=<?php print($memo['id']);?>"><?php print(mb_substr($memo['memo'],0,50));?></a></p> <time><?php print($memo['created_at']);?></time> <hr> <?php endwhile; ?> </article> </body>
15行目を下記に変更するとエラーが出なくなりますが、h2タグで囲ったPracticeだけが表示されます。
<?php require('dbconnect.php');?> <!doctype html> <html lang ="ja"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"> <link rel ="stylesheet" href="css/style.css"> </head> <body> <h2>practice</h2> <?php $memos=$db->query('SELECT * FROM memos ORDER BY id LIMIT 0,5'); $memos->bindParam(1,$_REQUEST['page'],PDO::PARAM_INT); $memos->execute(); ?> <article> <?php while ($memo=$memos->fetch()):?> <p><a href="memo.php?id=<?php print($memo['id']);?>"><?php print(mb_substr($memo['memo'],0,50));?></a></p> <time><?php print($memo['created_at']);?></time> <hr> <?php endwhile; ?> </article> </body>
Fatal error: Uncaught Error: Call to a member function fetch() on bool in C:\xampp\htdocs\memo\index.php:19 Stack trace: #0 {main} thrown in C:\xampp\htdocs\memo\index.php on line 19
15行目のlimit句が使えず困っています。データは入れていてlimit句を使おうとしたらエラーが出ました。
よろしくお願いします。
利用環境:win10
xamppを使ってます。
回答3件
あなたの回答
tips
プレビュー