post-new.phpのファイル
フォームは以下です。
<?php require_once('header.php'); ?> <div class="form-action"> <form class="post-new" action="new-action.php" method="post"> <input type="text" name="title"> <br> <input type="text" name="content"> <br> <input type="submit" name="submit" value="保存"> </form> </div>
new-action.phpのファイル
上記のアクションを下のファイルで行って、データベースの方に保存をしたいのですが、エラーが出ます。
*データベースのパスワードはありませんので、'staff'だけで問題はありません。
<?php require_once('header.php'); $pdo=new PDO('mysql:host=localhost;dbname=product;charset=utf8','staff'); $spl=$pdo->prepare('insert into posts values(null,?,?)'); #エラーの行は以下の部分です。 if ($sql->execute([$_REQUEST['title'],$_REQUEST['content']])){ echo '追加しました'; }else{ echo '失敗しました'; } ?>
エラー内容
Notice: Undefined variable: sql in /Applications/XAMPP/xamppfiles/htdocs/Product/new-action.php on line 7
Fatal error: Call to a member function execute() on null in /Applications/XAMPP/xamppfiles/htdocs/Product/new-action.php on line 7
どこの文章が間違っているのでしょうか?
また、改善点など教えてください!
よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー