こんにちわ
PHPの独習を始めたばかりなのですが、自分では解決できず質問させて頂くことにしました。
今、いちばんやさしいPHPの教本という参考書を進めています。
ウインドウズ8.1にXAMPP5.6.3をインストールしています。
※参考書に合わせて最新ではないものをインストールしました。
今PHPからデータベースに接続できるようにする。という場面で
<?php
$user = "○○○";
$pass = "○○○";
try{
$dbh = new PDO('mysql:host=localhost;dbname=db1;charset=utf8', $user, $pass);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "SELECT * FORM recipes";
$stmt = $dbh->query($sql);
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
echo "<table>\n";
echo "<tr>\n";
echo "</tr>\n";
echo "</table>\n";
$dbh = null;
} catch (PDOException $e) {
echo "エラー発生: " . htmlspecialchars($e->getMessage(), ENT_QUOTES, 'UTF-8') . "<br>";
die();
}
?>
といったコードをエディタに打ち込み、list.php というファイル名で
c:xampp\htdocs\yasashiiphp\に保存しています。
これをブラウザで
http://localhost/yasashiiphp/list.php
と入力し確認したところ。
エラー発生: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FORM recipes' at line 1
といったエラーが出てしまいました。
SQLに文法に誤りがあります。という意味だとはおもいますが、mysqlのmyAdminで操作したのはテーブルを作成してデータを打ち込み保存したくらいで、SQL文をいじった記憶がありません。
参考書でもSQL文(INSERT INTO)でレコード挿入したくらいです。
ネット検索や他の参考書などで解決できないかと自分なりに頑張ってみたのですが
なにがだんだかさっぱりで、なにが問題でどこがいけないのかも検討がつきません。
回答に必要な情報がそろっているかも自分でわかっていないような状態ですが
どうかご教授おねがいします。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
まず単純なSQL文が間違えております。
$sql = "SELECT * FORM recipes";
↓
FORMはFROMですね。
上記を直すとうまく表示されますか?
narative_hさん
素早い回答ありがとうございます
ご指摘頂いた部分を訂正しましたところ、
上手く表示されました
$sql = "SELECT * FROM recipes";
がsql文だということも知りませんでした。
エディタはdreemweaberを使用しているのですが、
エディタ側で何もエラーになっていませんでしたので、list.phpに間違いがあるとは思ってもみませんでした。
自分の書いているコードの意味が解っていないのも問題ですが
それよりも思い込みって怖いですね。
何回も書き直したのですが、ここは合っていると思っていたので、毎回FORMと書いていました。
単純な間違いですこし恥ずかしいですが、とても勉強になりました。
半日以上このエラーで苦しんだのでとても嬉しいです。
本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP DBのハッシュ化したパスワードをpassword_verifyで戻し照合したのですが上手く行きません 2 2023/02/06 13:24
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- MySQL MySQLのテーブル作成でハイフン - は使用できないのでしょうか? 2 2022/10/21 16:50
- MySQL 何にかが違うから エラーなんでしょうね! 2 2022/09/18 05:28
- PHP PHP一覧表示した項目にリンクをはりたい 1 2023/07/12 17:08
- MySQL テーブル作成です。どこかのスペルが間違っているか記号など スペースかな? 1 2022/10/01 05:08
- PHP 重複を防ぐ記述について教えて下さい。 3 2023/04/03 14:35
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP PHP MySql ページング 2 2022/09/20 06:38
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Pro*Cの構文エラー
-
<VB.NET>INSERT文でDBにデータ...
-
OR検索を実装したい
-
VBA ACCESS SQL...
-
Q&Aサイトを作成していてURLの...
-
like検索の複数キーワードで、...
-
PHP&MySQLでの文字列+数列の一...
-
エクセルVBAのデータベース接続...
-
JAVA SQLServerException 列名 ...
-
MySQLへの接続
-
phpで複数の検索語を検索対象に...
-
【初歩】配列の格納データ数だ...
-
PHP初心者です。syntax error, ...
-
実行時エラー3131 FROM 句の構...
-
MySQLでデータベースにデータin...
-
VBAをつかってクエリの情報を抽...
-
dbに登録したデータをphpのプル...
-
ASPでRecordCountが使用でき...
-
SQL文が実行できません
-
VBA処理追加 こちらでご教示頂...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JAVA SQLServerException 列名 ...
-
Q&Aサイトを作成していてURLの...
-
<VB.NET>INSERT文でDBにデータ...
-
insert1つの処理でもトランザ...
-
Pro*Cの構文エラー
-
ResultSetインターフェイスでの...
-
データベースに存在するデータ...
-
PHP&MySQLでの文字列+数列の一...
-
VBA ACCESS SQL...
-
phpで複数の検索語を検索対象に...
-
MySQLのINSERT時にたまに重複に...
-
PHP+PDO+MYSQL で実行されたSQ...
-
C# で発生したException.Messag...
-
like検索の複数キーワードで、...
-
INSERT,DELETEを同時に
-
PHPのUndefined index や varia...
-
VB.NET エラーになる箇...
-
php postgres Insert と updat...
-
配列をループさせてUPDATE
-
C#でDBの特定列をUpdate
おすすめ情報