Проблема:
Я хочу получить МАКС. "SID" из моей базы данных и добавить его. Я обрабатываю ввод через форму, которую я отправляю через HTTP Post Method. Я получаю текущий максимальный SID из своей базы данных, затем помещаю значение в поле ввода HTML и добавляю его. По какой-то причине это работает через раз. Таким образом, я получаю вывод:
- Try = 1
- Попробуйте = 1
- Попробуйте = 2
- Попробуйте = 2
и так далее. Было бы хорошо, если бы кто-то мог указать мне правильное направление.
PHP получить MAX (ID):
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "soccer";
$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
$sql = "SELECT MAX(SID) FROM spieler";
$result = mysqli_query($conn, $sql);
if(mysqli_num_rows($result) > 0)
{
while($row = mysqli_fetch_assoc($result))
{
$lastID = $row["MAX(SID)"];
}
}
mysqli_close($conn);
PHP вставка в базу данных:
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "soccer";
$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?><br><?php
$sql = "INSERT INTO spieler VALUES ('$sid', '$name', '$verein',
'$position', '$einsaetze', '$startelf', '$tore',
'$torschuesse', '$eigentore', '$vorlagen', '$elfmeter',
'$verwandelt', '$gegentore', '$gelb',
'$rot', '$fouls', '$zweikampf', '$pass', '$note')";
if(mysqli_query($conn, $sql)){
echo "Success";
}else{
echo "Failed" . mysqli_error($conn);
}
mysqli_close($conn);
Поле ввода HTML & PHP:
<tr>
<td><input id="SID" name="SID" readonly value="<?php echo $lastID += 1;
?>"></td>
</tr>
Скриншот страницы:
В абзаце «Spieler ID:» я помещаю «SID», чтобы при каждой загрузке страницы следующий свободный идентификатор автоматически загружался в поле ввода.