Kilka zdjęć do bazy danych

2018-11-03 13:47:49 Post #1 Pupcioch

 
Cześć. Proszę o pomoc z moim kodem. Chcę dodać kilka zdjęć do bazy danych ale skrypt uploaduje mi tylko jedno, chociaż pojawiają się rekordy w bazie. Gdzie popełniłem błąd?
Jeśli ktoś z Państwa się zaoferuje pomóc mogę nawet "sypnąć groszem" za pomoc.
tutaj kod:

<?php

error_reporting( ~E_NOTICE );

require_once 'dbconfig.php';

if(isset($_POST['btnsave']))
{
$userid = $_POST['userid'];
$userfname = $_POST['userfname'];
$userlname = $_POST['userlname'];
$userunit = $_POST['userunit'];

$kmiknad = $_POST['kmiknad'];
$kmikod = $_POST['kmikod'];
// Karta mikro skan
$mikroPic = $_FILES['mikroPic']['name'];
$tmp_dir = $_FILES['mikroPic']['tmp_name'];
$imgSize = $_FILES['mikroPic']['size'];

$kmnnad = $_POST['kmnnad'];
$kmnod = $_POST['kmnod'];
// Karta km-n - co to kurwa jest???
$kmnPic = $_FILES['kmnPic']['name'];
$tmp_dir = $_FILES['kmnPic']['tmp_name'];
$imgSize = $_FILES['kmnPic']['size'];

$kekdnad = $_POST['kekdnad'];
$kekdod = $_POST['kekdod'];
// Karta ekd
$kekdPic = $_FILES['kekdPic']['name'];
$tmp_dir = $_FILES['kekdPic']['tmp_name'];
$imgSize = $_FILES['kekdPic']['size'];

$kciknad = $_POST['kciknad'];
$kcikod = $_POST['kcikod'];
// KCIK
$kcikPic = $_FILES['kcikPic']['name'];
$tmp_dir = $_FILES['kcikPic']['tmp_name'];
$imgSize = $_FILES['kcikPic']['size'];

if(empty($userid)){
$errMSG = "Wpisz ID";
}
else if(empty($userfname)){
$errMSG = "Wpisz imię";
}
else if(empty($userlname)){
$errMSG = "Wpisz nazwisko";
}
else if(empty($userunit)){
$errMSG = "Wpisz jednostkę";
}
else
{
$upload_dir = 'user_images/';

$imgExt = strtolower(pathinfo($mikroPic,PATHINFO_EXTENSION)); // Pobieram rozszerzenie

// Obsługiwane pliki
$valid_extensions = array('jpeg', 'jpg', 'png', 'gif'); // obsługiwany format

// Zmiana nazwy pliku
$mikroPic = rand(1000,1000000).".".$imgExt;

// zezwolenie na prawidłowe formaty obrazów
if(in_array($imgExt, $valid_extensions)){
// Sprawdzanie pojemności do 5MB
if($mikroPic < 5000000) {
move_uploaded_file($tmp_dir,$upload_dir.$mikroPic);
}
else{
$errMSG = "Za duży rozmiar pliku";
}
}
else{
$errMSG = "Nie wybrano pliku";
}
// Drugi kod do wstawienia drugiego obrazka

$upload_dir = 'user_images/';

$imgExt = strtolower(pathinfo($kmnPic,PATHINFO_EXTENSION)); // Pobieram rozszerzenie

// Obsługiwane pliki
$valid_extensions = array('jpeg', 'jpg', 'png', 'gif'); // obsługiwany format

// Zmiana nazwy pliku
$kmnPic = rand(1000,1000000).".".$imgExt;

// zezwolenie na prawidłowe formaty obrazów
if(in_array($imgExt, $valid_extensions)){
// Sprawdzanie pojemności do 5MB
if($kmnPic < 5000000) {
move_uploaded_file($tmp_dir,$upload_dir.$kmnPic);
}
else{
$errMSG = "Za duży rozmiar pliku";
}
}
else{
$errMSG = "Nie wybrano pliku";
}
// trzeci kod do wstawienia obrazka

$upload_dir = 'user_images/';

$imgExt = strtolower(pathinfo($kekdPic,PATHINFO_EXTENSION)); // Pobieram rozszerzenie

// Obsługiwane pliki
$valid_extensions = array('jpeg', 'jpg', 'png', 'gif'); // obsługiwany format

// Zmiana nazwy pliku
$kekdPic = rand(1000,1000000).".".$imgExt;

// zezwolenie na prawidłowe formaty obrazów
if(in_array($imgExt, $valid_extensions)){
// Sprawdzanie pojemności do 5MB
if($kmnPic < 5000000) {
move_uploaded_file($tmp_dir,$upload_dir.$kekdPic);
}
else{
$errMSG = "Za duży rozmiar pliku";
}
}
else{
$errMSG = "Nie wybrano pliku";
}

// czwarty kod do wstawienia obrazka
$upload_dir = 'user_images/';

$imgExt = strtolower(pathinfo($kcikPic,PATHINFO_EXTENSION)); // Pobieram rozszerzenie

// Obsługiwane pliki
$valid_extensions = array('jpeg', 'jpg', 'png', 'gif'); // obsługiwany format

// Zmiana nazwy pliku
$kcikPic = rand(1000,1000000).".".$imgExt;

// zezwolenie na prawidłowe formaty obrazów
if(in_array($imgExt, $valid_extensions)){
// Sprawdzanie pojemności do 5MB
if($kcikPic < 5000000) {
move_uploaded_file($tmp_dir,$upload_dir.$kcikPic);
}
else{
$errMSG = "Za duży rozmiar pliku";
}
}
else{
$errMSG = "Nie wybrano pliku";
} // Pewnie mam byka z {
}
// zapytania do bazy
if(!isset($errMSG))
{
$stmt = $DB_con->prepare('INSERT INTO tbl_users(userid,userfname,userlname,userunit,kmiknad,kmikod,mikroPic,kmnnad,kmnod,kmnPic,kekdnad,kekdod,kekdPic,kciknad,kcikod,kcikPic )
VALUES(:uid, :ufname, :urlname, :uunit, :ukmiknad, :ukmikod, :umikroPic, :ukmnnad, :ukmnod, :ukmnPic, :ukekdnad, :ukekdod, :ukekdPic, :ukciknad, :ukcikod, :ukcikPic)');

$stmt->bindParam(':uid',$userid);
$stmt->bindParam(':ufname',$userfname);
$stmt->bindParam(':urlname',$userlname);
$stmt->bindParam(':uunit',$userunit);
$stmt->bindParam(':ukmiknad',$kmiknad);
$stmt->bindParam(':ukmikod',$kmikod);
$stmt->bindParam(':umikroPic',$mikroPic);
$stmt->bindParam(':ukmnnad',$kmnnad);
$stmt->bindParam(':ukmnod',$kmnod);
$stmt->bindParam(':ukmnPic',$kmnPic);
$stmt->bindParam(':ukekdnad',$kekdnad);
$stmt->bindParam(':ukekdod',$kekdod);
$stmt->bindParam(':ukekdPic',$kekdPic);
$stmt->bindParam(':ukciknad',$kciknad);
$stmt->bindParam(':ukcikod',$kcikod);
$stmt->bindParam(':ukcikPic',$kcikPic);

if($stmt->execute())
{
$successMSG = "Dodano użytkownika";
//header("refresh:5;index.php");
}
else
{
$errMSG = "Coś się spierdoliło";
}
}
}
?>

<!DOCTYPE>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
</head>
<body>
<br/>
<div class="container">
<?php
if(isset($errMSG)){
?>
<div class="alert alert-danger">
<span class="glyphicon glyphicon-info-sign"></span> <strong><?php echo $errMSG; ?></strong>
</div>
<?php
}
else if(isset($successMSG)){
?>
<div class="alert alert-success">
<strong><span class="glyphicon glyphicon-info-sign"></span> <?php echo $successMSG; ?></strong>
</div>
<?php
}
?>
<h3 align="center">Dodawanie funkcjonariusza do bazy</h3>
<hr>
<form action="addnew.php" method="post" enctype="multipart/form-data">

<table align="center">
<tr>
<td colspan="2" align="center">- Dane funkcjonariusza -</td><td></td>
</tr>
<tr>
<td><label class="control-label">ID kadrowe</label></td>
<td><input class="form-control" type="number" name="userid" placeholder="" value="<?php echo $userid; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Imię</label></td>
<td><input class="form-control" type="text" name="userfname" placeholder="" value="<?php echo $userfname; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Nazwisko</label></td>
<td><input class="form-control" type="text" name="userlname" placeholder="" value="<?php echo $userlname; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Jednostka</label></td>
<td><input class="form-control" type="text" name="userunit" placeholder="" value="<?php echo $userunit; ?>" /></td>
</tr>
<tr>
<td colspan="2" align="center">- Uprawnienia do kart -</td><td></td>
</tr>
<tr> <!-- KARTA MIKRO -->
<td><label class="control-label">Karta mikro nadane</label></td>
<td><input class="form-control" type="date" name="kmiknad" placeholder="" value="<?php echo $kmiknad; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Karta mikro odebrane</label></td>
<td><input class="form-control" type="date" name="kmikod" placeholder="" value="<?php echo $kmikod; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Skan uprawnień karty mikro</label></td>
<td><input class="input-group" type="file" name="mikroPic" accept="image/*" /></td>
</tr>
<tr> <!-- KARTA KM-N (zmienne: $kmnnad $kmnod kmnPic) -->
<td><label class="control-label">Karta KM-N</label></td>
<td><input class="form-control" type="date" name="kmnnad" placeholder="" value="<?php echo $kmnnad; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Karta KM-N</label></td>
<td><input class="form-control" type="date" name="kmnod" placeholder="" value="<?php echo $kmnod; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Skan uprawnień karty KM-N</label></td>
<td><input class="input-group" type="file" name="kmnPic" accept="image/*" /></td>
</tr>
<tr> <!-- KARTA EKD (zmienne: $kekdnad $kekdod kekdPic) -->
<td><label class="control-label">Karta EKD nadane:</label></td>
<td><input class="form-control" type="date" name="kekdnad" placeholder="" value="<?php echo $kekdnad; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Karta EKD odebrane:</label></td>
<td><input class="form-control" type="date" name="kekdod" placeholder="" value="<?php echo $kekdod; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Skan uprawnień karty EKD</label></td>
<td><input class="input-group" type="file" name="kekdPic" accept="image/*" /></td>
</tr>
<tr>
<td colspan="2" align="center">- Uprawnienia do systemów -</td><td></td>
</tr>
<tr> <!-- KCIK (zmienne: $kciknad $kcikod kcikPic) -->
<td><label class="control-label">KCIK nadane:</label></td>
<td><input class="form-control" type="date" name="kciknad" placeholder="" value="<?php echo $kciknad; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">KCIK odebrane:</label></td>
<td><input class="form-control" type="date" name="kcikod" placeholder="" value="<?php echo $kcikod; ?>" /></td>
</tr>
<tr>
<td><label class="control-label">Skan uprawnień KCIK</label></td>
<td><input class="input-group" type="file" name="kcikPic" accept="image/*" /></td>
</tr>




<tr>
<td colspan="2"><button type="submit" name="btnsave" class="btn btn-default">
<span class="glyphicon glyphicon-save"></span>Zapisz</button>
</td>
</tr>

</table>

</form>
</div>
</body>
</html>

2018-11-06 11:19:18 Post #2 guest_gosc

 
Co zwraca
print_r($_FILES);
?

2018-11-06 12:27:24 Post #3 Pupcioch

 
Bardzo dziękuję za odpowiedź
Gdzie Pan to widzi w kodzie? Nie mogę się dopatrzeć...
W każdym razie nie ważne, prawie sobie poradziłem z tematem.
Mam za to inny problem, mianowicie: napisałem inny kod, który wkleję poniżej. I mam podobny problem. Nie umiem przeprowadzić operacji na plikach .jpg

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>



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.

2018-11-06 13:32:12 Post #4 guest_gosc

 
Napisz prosze na czym polega teraz problem bo za bardzo nie rozumiem

2018-11-06 13:32:52 Post #5 guest_gosc

 
A dokladnie o jaka obsluge plikow jpg ci chodzi?

2018-11-06 13:48:24 Post #6 Pupcioch

 
Generalnie chciałbym rozszerzyć funkcjonalność powyższego skryptu o możliwość obsługi plików .jpg

Tylko i wyłącznie. Skrypt działa ale nie umiem uploadować plików i robić operacji na plikach w bazie danych; chodzi mi o operacje typu DELETE, INSERT, ADD i SEARCH ale _tylko_ dla plików.
Mam nadzieję, że dobrze tłumaczę i jestem dla Państwa zrozumiały.

Jeszcze inaczej, np do tego zapytania:

$update_Query = "UPDATE `tbl_users` SET `userfname`= '$data[1]',`userlname`= '$data[2]',`userunit`= '$data[3]' WHERE `userid` = $data[0]";

chciałbym dołączyć możliwość (w tym przypadku) update zdjęcia.

Oczywiście piszę o kodzie zawartym w poście #3

2018-11-06 14:35:50 Post #7 guest_gosc

 
No dobrze, ale z tego co zrozumialem to wczesniej robiles juz operacje na pliku. Pliki .jpg niczym sie tutaj nie roznia. Plik to plik

2018-11-06 14:59:13 Post #8 Pupcioch

 
Nie umiem zrobić update i delete w powyższym pliku ;/
Aż wstyd to pisać...

2018-11-06 15:04:13 Post #9 guest_gosc

 
No a gdzie w formularzu masz pole input type="file" ? No jak chcesz wgrac plik na serwer to musi to pole byc

2018-11-06 15:38:32 Post #10 Pupcioch

 
<td>Skan:</td><td><img src="images/<?php echo $row['mikroPic']; ?>" class="" width="50px" height="30px" /></td>

Miejsce na przycisk jest przewidziane w miejscu napisu 'Skan' .

2018-11-06 15:48:34 Post #11 guest_gosc

 
Po raz kolejny powtarzam: masz miec pole input type="file". Tylko to pole pozwala na upload plikow.

2018-11-06 15:51:14 Post #12 Pupcioch

 
Poprawiłem formularz, spokojnie.

<?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" 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>

2018-11-06 16:20:32 Post #13 guest_gosc

 
No i dobrze. Teraz musisz normalnie ten plik odbierac z $_FILES jak to robiles w pierwszym poscie

2018-11-06 16:44:18 Post #14 Pupcioch

 
Chyba pobrane. Da się to zrobić na tablicy w funkcji? Tych plików będę miał docelowo 10...

<?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>

2018-11-06 18:02:49 Post #15 guest_gosc

 
Nie widze bys cokolwiek z tymi danymi pobranymi z $_FILES robil.
Ale tak, mozna napisac funkcje ktora bedzie powtarzala kod

2018-11-06 19:38:05 Post #16 Pupcioch

 
No bo właśnie za chińskiego boga nie wiem jak to dalej ugryźć.

Teoretycznie chciałbym zrobić funkcję z tablicami na zasadzie tej, którą już mam tj $posts = array(); i w razie konieczności rozbudowy o dodatkowe pola po prostu dopisywać zmienne tablicowe dla pliku/ plików.

Druga rzecz nie wiem, po prostu nie wiem jak to dalej rozszerzyć np na update rekordów, powiedzmy w tym fragmencie kodu:

// 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();
}
}

Gdzie mam to wstawić...? Jak skorzystać z tej funkcji, której jeszcze nie mam...? Podejrzewam, że to będzie tablica dwuwymiarowa z funkcją dwuargumentową...
Mam nadzieję, że Pan rozumie mój tok myślenia.

Jeśli mogę prosić o dalszą pomoc lub nawet napisanie kilku linijek to bardzo bym prosił.

2018-11-08 10:21:01 Post #17 guest_gosc

 
Zapomnij na razie o kilku. Skup sie na jednym.

Skoro zrobiles insert, to update robisz bardzo podobnie. Ot nadpisujesz. No nie wiem za bardzo w czym problem

2018-11-08 10:52:03 Post #18 Pupcioch

 
ok...
Tu jest kod, który nie do końca chce mi działać:

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

mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);

// Kontakt z bazą (i z mózgiem)
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']);
return $posts;
}


// }




// Szukanie

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'];
$userkmicnad = $row['kmiknad'];
$userkmicod = $row['kmikod'];
//$mikroPic = $row['mikroPic'];
}
}else{
echo 'Brak danych dla podanego ID';
}
}else{
echo 'Błąd wyniku';
}
}



// Wstaw

if(isset($_POST['insert']))
{
$data = getPosts(); // dane z tablicy


// Przechwycam dane z inputa
$mikroPic = $_FILES['mikroPic']['name'];
$tmp_dir = $_FILES['mikroPic']['tmp_name'];
$imgSize = $_FILES['mikroPic']['size'];

$upload_dir = 'images/'; // Katalog do uploadu

$imgExt = strtolower(pathinfo($mikroPic,PATHINFO_EXTENSION)); // Odcinam rozrzeszenie

$valid_extensions = array('jpeg', 'jpg', 'png', 'gif'); // obsługiwane formaty plików

$mikroPic = rand(1000,1000000).".".$imgExt; // zmiana nazwy pliku (doklejam licznę losową)

if(in_array($imgExt, $valid_extensions)) // zezwól na prawidłowe formaty plików obrazów
{
if($imgSize < 5000000) // kontrola zadanej wartośći do 5 MB (może zmniejszę do dwóch
{
move_uploaded_file($tmp_dir,$upload_dir.$mikroPic);
}
else
{
$error_message = "Za duży plik";
}
}
else
{
$error_message = "Tylko pliki typu: JPG, JPEG, PNG & GIF.";



$insert_Query = "INSERT INTO `tbl_users`(`userid`, `userfname`, `userlname`, `userunit`, `kmiknad`, `kmikod`, `mikroPic`) VALUES ('$data[0]','$data[1]','$data[2]','$data[3]','$data[4]','$data[5]','$mikroPic')";
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();
}
}
}



// Usuwanie

if(isset($_POST['delete']))
{
$data = getPosts();
$delete_Query = "DELETE FROM `tbl_users` WHERE `id` = $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]',`kmiknad`= '$data[4]',`kmikod`= '$data[5]' 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>
</head>
<body>

<form action="szukanie.php" method="post">
</br>
<table align="center" >
<tr>
<td>ID Kadrowe:</td><td><input type="number" name="userid" placeholder="ID Kadrowe" value="<?php echo $userid;?>"></td>
</tr>
<tr>
<td>Imię:</td><td><input type="text" name="userfname" placeholder="Imię" value="<?php echo $userfname;?>"></td>
</td>
<tr>
<td>Nazwisko:</td><td><input type="text" name="userlname" placeholder="Nazwisko" value="<?php echo $userlname;?>"></td>
</tr>
<tr>
<td>Jednostka:</td><td><input type="text" name="userunit" placeholder="Jednostka" value="<?php echo $userunit;?>"></td>
</tr>
<tr>
<td>Karta Mikro Nadane:</td><td><input type="date" name="kmiknad" value="<?php echo $kmiknad;?>"></td>
</tr>
<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" accept="image/*"></td><td><img src="images/<?php echo $row['mikroPic']; ?>" class="" width="30px" height="20px" /></td>
</table>
</br>
</br>

<table align="center">
<tr>
<td><input type="submit" name="insert" value="Dodaj"></td>
<td><input type="submit" name="update" value="Uaktualnij"></td>
<td><input type="submit" name="delete" value="Usuń"></td>
<td><input type="submit" name="search" value="Znajdź"></td>
<td><input type="reset" value="Wyczyść" name="Wyczyść"></td>
</tr>
</table>
</form>
</body>
</html>

Zwykłe zapytania są ok, mam tylko problem z plikiem ze zdjęciem.
Nie bardzo też mogę skupić się na jednym, gdyż będę potrzebował docelowo 10 takich zdjęć. Jak już ktoś mi wytłumaczy krok po kroku, jak to zrobić to resztę kodu sobie dopiszę.
Jakby Pan był tak uprzejmy i pokazał mi palcem jak do chłopka małorolnego gdzie robię błąd to w sumie temat byłby rozwiązany.

Niedziałająca część zaczyna się od komentarza
// Wstaw.

2018-11-08 11:07:09 Post #19 guest_gosc

 
"Wstaw" jest jeszcze przed INSERT wiec insert tez ci nie dziala? Co konkrertnie ci nie dziala? Jakie bledy dostajesz?

2018-11-08 12:25:41 Post #20 Pupcioch

 
Tylko i wyłącznie operacje na pliku. Nie bardzo wiem jak to zaimplementować.
Tylko plik.
Wrzuciłbym zdjęcie formularza to by wtedy była jasność zagadnienia.
Generalnie- chcę rozszerzyć funkcjonalność tej aplikacji o obsługę zdjęć i nie wiem jak to zrobić.

Formularz wygląda tak:
https://zapodaj.net/844124b6b5429.jpg.html

To da obraz zagadnieniu.

Answer

1 2 >

Recently commented

  1. Mysql - FAQ Paweł
  2. Pager 2.5.1 oraz EPa... Na szybko2
  3. Pager 2.5.1 oraz EPa... Sławek
  4. Mysql - FAQ Piotr
  5. Liczba dni roboczych Na szybko2
  6. Liczba dni roboczych Naszybko
  7. Klasa widoku nospor

Categories

  1. wszystkie wszystkie komentarze all (1)