Przycisk który wywołuje zmienną SQL

Odpowiedz Nowy wątek
2019-08-06 19:06
0

Witam, posiadam taki skrypt ale totalnie nie potrafię jakoś zebrać się do tego aby pod przycisk podpisać zmienna $zapisz żeby po kliknięciu była wywoływana.

W linku wstawiam kawałek kodu z którym mam problem.

KOD

ps. przepraszam za wcześniejszy błąd w poście

Pozostało 580 znaków

2019-08-07 16:55
0

Nie. W zmiennej $procent masz już odpowiednie dane. Musisz je tylko wyciągnąć:

$procent = explode(",", $procent);
$ozsproc = $procent[0];
$ozsdproc = $procent[1];
Coś chyba zrobiłem źle, bo nie zmienia mi dalej rekordów w bazie danych :/ - Drzewko96 2019-08-08 07:04

Pozostało 580 znaków

2019-08-07 17:35
0

tak?


$procent = explode(",", $procent);
$ozsproc = $procent[0];
$ozsdproc = $procent[1];
$rkod = explode(",", $rkod/$msod);
$ozsod = $rkod[0];
$ozsod = $msod[1];
$rkdo = explode(",", $rkdo/$msdo);
$ozsdo = $rkdo[0];
$ozsdo = $msdo[1];
?>```
edytowany 1x, ostatnio: Drzewko96, 2019-08-07 17:36

Pozostało 580 znaków

2019-08-08 07:25
0

Nie, źle robisz. Po pierwsze, w bazie musisz zaktualizować następujące pola: ozsproc, ozsdproc, ozsod, ozsdo. To po pierwsze. O ile dwa pierwsze pola ozsproc i ozsdproc masz już zrobione o tyle dwa pozostałe musisz zrobić w taki sposób aby zachowany był format przechowywania danych. Czyli pole ozsod ma format XXX.XXX (gdzie X to jakaś tam liczba). Tak naprawdę jest to "zlepienie" dwóch stringów, $rkod oraz $msod i rozdzielenie ich . za trzecim znakiem. Czyli:

$ozsod = $rkod.$msod;

Zwróci Ci to wynik 201610. Teraz musisz wstawić tutaj . za trzecim znakiem. Najprościej funkcją substr(), czyli:

$ozsod = substr($ozsod, 0, 3).".".substr($ozsod, -3);

To zwróci Tobie już format taki jaki chciałeś czyli 201.610, to samo zrób dla drugiego pola $ozsdo

Pozostało 580 znaków

2019-08-08 07:31
0
 <?php

$pusrid = $_POST['pusrid'];
$nr_z_adr= $_POST['nr_z_adr'];
$procent= $_POST['procent'];
$rkod= $_POST['rkod'];
$msod= $_POST['msod'];
$rkdo= $_POST['rkdo'];
$msdo= $_POST['msdo'];

$procent = explode(",", $procent);
$ozsproc = $procent[0];
$ozsdproc = $procent[1];
$ozsod = $rkod.$msod;
$ozsod = substr($ozsod, 0, 4).".".substr($ozsod, -3);
$ozsdo = $rkdo.$msdo;
$ozsdo = substr($ozsdo, 0, 4).".".substr($ozsdo, -3);

print "Id użytkownika: $pusrid<br>";
print "Numer działu: $nr_z_adr<br>";
print "%: $procent<br>";
print "Rok i miesiąc od kiedy: $ozsod<br>";
print "Rok i miesiąc do kiedy: $ozsdo<br>";

?>

dobrze pozmieniałem ten kod i dopisałem tamte rzeczy?

edytowany 2x, ostatnio: Drzewko96, 2019-08-08 07:31

Pozostało 580 znaków

2019-08-08 07:53
0

Wygląda na to, że dobrze. Teraz "zbuduj" zapytanie SQL do aktualizacji. UPDATE nazwa.bazy SET pole = wartosc, pole2 = wartosc, pole3 = wartosc WHERE id = idrekordu

edytowany 1x, ostatnio: leonpro778, 2019-08-08 07:54

Pozostało 580 znaków

2019-08-08 08:00
0
$aktualizuj= "UPDATE ".$library."/ozs SET ozsproc =".$procent.", ozsdproc=".$procent.", ozsod=".$ozsod.", ozsdo=".$ozsdo." where ozsid=".$nr_z_adr.";

Dobrze?

EDIT: chyba źle bo nie zdefiniowałem jeszcze gdzie ma działać taka zmienna $aktualizuj, prawda?

edytowany 1x, ostatnio: Drzewko96, 2019-08-08 08:01

Pozostało 580 znaków

2019-08-08 08:02
0

Źle :) Dla ozsproc wartość jest w $ozsproc a dla ozsdproc jest $ozsdproc. Po to "rozbijałeś" tą zmienną. Co do $aktualizuj to musisz teraz wykonać to zapytanie.

edytowany 1x, ostatnio: leonpro778, 2019-08-08 08:03

Pozostało 580 znaków

2019-08-08 08:04
0
$aktualizuj= "UPDATE ".$library."/ozs SET ozsproc =".$ozsproc.", ozsdproc=".$ozsdproc.", ozsod=".$ozsod.", ozsdo=".$ozsdo." where ozsid=".$nr_z_adr."";

teraz? :)

Pozostało 580 znaków

2019-08-08 08:06
1
Drzewko96 napisał(a):
$aktualizuj= "UPDATE ".$library."/ozs SET ozsproc =".$ozsproc.", ozsdproc=".$ozsdproc.", ozsod=".$ozsod.", ozsdo=".$ozsdo." where ozsid=".$nr_z_adr."";

teraz? :)

Zapomniałeś o '

$aktualizuj= "UPDATE ".$library."/ozs SET ozsproc ='$ozsproc', ozsdproc='$ozsdproc', ozsod='$ozsod', ozsdo='$ozsdo' where ozsid=$nr_z_adr"

I dalej:

$stmt_ozs = db2_query($conn, $aktualizuj);

  if (!$stmt_ozs) {
    print"Prepare Failed. Błąd w aktualizacji bazy ozs <br>";
    exit();
  }
edytowany 2x, ostatnio: leonpro778, 2019-08-08 08:08

Pozostało 580 znaków

2019-08-08 08:16
0

Działa! jesteś wielki, jak mogę Ci się odwdzięczyć? teraz tylko stworze do tego jakąś ładną ramke i bedzie gotowe :) Dziekuję!

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0