[英]PHP : Get Image Path and Store to Database
我有問題。 請看看我的main.php和upload.php
main.php
<?php
include "include/db_connection.php";
$id = isset($_GET['id']) ? $_GET['id'] : "";
if ($id=="") {
echo "<script>alert('Pilih Mahasiswa yang Ingin Unggah Berkas!');</script>";
echo "<meta http-equiv='refresh' content='0; url=?page=tugas2'>";
} else {
$query = mysql_query("SELECT mahasiswa.nim, mahasiswa.nama, mahasiswa.jurusan
FROM mahasiswa
WHERE mahasiswa.nim = '$id'");
while ($hisal=mysql_fetch_array($query)){
$nim = $hisal['nim'];
$nama = $hisal['nama'];
$jur = $hisal['jurusan'];
}
}
?>
<table>
<tr>
<td>NIM</td>
<td>:</td>
<td><?php echo $nim;?></td>
</tr>
<tr>
<td>Nama</td>
<td>:</td>
<td><?php echo $nama;?></td>
</tr>
<tr>
<td>Jurusan</td>
<td>:</td>
<td><?php echo $jur;?></td>
</tr>
</table><br><br>
<form enctype="multipart/form-data" method="POST" action="?page=upload">
<table border="1" width="50%">
<tr>
<td align="center">Jenis Berkas</td>
<td align="center">Berkas</td>
<td align="center">Aksi</td>
</tr>
<tr>
<td align="center">Foto</td>
<td align="center"><input type="file" name="foto" accept="image/jpeg"></td>
<td align="center"><?php echo"<a href='?page=prosesUbah2&id=$hisal[nim];'>Ubah</a> |
<a href='?page=prosesHapus2&id=$id' onclick='return confirm(\"Anda yakin ingin menghapus berkas dari nim $id ?\")'>Hapus</a>"
?>
</td>
</tr>
<tr>
<td align="center">Scan KTM</td>
<td align="center"><input type="file" name="ktm" accept="image/jpeg"></td>
<td align="center"><?php echo"<a href='?page=prosesUbah2&id=$id'>Ubah</a> |
<a href='?page=prosesHapus2&id=$id' onclick='return confirm(\"Anda yakin ingin menghapus berkas dari nim $id ?\")'>Hapus</a>"
?>
</td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" name="Unggah" id="Unggah" value="Unggah Berkas"></td>
</tr>
</table>
</form>
upload.php
<?php
include "include/db_connection.php";
$id = isset($_GET['id']) ? $_GET['id'] : "";
$file = "uploads/".$_FILES["foto"]["name"];
if ($_FILES["foto"]["error"] > 0 && $id==""){
echo "<script>alert('Upload Failed')</script>";
echo "<meta http-equiv='refresh' content='0; url=?page=tugas2'>";
} else {
move_uploaded_file($_FILES["foto"]["tmp_name"], "uploads/".$_FILES["foto"]["name"]);
$sql=mysql_query("INSERT INTO mahasiswa VALUE ('','','','','','','$file','','') WHERE mahasiswa.nim='$id'");
if ($sql){
echo "<script>alert('Upload Gambar Sukses')</script>";
echo "<meta http-equiv='refresh' content='0; url=?page=tugas2'>";
} else{
echo "<script>alert('Upload Failed')</script>";
echo "<meta http-equiv='refresh' content='0; url=?page=tugas2'>";
}
}
?>
圖像文件已復制到上載文件夾,但其路徑未存儲在數據庫中。 當我單擊“ Unggah Berkas”按鈕時,警報顯示“ Upload Failed”,但圖像已復制到上載文件夾。 你能幫助我嗎? 不管怎么說,還是要謝謝你。
更新
我已經改變了
<form enctype="multipart/form-data" method="POST" action="?page=upload&id=<?php echo $id; ?>">
//my code
</form>
和這個
<?php
include "include/db_connection.php";
$id = isset($_GET['id']) ? $_GET['id'] : "";
$file = "uploads/".$_FILES["foto"]["name"];
if ($_FILES["foto"]["error"] > 0 || $id==""){
echo "<script>alert('Upload Failed')</script>";
echo "<meta http-equiv='refresh' content='0; url=?page=tugas2'>";
} else {
move_uploaded_file($_FILES["foto"]["tmp_name"], "uploads/".$_FILES["foto"]["name"]);
$sql=mysql_query("INSERT INTO mahasiswa VALUE ('','','','','','','$file','','') WHERE mahasiswa.nim='$id'");
}
?>
仍然不存儲到數據庫中
路徑無法存儲在表中,因為您沒有在URL中發送id
。 您的<form>
標記應如下所示:
<form enctype="multipart/form-data" method="POST" action="upload.php?id=<?php echo $id; ?>">
// your code
</form>
更新:
並更改您的if
條件,如下所示:
if($_FILES["foto"]["error"] > 0 || $id==""){
// error
}else {
// no error
}
重新編輯:
這將是您的目錄結構:
include
|--db_connection.php
uploadform
|--main.php
|--upload.php
uploads
main.php
假設用戶的ID為12,則必須這樣調用main.php, main.php?id = 12
<?php
require_once("../include/db_connection.php");
$id = isset($_GET['id']) ? $_GET['id'] : "";
if ($id=="") {
echo "<script>alert('Pilih Mahasiswa yang Ingin Unggah Berkas!');</script>";
echo "<meta http-equiv='refresh' content='0; url=?page=tugas2'>";
} else {
$query = mysql_query("SELECT mahasiswa.nim, mahasiswa.nama, mahasiswa.jurusan
FROM mahasiswa
WHERE mahasiswa.nim = '$id'");
while ($hisal=mysql_fetch_array($query)){
$nim = $hisal['nim'];
$nama = $hisal['nama'];
$jur = $hisal['jurusan'];
}
}
?>
<table>
<tr>
<td>NIM</td>
<td>:</td>
<td><?php echo $nim;?></td>
</tr>
<tr>
<td>Nama</td>
<td>:</td>
<td><?php echo $nama;?></td>
</tr>
<tr>
<td>Jurusan</td>
<td>:</td>
<td><?php echo $jur;?></td>
</tr>
</table><br><br>
<form enctype="multipart/form-data" method="POST" action="upload.php?id=<?php echo $id; ?>">
<table border="1" width="50%">
<tr>
<td align="center">Jenis Berkas</td>
<td align="center">Berkas</td>
<td align="center">Aksi</td>
</tr>
<tr>
<td align="center">Foto</td>
<td align="center"><input type="file" name="foto" accept="image/jpeg"></td>
<td align="center"><?php echo"<a href='?page=prosesUbah2&id=$hisal[nim];'>Ubah</a> |
<a href='?page=prosesHapus2&id=$id' onclick='return confirm(\"Anda yakin ingin menghapus berkas dari nim $id ?\")'>Hapus</a>"
?>
</td>
</tr>
<tr>
<td align="center">Scan KTM</td>
<td align="center"><input type="file" name="ktm" accept="image/jpeg"></td>
<td align="center"><?php echo"<a href='?page=prosesUbah2&id=$id'>Ubah</a> |
<a href='?page=prosesHapus2&id=$id' onclick='return confirm(\"Anda yakin ingin menghapus berkas dari nim $id ?\")'>Hapus</a>"
?>
</td>
</tr>
<tr>
<td colspan="3" align="center"><input type="submit" name="Unggah" id="Unggah" value="Unggah Berkas"></td>
</tr>
</table>
</form>
upload.php
<?php
require_once("../include/db_connection.php");
$id = isset($_GET['id']) ? $_GET['id'] : "";
$file = "uploads/".$_FILES["foto"]["name"];
if ($_FILES["foto"]["error"] > 0 || $id==""){
echo "<script>alert('Upload Failed')</script>";
echo "<meta http-equiv='refresh' content='0; url=?page=tugas2'>";
} else {
move_uploaded_file($_FILES["foto"]["tmp_name"], "../uploads/".$_FILES["foto"]["name"]);
$sql=mysql_query("INSERT INTO mahasiswa VALUE ('','','','','','','$file','','') WHERE mahasiswa.nim='$id'");
if ($sql){
echo "<script>alert('Upload Gambar Sukses')</script>";
echo "<meta http-equiv='refresh' content='0; url=?page=tugas2'>";
} else{
echo "<script>alert('Upload Failed')</script>";
echo "<meta http-equiv='refresh' content='0; url=?page=tugas2'>";
}
}
?>
只需更改查詢
$sql=mysql_query("INSERT INTO mahasiswa VALUE ('','','','','','','$file','','') WHERE mahasiswa.nim='$id'");
至
$sql=mysql_query("UPDATE mahasiswa SET foto='$foto' WHERE mahasiswa.nim='$id'");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.