Zde je velmi jednoduchý pracovní příklad vašeho kódu s připravenými příkazy.
Všimněte si dotazovacích znaků na dotazu a bind_param
, s
znamená řetězec a i
znamená celé číslo, více si můžete přečíst zde
.
Takže ssi
znamená, že obdržíme 2 řetězce a 1 celočíselný záznam.
<?php
// Your database info
$db_host = '';
$db_user = '';
$db_pass = '';
$db_name = '';
if (!empty($_POST))
{
$con = mysqli_connect($db_host, $db_user, $db_pass, $db_name);
if ($con->connect_error)
die('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
$sql = "INSERT INTO table1 (Fname, LName, Age) VALUES (?,?,?)";
if (!$stmt = $con->prepare($sql))
die('Query failed: (' . $con->errno . ') ' . $con->error);
if (!$stmt->bind_param('ssi',$_POST['fname'],$_POST['lname'],$_POST['age']))
die('Bind Param failed: (' . $con->errno . ') ' . $con->error);
if (!$stmt->execute())
die('Insert Error ' . $con->error);
echo "Record added";
$stmt->close();
$con->close();
}
?>
<html>
<body>
<form action="createconnection.php" method="post">
Firstname : <input type="text", name="fname"> </br>
Lastname : <input type="test" name="lname"> </br>
Age : <input type="text" name="age"></br>
<input type="submit">
</form>
</body>
</html>
Pro případ, že je zde použita tabulka SQL:
CREATE TABLE IF NOT EXISTS `table1` (
`Fname` varchar(50) NOT NULL,
`LName` varchar(50) NOT NULL,
`Age` int(3) NOT NULL
);