/ / Wiele Mysqli wstaw w jednym formularzu submit - php, database, mysqli

Wiele Mysqli wstaw w jednym formularzu submit - php, database, mysqli

Próbuję zapisać dane, które użytkownik wypełnia w jakiejś formie.

Problem polega na tym, że po naciśnięciu przycisku przesyłania wszystkie dane są zapisywane dokładnie tak, jak chciałem, ale zapisują je kilka razy. (te same dane w wielu wierszach)

    <?php

if($_SERVER["REQUEST_METHOD"] == "POST"){
$share = $_POST["share"];
$date = $_POST["date"];
$dealtype = $_POST["dealtype"];
$enter = $_POST["enter"];
$exitdeal = $_POST["exitdeal"];
$no1 = $_POST["no1"];
$no2 = $_POST["no2"];
$profit = $_POST["profit"];

if ($share != "")
{
if ($date != "")
{
if ($dealtype != "" )
{
if ($enter != "" )
{
if ($exitdeal != "" )
{
$mysql = "INSERT INTO markettable (share, date, dealtype, enter, exitdeal, no1, no2, profit)
VALUES ("$share","$date", "$dealtype", "$enter", "$exitdeal", "$no1", "$no2", "$profit")";
}
}
}
}
}
$mysqli->query($mysql);
if ($mysqli->query($mysql) === TRUE) {
echo "New record created successfully";
} else {
echo "Error: " . $mysql . "<br>" . $mysqli->error;
}
$mysqli->close();
}

?>

Odpowiedzi:

1 dla odpowiedzi № 1

Popatrz tutaj,

  $mysqli->query($mysql);

if ($mysqli->query($mysql) === TRUE) {
echo "New record created successfully";
}

$mysqli->query($mysql); wstawia dane najpierw i if ($mysqli->query($mysql) === TRUE) wstawia ponownie.

Zmieniasz swój kod jako

     $result =  $mysqli->query($mysql); // save the result in $result variable
if ($result === TRUE) { // checks if its successfully inserted
echo "New record created successfully";
}

0 dla odpowiedzi nr 2

Wywołujesz zapytanie do wykonania dwa razy, po raz pierwszy przed instrukcją if i po raz drugi w warunku warunku if.