我正在积极学习mysql / php / arduino并试图做一些简单的事情让我继续前进。到目前为止,我已经:创建了一个数据库(工作),创建了一个表(没有工作),插入数据(工作),显示数据(不工作)。
<?php
$servername="localhost";
$username="YUN";
$password="12345678";
$dbname = "yundatabasee";
$conn = mysqli_connect($servername, $username, $password, $dbname);
if(!$conn) {
die("connessione fallita" .mysqli_connect_error());
}
$sql = "CREATE TABLE YunDati(
id INT (6) UNSIGNED AUTO INCREMENT PRIMARY KEY,
yunName VARCHAR (20) NOT NULL,
digitalIn VARCHAR (2),
analogIn VARCHAR (5),
leggi_data TIMESTAMP
)";
if (mysqli_query($conn, $sql)) {
echo "Tabella creata";
} else {
echo "Mi dispiace tabella non e' stata creata :P" .mysqli_error($conn);
}
mysqli_close($conn);
?>
Mi dispiace tabella non e&#39; stata creata。
您的SQL语法有错误;检查手册 对应于您的MariaDB服务器版本,以获得正确的语法 near&#39; AUTO INCREMENT PRIMARY KEY,yunName VARCHAR(20)NOT NULL, digitalIn VARCHAR(2)&#39;在第2行
<?php
$servername="localhost";
$username="YUN";
$password="12345678";
$dbname = "yundatabasee";
$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
die("connessione fallita" .mysqli_connect_error());
}
$sql = "SELECT id, yunName,digitalIn, analogIn, leggi_data FROM YunDati";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result){
echo"id : ".$row["id"]."- Nome".$row["yunName"]."-Analog In".$row["analogIn"]."<br>";
}
} else {
echo "nessun risultato";
}
mysqli_close($conn);
?>
解析错误:语法错误,意外&#39; {&#39;在 第20行的/opt/lampp/htdocs/YUNest/Mostradati.php
答案 0 :(得分:2)
所以在你的代码中,你有两个sintax错误,一个在你的SQL插入中,另一个在你的while循环中:
id INT (6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
AUTO_INCREMENT
之间带有下划线,请检查此SQLfiddle,然后:
while ($row = mysqli_fetch_assoc($result)){
您必须记住关闭所有打开的括号,这些更改应修复您的代码。
如果您将来需要语法检查程序,如果您没有内置的语法检查程序,我会使用phpcodechecker。
希望这会对你有所帮助。