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

Znacznik <a> w <input>

Object Storage Arubacloud
0 głosów
263 wizyt
pytanie zadane 14 stycznia 2019 w PHP przez progNewbie Obywatel (1,130 p.)

Hej Wam.

Zawsze sprawia mi to mega trudności, a tym razem nie mogę przez to całkowicie przejść.

Chciałbym umieścić w input submit, znacznik <a>.

Bez osadzenia znacznika <a> w inpucie, wygląda on tak:

<a href="uploads/<?php echo $file_procedure; ?>" target="_blank">Podejrzyj</a>

Czyli w folderze uploads szuka pliku o nazwie $file_procedure i otwiera go w nowej karcie.

Chciałbym jednak umieścić to w input submit aby oprócz wywołania danego pdf'a w nowej karcie, również zachodziła zmiana w bazie danych.

Czy mógłby mi ktoś pomóc aby osadzić to w takim inpucie?

<input type="submit" value="Tutaj treść znacznika <a>" />

1 odpowiedź

+1 głos
odpowiedź 14 stycznia 2019 przez Comandeer Guru (600,810 p.)
wybrane 14 stycznia 2019 przez progNewbie
 
Najlepsza
Ale tak się nie robi. Tego typu konstrukcja jest nieprawidłowa i nie będzie działać poprawnie w przeglądarkach. Albo link, albo przycisk – koniec.

Jeśli chcesz otworzyć plik przy równoczesnej aktualizacji jakichś danych w bazie, to zrób link do skryptu PHP, który uaktualni dane, a następnie wczyta PDF jako załącznik albo po prostu do niego przekieruje.
komentarz 14 stycznia 2019 przez progNewbie Obywatel (1,130 p.)
Super, dziękuję za dobrą radę. Niestety samo przekierowanie nie spełnia w pełni moich potrzeb.

Potrzebuję okodować to w ten sposób aby ten plik PDF otwierał się w nowym oknie w przeglądarce. Mogę prosić o jeszcze jedną poradę? :)
komentarz 14 stycznia 2019 przez Comandeer Guru (600,810 p.)

[target=_blank] na linku tego nie rozwiąże? Wówczas skrypt otworzy się w nowym oknie i po skończonej robocie w tym oknie wczyta plik PDF.

komentarz 14 stycznia 2019 przez progNewbie Obywatel (1,130 p.)
Wytłumaczę może o co w ogóle mi chodzi i po co tego potrzebuję aby łatwiej sobie to wyobrazić.

Chciałbym aby po kliknięciu w link otwierał się plik PDF w nowej karcie, a następnie aby z automatu w bazie danych zmieniał się status danej pozycji z "Nieprzeczytane" na "Przeczytane".

Ścieżka do danego pdf'a to uploads/$file_procedure
komentarz 14 stycznia 2019 przez progNewbie Obywatel (1,130 p.)
Dobra wiem chyba o czym mówisz, wpadłem na pomysł. Dzięki i idę sprawdzić.
komentarz 14 stycznia 2019 przez progNewbie Obywatel (1,130 p.)

hmmmm, okej dziękuję za naprowadzenie. Najpierw użyłem target=blank, a w nowej karcie dodałem skrypt zmieniający dane w bazie danych oraz przy pomocy header przekierowałem do danego PDF'a.

Tutaj też napotykam dość elementarny brak wiedzy (tak przypuszczam). Umieszczam poniżej zdjęcie i opis o co mi chodzi.

Więc tak w kolumnie file mamy aktualnie link, który przenosi nas do skryptu php w nowej karcie, który w bazie danych zmienia daną z kolumny status z "Nieprzeczytane" na "Przeczytane", a następnie przekierowuje do wybranego PDF'a.

Wcześniej działało to na podstawie formularza i w dobry sposób były przekazywane informacje, który rekord jest aktualnie rozpatrywany. Natomiast aby PDF wyświetlał się w nowej karcie zmieniłem skrypt tak jak opisywałem wyżej. 

Aktualnie do przekazywania tych informacji używam zmiennych sesyjnych, niestety obsługują one tylko ostatni rekord co rozumiem bo nie mam żadnego "uchwytu", który rozróżniałby z którego rekordu te zmienne sesyjne mają brać informacje.

Czyli nawet jeżeli klikam w link z rekordu o id = 1 to status zmienia się dla rekordu od id = 2

Przy użyciu pętli while wypluwam dane z bazy danych.

komentarz 14 stycznia 2019 przez Comandeer Guru (600,810 p.)

Przekazuj id pliku w adresie linku: pobierz-pdf.php?id=<id-pliku>. Po stronie skryptu odbierzesz to przez $_GET.

komentarz 14 stycznia 2019 przez progNewbie Obywatel (1,130 p.)
Genialne! Dzięki wielkie za pomoc. Pozdrawiam!

Podobne pytania

0 głosów
2 odpowiedzi 361 wizyt
pytanie zadane 19 grudnia 2015 w HTML i CSS przez TomaszGasior Obywatel (1,210 p.)
0 głosów
0 odpowiedzi 259 wizyt
pytanie zadane 28 stycznia 2017 w HTML i CSS przez Szymon Wesołowski Początkujący (280 p.)
0 głosów
1 odpowiedź 509 wizyt
pytanie zadane 16 listopada 2022 w PHP przez zbiku25 Bywalec (2,940 p.)

92,555 zapytań

141,402 odpowiedzi

319,540 komentarzy

61,938 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!

...