Tahun baru, skill baru! 🚀. Masukkan kupon "skill2025" untuk diskon 30% di kelas apa saja

Cara menyimpan data user login ke session dan menyimpan kembali di tabel database lain

Halo, saya sedang belajar fitur upload dan download, pada halaman upload saat user mengupload file maka data user yang mengupload/login dari database tabel user (username dan profile name nya) ikut tersimpan di tabel upload, tapi saat saya jalankan ternyata yang muncul pada halaman download hanya username saja

ini upload.php

<?php
session_start();

$sql=mysqli_query($conn, "SELECT * FROM tb_user WHERE username = '$username' AND password = '$password' ") or die(mysqli_error());
$row = mysqli_fetch_array($sql);

if (mysqli_num_rows($sql) > 0)
{
  $_SESSION['username'] = $row['username'];
  $_SESSION['nama'] = $row['nama'];

}

?>
<div class="container container-body">
    <h3>Upload</h3>

    <hr>

    <div class="row">
      <div class="col-md-6 col-md-offset-3">
        <form class="form-horizontal" method="post" enctype="multipart/form-data">
          <div class="form-group">
            <div class="col-md-10">
              <input type="file" name="myFile" class="filestyle" data-icon="false">
            </div>
            <div class="col-md-2">
              <button type="submit" name="upload" class="btn btn-primary"><i class="fa fa-upload"></i> Upload
            </div>
          </div>
        </form>

        <?php
        // definisi folder upload
        define("UPLOAD_DIR", "uploads/");

        if (!empty($_FILES["myFile"])) {
          $file_name	= $_FILES['file']['name'];
          $myFile = $_FILES["myFile"];
          $ext    = pathinfo($_FILES["myFile"]["name"], PATHINFO_EXTENSION);
          $size   = $_FILES["myFile"]["size"];
          $tgl   = date("Y-m-d");
          $user = $_SESSION['username'];
          $nama = $_SESSION['nama'];


          if ($myFile["error"] !== UPLOAD_ERR_OK) {
            echo '<div class="alert alert-warning">Gagal upload file.</div>';
            exit;
          }

          // filename yang aman
          $name = preg_replace("/[^A-Z0-9._-]/i", "_", $myFile["name"]);

          // mencegah overwrite filename
          $i = 0;
          $parts = pathinfo($name);
          while (file_exists(UPLOAD_DIR . $name)) {
            $i++;
            $name = $parts["filename"] . "-" . $i . "." . $parts["extension"];
          }

          // upload file
          $success = move_uploaded_file($myFile["tmp_name"],
            UPLOAD_DIR . $name);
          if (!$success) {
            echo '<div class="alert alert-warning">Gagal upload file.</div>';
            exit;
          }else{

            $insert = $conn->query("INSERT INTO tb_upload(tgl_upload, file_name, file_size, file_type, user, nama) VALUES('$tgl', '$name', '$size', '$ext', '$user', '$nama')");
            if($insert){
              echo '<div class="alert alert-success">File berhasil di upload.</div>';
            }else{
              echo '<div class="alert alert-warning">Gagal upload file.</div>';
              exit;
            }
          }

          // set permisi file
          chmod(UPLOAD_DIR . $name, 0644);
        }
        ?>

      </div>
    </div>

    <?php

    ?>

ini download.php

   <div class="panel-body">
     <div class="table-responsive">
     <table class="table table-striped table-bordered table-hover" id="dataTables-example">
   <thead>
      <tr>
        <th>No.</th>
        <th>File Name</th>
        <th>File Size</th>
        <th>File Type</th>
        <th>Uploader</th>
        <th>Nama</th>
        <th>Download</th>
      </tr>
  </thead>
  <tbody>
      <?php
      $sql = $conn->query("SELECT * FROM tb_upload ORDER BY id_file DESC");

        $no = 1;
        while($row = $sql->fetch_assoc()){
          ?>
          <tr>
            <td><?php echo $no++; ?></td>
            <td><?php echo $row['file_name']; ?></td>
            <td><?php echo bytesToSize($row['file_size']); ?></td>
            <td><?php echo $row['file_type']; ?></td>
            <td><?php echo $row['user']; ?></td>
            <td><?php echo $row['nama']; ?></td>
            <td>
            	<a href="uploads/'.$row['file_name'].'" class="btn btn-primary btn-sm"><i class="fa fa-download"></i> Download</a>
            	<a onclick="return confirm('Anda Yakin Ingin Menghapus Data Ini?')" href="?page=download&aksi=hapus&id_file=<?php echo $row['id_file']; ?>" class="btn btn-danger btn-sm" ><i class="fa fa-trash"></i></a>
            </td>
          </tr>


     <?php } ?>
  </tbody>
    </table>

tb_upload

tb_user

hasil

Mohon bimbingan dan bantuannya Terima kasih

avatar tjgsp
@tjgsp

1 Kontribusi 0 Poin

Diperbarui 6 tahun yang lalu

1 Jawaban:

Hi @tjgsp, Coba check lagi datanya dump aja pake print_r($_SESSION['nama']);die;, kalo ada harusnya ga masalah

avatar apake1
@apake1

106 Kontribusi 55 Poin

Dipost 6 tahun yang lalu

Tanggapan

sudah saya dump munculnya Undefined index: nama, begitu juga kalo saya coba dump password, yang bisa muncul cuma kalo saya coba dump username

Login untuk ikut Jawaban