Ho creato una tabella users
in mysql
dal terminale e sto cercando di creare un'attività semplice: inserire i valori dal modulo. Questo è il mio dbConfig file
PHP: inserimento dei valori dal modulo in MySQL
<?php
$mysqli = new mysqli("localhost", "root", "pass", "testDB");
/* check connection */
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
?>
e questo è il mio Index.php
.
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="description" content="$1">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" type="text/css" href="style.css">
<title>test</title>
<?php
include_once 'dbConfig.php';
?>
</head>
<body>
<?php
if(isset($_POST['save'])){
$sql = "INSERT INTO users (username, password, email)
VALUES ('".$_POST["username"]."','".$_POST["password"]."','".$_POST["email"]."')";
}
?>
<form method="post">
<label id="first"> First name:</label><br/>
<input type="text" name="username"><br/>
<label id="first">Password</label><br/>
<input type="password" name="password"><br/>
<label id="first">Email</label><br/>
<input type="text" name="email"><br/>
<button type="submit" name="save">save</button>
<button type="submit" name="get">get</button>
</form>
</body>
</html>
Dopo aver premuto il pulsante Salva, non accade nulla, il database è ancora vuoto. Ho provato echo'ing
la query INSERT
e prende tutti i valori dal modulo come dovrebbe. Dopo che provo a controllare se questo ha funzionato dal terminale, accedo al mio sql
e provo a restituire tutti i dati dalla tabella degli utenti e ottengo il set vuoto.
funzione d'uso mysqli_query per eseguire query SQL – UserName
Il codice è solo 'echo'ing una query SQL ... –
È necessario' mysqli_query ($ mysqli, $ sql); ' la query. Al momento stai semplicemente "echo'ando la query, che in pratica viene semplicemente visualizzata sullo schermo. – Qirel