3

同じページにあるPHPコードを介して、phpフォームからmysqlデータベースにデータを挿入しようとしています。

<?php
if (isset($_POST['submit'])){
$con=mysqli_connect("localhost","root","********","*********");
$sql="INSERT INTO drafts (id, title, description, post, author, category, declined)
VALUES
('','$_POST[title]',$_POST[description],$_POST[post],$_POST[author],$_POST[category],0)";
echo "Droplet Successfully Added!";}
?>

<form action="create-post.php" method="post">
  Title: <br /><input type="text" name="title"><br /><br />
  Description: <br /><textarea name="description"></textarea><br /><br />
  Post: <br /><textarea name="post"></textarea><br /><br />
  Author: <br /><input type="text" name="author"><br /><br />
  Category: <br /><input type="text" name="category"><br /><br />
  <input class="btn btn-info" type="submit" value="Submit for review">
</form>
4

2 に答える 2

-2
  1. <form action="create-post.php" method="post"> to <form action="" method="post">同じページの挿入に変更します。

  2. $sql="INSERT INTO drafts (タイトル,説明,投稿,,カテゴリ,拒否などのクエリを修正します) VALUES ('$_POST[title]', '$_POST[description]', '$_POST[post]', '$_POST[author]', '$_POST[category]', 0)";

  3. この行を追加$query = mysqli_query($con,$sql);

この 3 つの変更は機能しますが、ベスト プラクティスではありません。ユーザーからの直接入力を受け入れているため、SQL インジェクションに対して脆弱です。

于 2016-02-22T04:53:17.870 に答える