Функция, передающая значения в поля ввода PHP с использованием mysqli

#php #html

#php #HTML

Вопрос:

В значительной степени то, что я хочу сделать, это получить идентификатор из базы данных и передать эти значения идентификаторов в поля ввода, чтобы я мог повторно редактировать их при нажатии на кнопку редактирования

 <td><a class= "waves-effect waves-light btn" href="http://localhost/robinzonlucica/public/includes/evidencija.inc.php?edit='.$row['evidencijaId'].'"><span class="fas fa-edit"></span></a></td>
 

Это мой значок href, чтобы получить идентификатор и передать его evidencija.inc.php

 if(isset($_GET["edit"])){
    $id = $_GET["edit"];
    require_once $_SERVER['DOCUMENT_ROOT'].'/robinzonlucica/public/includes/dbh.inc.php';
    require_once $_SERVER['DOCUMENT_ROOT'].'/robinzonlucica/public/includes/funkcije.inc.php';
    
    izmijeniEvidenciju($conn,$id);
}
else{
    header("location: http://localhost/robinzonlucica/public/evidencija.php");
    exit();
}
 

Это мой evidencija.inc.php часть для получения идентификатора из этой строки и есть изменение идентификатора ($conn,$id); функция для редактирования значений для заданного edit=id

 function izmijeniEvidenciju($conn, $id) {
    $sql = "SELECT * FROM evidencija WHERE evidencijaId = ?;";
    $stmt = mysqli_stmt_init($conn);
    if(!mysqli_stmt_prepare($stmt, $sql)){
        header("location: http://localhost/robinzonlucica/public/evidencija.php?error=stmtgreska");
        exit();
    }
    mysqli_stmt_bind_param($stmt, "s", $id);
    mysqli_stmt_execute($stmt);
    mysqli_stmt_close($stmt);

}
 

Это моя функция для получения данных, я хочу, чтобы данные отображались в полях ввода не уверен, где я ошибся, я очень смущен

 if(isset($_SESSION["username"])) {
echo '<h2 class ="center-align evidencijanaslov">Evidencija</h2>
<div class="row">
<form action="http://localhost/robinzonlucica/public/includes/evidencija.inc.php" class="col s12 registerforma" method="post">
<div class="row">
      <div class="input-field col s6">
          <input id="ime" type="text" class="validate" name="ime">
          <label for="last_name">Ime Turista</label>
        </div>
        </div>
        <div class="row">
      <div class="input-field col s6">
          <input id="ime" type="text" class="validate" name="prezime" >
          <label for="last_name">Prezime turista</label>
        </div>
        </div>
        <div class="row">
      <div class="input-field col s6">
          <input id="ime" type="text" class="validate" name="oib">
          <label for="last_name">OIB Turista</label>
        </div>
        </div>
        <div class="row">
        <div class="input-field col s6">
        <input type=text name="datum" id="datum" class="datepicker">
        <label for="datum">Datum odlaska</label>
        </div>
        </div>
      <button class="btn waves-effect waves-light gumbsalji" type="submit" name="submit">Upiši</button>
    </div>
    </form>';
    
  }
 

Это ввод html

Комментарии:

1. Это полная izmijeniEvidenciju функция? Он не возвращает никаких значений. Где находится код, который использует результат этой функции для вставки значений в html?

2. @El_Vanja да, это полная функция, не уверен, как передавать результаты в текстовые поля html, нужно ли мне создавать echo в значениях, я уверен, но не уверен, какие значения я уверен, что я что-то там упускаю

3. http://localhost/robinzonlucica/public/includes/evidencija.inc.php — Почему у вас есть ссылки во внешнем интерфейсе на URL-адреса, в которых как имя папки, так и часть имени файла явно указывают на то, что это включаемый файл? Обычно они не предназначены для прямого вызова в первую очередь.

4. @CBroe Я использую подобные ссылки, потому что у меня были проблемы с каталогами xampp, которые меня прослушивали, поэтому я обнаружил, что это работает :/

5. Итак, какой смысл создавать такую структуру в первую очередь, если вы затем нарушаете ее по своему желанию?