Ho cercato di utilizzare un modulo scritto in HTML per immettere un "Nome" e una "Data" in un database SQL.
Per quanto riguarda la connessione a SQL, tutto va bene. È solo che usando il tipo Data Input HTML5 (che include un calendario a discesa) i dati e PHP non sembrano apparire. Quando inserisco i dati nella tabella SQL, compare "Nome" ma la "Data" rimane vuota. Ho messo un po 'del mio codice qui sotto. Il Form è input.html e il codice di gestione dei dati è table.php. Il nome DB è utenti e il nome della tabella è personale.Data di input HTML su SQL utilizzando php
input.html
<html>
<form action='table.php' method='POST'>
Name <input type="text" name="name"> <br />
Date of Expiry <input type="date" name="date1"> <br />
<input type="submit" name="submit" value="Submit"> <br />
</form>
</html>
table.php
<?php
$name = $_POST["name"];
$date1 = $_POST["date1"];
$servername = "exampleserver.net";
$uname = "exampleusername";
$pass = "password";
$dbname = "users";
$errors = array();
$conn = new mysqli($servername, $uname, $pass, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
if(mysqli_query($conn,"INSERT INTO staff (`name`, `date1`) VALUES('$name','$date1')")) {
header("Location: http://newpageafterdataentry.com");
die();
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
mysqli_close($conn);
?>
È il tipo di dati del 'date' colonna 'Data'? Ciò comporterebbe la mancata accettazione da parte del database di informazioni sulla data non formattate in formato data MySQL (ad esempio YYYY-MM-DD). –
provare a scaricare '$ date1' e postare il dump qui (' var_dump ($ date1) '), ho il sospetto che il formato della data non sia come previsto –
non direttamente correlato al problema, ma si prega di ricordare correttamente [sfuggire all'input dell'utente ] (http://php.net/manual/de/mysqli.real-escape-string.php) che usi nella tua query! – jhinzmann