動物の名前を挿入し、動物がデータベースにあるかどうかを確認するphpファイルがあります。ただし、データが既に存在する場合、メッセージを出力できません。常に「値が挿入されました」というメッセージとこのメッセージを出力します
警告: mysqli_num_rows() は、パラメーター 1 が mysqli_result であると想定します。ブール値は C:\xampp\htdocs\test\test-insert.php の 12 行目に指定されています
<?php
$host='localhost';
$user='root';
$password='root';
$dbname='pet';
$connect=mysqli_connect($host,$user,$password,$dbname) or die("can not connect to server");
if(@$_GET['submit']=='yes' && $_POST['animal']!="")
{
$animal=mysqli_real_escape_string($connect,trim($_POST['animal']));
$query="INSERT INTO animal (animal) VALUES ('$animal')";
$result=mysqli_query($connect,$query) or die("can not execute query".mysqli_error($connect));
if(mysqli_num_rows($result))
{
echo "value is already exist !";
}
else
{
echo "value is inserted ";
echo "<p>$query</p>";
}
}
else // 1st form display
{
echo "<form action='$_SERVER[PHP_SELF]?submit=yes' method='POST'>
<input type='text' name='animal'>
<input type='submit' name='submit' value='insert name'>";
}
?>