• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Operacje na plikach .jpg w bazie danych

Object Storage Arubacloud
0 głosów
145 wizyt
pytanie zadane 6 listopada 2018 w PHP przez Rick_Sanchez Nowicjusz (160 p.)

Witam.

Na wstępie napiszę, że php uczę się od około dwóch tygodni ale już został mi zlecony projekt.

Napisałem kod, który wkleję poniżej ale umiem przeprowadzić operacji na plikach .jpg image 

Jeśli ktoś z Państwa będzie tak uprzejmy i zwyczajnie dopisze mi obsługę plików jpg to będę wdzięczny niepomiernie i jestem skłonny nawet za to zapłacić. 
Oczywiście takich zdjęć będzie, dzięki Bogu i partii około 30 w przypadku wszystkich uprawnień tu jest jest tylko przykład z jednym z nich. 
W innym formularzu nauczyłem się już dodawać zdjęcia i wykonywać inne operacje na bazie danych danych ale bez tych cholernych plików. Po prostu nie wiem jak to zrobić, co mnie coraz bardziej frustruje. Pocieszam się tym, że php uczę się dopiero od dwóch tygodni... 
Bardzo proszę o pomoc.

Kod wygląda tak:

<?php
$host = "localhost";
$user = "root";
$password ="";
$database = "testdb";

$userid = "";  
$userfname = "";  
$userlname = "";  
$userunit = "";  

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

// Połączenie z bazą
try{
    $connect = mysqli_connect($host, $user, $password, $database);
} catch (mysqli_sql_exception $ex) {
    echo 'Błąd';
}

// Pobranie wartości z formularza
function getPosts()
{
    $posts = array();
    $posts[0] = trim($_POST['userid']);
    $posts[1] = trim($_POST['userfname']);
    $posts[2] = trim($_POST['userlname']);
    $posts[3] = trim($_POST['userunit']);
    $posts[4] = trim($_POST['kmiknad']);
    $posts[5] = trim($_POST['kmikod']);
    //$posts[6] = trim($_POST['kmikPic']);
	
    return $posts;
}

// Szukaj

if(isset($_POST['search']))
{
    $data = getPosts();
    
    $search_Query = "SELECT * FROM tbl_users WHERE userid = $data[0]";
    
    $search_Result = mysqli_query($connect, $search_Query);
    
    if($search_Result)
    {
        if(mysqli_num_rows($search_Result))
        {
            while($row = mysqli_fetch_array($search_Result))
            {
                $userid =		$row['userid'];
                $userfname =	$row['userfname'];
                $userlname =	$row['userlname'];
                $userunit =		$row['userunit'];
                $kmiknad =		$row['kmiknad'];
                $kmikod =		$row['kmikod'];
				//$kmicPic= 		$row['kmicPic'];
            }
        }else{
            echo 'Brak danych dla podanego ID';
        }
    }else{
        echo 'Błąd wyniku';
    }
}


// Wstaw

if(isset($_POST['insert']))   
{
    $data = getPosts();
	$insert_Query = "INSERT INTO `tbl_users`(`userid`, `userfname`, `userlname`, `userunit`, `kmiknad`,	`kmikod`) 
									 VALUES ('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]')";
	try{
        $insert_Result = mysqli_query($connect, $insert_Query);
        
        if($insert_Result)
        {
            if(mysqli_affected_rows($connect) > 0)
            {
                echo 'Dane wstawione';
            }else{
                echo 'Dane nie wstawione';
            }
        }
    } catch (Exception $ex) {
        echo 'Błąd: '.$ex->getMessage();
    }
}



// Usuń

if(isset($_POST['delete']))
{
    $data = getPosts();
	$delete_Query = "DELETE FROM `tbl_users` WHERE `userid` = $data[0]";
    try{
        $delete_Result = mysqli_query($connect, $delete_Query);
        
        if($delete_Result)
        {
            if(mysqli_affected_rows($connect) > 0)
            {
                echo 'Dane skasowane';
            }else{
                echo 'Dane nie skasowane';
            }
        }
    } catch (Exception $ex) {
        echo 'Błąd '.$ex->getMessage();
    }
}

// Edycja

if(isset($_POST['update']))
{
    $data = getPosts();
	$update_Query = "UPDATE `tbl_users` SET `userfname`= '$data[1]',`userlname`= '$data[2]',`userunit`= '$data[3]' WHERE `userid` = $data[0]";
    try{
        $update_Result = mysqli_query($connect, $update_Query);
        
        if($update_Result)
        {
            if(mysqli_affected_rows($connect) > 0)
            {
                echo 'Zaktualizowano';
            }else{
                echo 'Błąd aktualizacji danych';
            }
        }
    } catch (Exception $ex) {
        echo 'Błąd aktualizacji '.$ex->getMessage();
    }
}
?>

<!DOCTYPE Html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<h3 align="center">Edycja, Szukanie, Wstawianie<h3>
<hr>
		<form action="szukanie.php" method="post">
			<table align="center">
			<tr>
				<td>ID Kadrowe:</td><td><input type="number" name="userid" value="<?php echo $userid;?>"></td>
			</tr>
			<tr>
				<td>Imię:</td><td><input type="text" name="userfname" value="<?php echo $userfname;?>"></td>
			</td>
			<tr>
				<td>Nazwisko:</td><td><input type="text" name="userlname" value="<?php echo $userlname;?>"></td>
			</tr>
			<tr>
				<td>Jednostka:</td><td><input type="text" name="userunit" value="<?php echo $userunit;?>"></td>
			</tr>
			<tr>
				<td>Karta mikro nadane:</td><td><input type="date" name="kmiknad" value="<?php echo $kmiknad;?>"></td>
			</td>
			<tr>
				<td>Karta mikro odebrane:</td><td><input type="date" name="kmikod" value="<?php echo $kmikod;?>"></td>
			</tr>
			<tr>
				<td>Skan:</td><td><img src="images/<?php echo $row['mikroPic']; ?>" class="" width="50px" height="30px" /></td>
			</tr>
			</table>
		</br>
			<div align="center">
				<!-- Wstaw -->
			<input type="submit" name="insert" value="Dodaj">
                
			<!-- Edycja rekordów -->
			<input type="submit" name="update" value="Uaktualnij">
                
			<!-- Usuń -->
			<input type="submit" name="delete" value="Usuń">
                
			<!-- Szukaj -->
			<input type="submit" name="search" value="Znajdź">
			</div>
		</form>
</body>
</html>

 

2 odpowiedzi

+1 głos
odpowiedź 6 listopada 2018 przez misiek.sz Bywalec (2,050 p.)
Gdzie dają zlecenia po 2 tygodniach nauki? Chętnie skorzystam :)

 

Nie wiem o co Ci chodzi z obsługą plików, w bazie zapisuj ścieżkę do pliku i w <img ją wyświetlaj. W  kolejnym etapie nauki pochyl się nad PDO bo to bezpieczniejszy sposób wykonywania zapytań sql od Twojego
komentarz 6 listopada 2018 przez Rick_Sanchez Nowicjusz (160 p.)
Odpowiedziałem nad Pańskim postem, nie rozumiem jeszcze działania tego forum :) Przepraszam.
0 głosów
odpowiedź 6 listopada 2018 przez Rick_Sanchez Nowicjusz (160 p.)

Proszę nawet nie pytać gdzie, bo i tak się nie przyznam gdzie pracuję...

Tak robię, jak Pan mówi, po prostu chcę ten kod uzupełnić o obsługę plików .jpg

chodzi mi dokładnie o to, żeby:

- w polach wyświetlało mi id, imię, nazwisko, unit.

- później datę nadania uprawnień

- datę odebrania uprawnień w kolejnym polu

- i... najważniejsze skan (czyli obraz jpg) z tym co musi tam być

Generalnie wszystko już działa, oprócz obsługi tych cholernych (przepraszam) plików.

Za chińskiego boga nie wiem jak to zrobić i mam nadzieję, że teraz wyrażam się jasno.

Po odpaleniu formularza, będzie też dokładnie widać co chcę docelowo osiągnąć.

Podejrzewam, że dla kogoś z większym doświadczeniem będzie to max pół godziny pracy....:(

 

<?php
$host = "localhost";
$user = "root";
$password ="";
$database = "testdb";

$userid = "";  
$userfname = "";  
$userlname = "";  
$userunit = "";  

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

// Połączenie z bazą
try{
    $connect = mysqli_connect($host, $user, $password, $database);
} catch (mysqli_sql_exception $ex) {
    echo 'Błąd';
}

// Pobranie wartości z formularza
function getPosts()
{
    $posts = array();
    $posts[0] = trim($_POST['userid']);
    $posts[1] = trim($_POST['userfname']);
    $posts[2] = trim($_POST['userlname']);
    $posts[3] = trim($_POST['userunit']);
    $posts[4] = trim($_POST['kmiknad']);
    $posts[5] = trim($_POST['kmikod']);
    //$posts[6] = trim($_POST['kmikPic']);
	
    return $posts;
}


// ODEBRANIE PLIKU Z FORMULARZA
	$mikroPic = $_FILES['mikroPic']['name']; 
	$tmp_dir = $_FILES['mikroPic']['tmp_name']; 
	$imgSize = $_FILES['mikroPic']['size'];	


// Szukaj

if(isset($_POST['search']))
{
    $data = getPosts();
    
    $search_Query = "SELECT * FROM tbl_users WHERE userid = $data[0]";
    
    $search_Result = mysqli_query($connect, $search_Query);
    
    if($search_Result)
    {
        if(mysqli_num_rows($search_Result))
        {
            while($row = mysqli_fetch_array($search_Result))
            {
                $userid =		$row['userid'];
                $userfname =	$row['userfname'];
                $userlname =	$row['userlname'];
                $userunit =		$row['userunit'];
                $kmiknad =		$row['kmiknad'];
                $kmikod =		$row['kmikod'];
				//$kmicPic= 		$row['kmicPic'];
            }
        }else{
            echo 'Brak danych dla podanego ID';
        }
    }else{
        echo 'Błąd wyniku';
    }
}


// Wstaw

if(isset($_POST['insert']))   
{
    $data = getPosts();
	$insert_Query = "INSERT INTO `tbl_users`(`userid`, `userfname`, `userlname`, `userunit`, `kmiknad`,	`kmikod`) 
									 VALUES ('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]')";
	try{
        $insert_Result = mysqli_query($connect, $insert_Query);
        
        if($insert_Result)
        {
            if(mysqli_affected_rows($connect) > 0)
            {
                echo 'Dane wstawione';
            }else{
                echo 'Dane nie wstawione';
            }
        }
    } catch (Exception $ex) {
        echo 'Błąd: '.$ex->getMessage();
    }
}



// Usuń

if(isset($_POST['delete']))
{
    $data = getPosts();
	$delete_Query = "DELETE FROM `tbl_users` WHERE `userid` = $data[0]";
    try{
        $delete_Result = mysqli_query($connect, $delete_Query);
        
        if($delete_Result)
        {
            if(mysqli_affected_rows($connect) > 0)
            {
                echo 'Dane skasowane';
            }else{
                echo 'Dane nie skasowane';
            }
        }
    } catch (Exception $ex) {
        echo 'Błąd '.$ex->getMessage();
    }
}

// Edycja

if(isset($_POST['update']))
{
    $data = getPosts();
	$update_Query = "UPDATE `tbl_users` SET `userfname`= '$data[1]',`userlname`= '$data[2]',`userunit`= '$data[3]' WHERE `userid` = $data[0]";
    try{
        $update_Result = mysqli_query($connect, $update_Query);
        
        if($update_Result)
        {
            if(mysqli_affected_rows($connect) > 0)
            {
                echo 'Zaktualizowano';
            }else{
                echo 'Błąd aktualizacji danych';
            }
        }
    } catch (Exception $ex) {
        echo 'Błąd aktualizacji '.$ex->getMessage();
    }
}
?>

<!DOCTYPE Html>
<html>
<head>
<title></title>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<h3 align="center">Edycja, Szukanie, Wstawianie<h3>
<hr>
		<form action="szukanie.php" method="post" enctype="multipart/form-data">
			<table align="center">
			<tr>
				<td>ID Kadrowe:</td><td><input type="number" name="userid" value="<?php echo $userid;?>"></td>
			</tr>
			<tr>
				<td>Imię:</td><td><input type="text" name="userfname" value="<?php echo $userfname;?>"></td>
			</td>
			<tr>
				<td>Nazwisko:</td><td><input type="text" name="userlname" value="<?php echo $userlname;?>"></td>
			</tr>
			<tr>
				<td>Jednostka:</td><td><input type="text" name="userunit" value="<?php echo $userunit;?>"></td>
			</tr>
			<tr>
				<td>Karta mikro nadane:</td><td><input type="date" name="kmiknad" value="<?php echo $kmiknad;?>"></td>
			</td>
			<tr>
				<td>Karta mikro odebrane:</td><td><input type="date" name="kmikod" value="<?php echo $kmikod;?>"></td>
			</tr>
			<tr>
				<td><input type="file" name="mikroPic"></td><td><img src="images/<?php echo $row['mikroPic']; ?>" class="" width="50px" height="30px" /></td>
			</tr>
			</table>
		</br>
			<div align="center">
				<!-- Wstaw -->
			<input type="submit" name="insert" value="Dodaj">
                
			<!-- Edycja rekordów -->
			<input type="submit" name="update" value="Uaktualnij">
                
			<!-- Usuń -->
			<input type="submit" name="delete" value="Usuń">
                
			<!-- Szukaj -->
			<input type="submit" name="search" value="Znajdź">
			</div>
		</form>
</body>
</html>



Poprawiłem formularz i dodałem przyjęcie danych plikowych.

 

Podobne pytania

0 głosów
0 odpowiedzi 315 wizyt
pytanie zadane 8 grudnia 2018 w C i C++ przez matiibal Użytkownik (620 p.)
0 głosów
0 odpowiedzi 174 wizyt
pytanie zadane 29 stycznia 2018 w C i C++ przez Artur313 Użytkownik (790 p.)
0 głosów
2 odpowiedzi 458 wizyt
pytanie zadane 29 listopada 2015 w PHP przez niezalogowany

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...