我正在尝试完成运动,但出现了2个错误:
Notice: Undefined index: Id_sessione in C:\xampp\htdocs\Challenge\Recensione.php on line 24
Notice: Undefined index: Cod_sessione in C:\xampp\htdocs\Challenge\Recensione.php on line 25
通常我知道如何解决未定义的索引错误,但是这次我已经尝试更改语法并检查表/查询,但是对我来说一切似乎都是正确的。
$Titolo = $_POST['Titolo'];
$Rate = $_POST['Valutazione'];
$query = "Select Titolo From recensioni where Titolo = '$Titolo' limit 1";
$query2 = "Select MAX(Id_sessione) from sessione";
$query3 = "Select MAX(Cod_sessione) from recensioni";
$result = $conn->query($query);
$result2 = $conn->query($query2);
$result3 = $conn->query($query3);
$row = mysqli_fetch_assoc($result);
$row2 = mysqli_fetch_assoc($result2);
$row3 = mysqli_fetch_assoc($result3);
$controllaTitolo = $row['Titolo'];
$Sessione = $row2['Id_sessione'];
$controllaSessione = $row3['Cod_sessione'];
表 Sessione:
+-------------+------+---------------------+
| Id_sessione | Nome | TimeA |
+-------------+------+---------------------+
| 1 | zhao | 2019-05-17 13:04:19 |
| 2 | zhao | 2019-05-18 18:07:24 |
| 3 | zhao | 2019-05-18 18:47:20 |
| 4 | zhao | 2019-05-19 11:49:54 |
+-------------+------+---------------------+
recensione:
+---------------+---------+-------------+--------------+
| Id_recensione | Titolo | valutazione | Cod_sessione |
+---------------+---------+-------------+--------------+
| 1 | Avenger | 3 | NULL |
| 2 | Titanic | 4 | 4 |
+---------------+---------+-------------+--------------+
答案 0 :(得分:0)
您需要在查询中使用适当的列别名,并将该列别名用作索引
例如max_id
和max_cod
Titolo = $_POST['Titolo'];
$Rate = $_POST['Valutazione'];
$query = "Select Titolo From recensioni where Titolo = '$Titolo' limit 1";
$query2 = "Select MAX(Id_sessione) max_id from sessione";
$query3 = "Select MAX(Cod_sessione) max_cod from recensioni";
$result = $conn->query($query);
$result2 = $conn->query($query2);
$result3 = $conn->query($query3);
$row = mysqli_fetch_assoc($result);
$row2 = mysqli_fetch_assoc($result2);
$row3 = mysqli_fetch_assoc($result3);
$controllaTitolo = $row['Titolo'];
$Sessione = $row2['max_id'];
$controllaSessione = $row3['max_cod'];
无论如何,您都不应该在SQL查询中使用PHP var ..您有可能遭受sqlinjection ..为避免这种情况,您应该查看数据库驱动程序中准备好的语句和绑定参数