Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] przeslanie parametrow
Forum PHP.pl > Forum > Przedszkole
codex
Mam linijkę która przekierowuje do skryptu php:
  1. <a href="skrypt.php">wykonaj</a>

Teraz chcę ten skrypt wykonać z parametrami, tak żeby w $argc była ilość natomiast w $argv - tablica.
Jak mam to zapisać?
rad11
Do przeglądarki używa się $_GET albo $_POST


$_GET:

  1. <a href="skrypt.php?param1=value1&param2=value2">wykonaj</a>
  2.  
  3. W pliku skrypt.php odbierasz w ten sposob:
  4.  
  5. $param1 = $_GET['param1'];
  6. $param2 = $_GET['param2'];
  7.  
  8. var_dump($param1, $param2);


$_POST:
  1. <form method="POST" action="skrypt.php">
  2.  
  3. <input name="param1" />
  4. <input name="param2" />
  5. <input type="submit"/>
  6. </form>
  7.  
  8. W pliku skrypt.php odbierasz w ten sposob:
  9.  
  10. $param1 = $_POST['param1'];
  11. $param2 = $_POST['param2'];
  12.  
  13. var_dump($param1, $param2);


A o tym co Ty piszesz używa się w console`ach.
codex
dzięki. $_GET działa, lecz wyczytałem tutaj , że w php można używać
superglobalnych w sposób znany z konsoli ... jakiś błąd czy inny sposób przekazania args'ów ?
Wyczytałem też, żeby nie używać $_GET lub używać tylko tam gdzie dane są nieistotne dla bezpieczeństwa ponieważ widać je w przeglądarce
( co zresztą się zgadza bo właśnie widzę ten efekt na ekranie ohno-smiley.gif )
Do tego nie chcę w tym przypadku użyć formularza więc $_POST hyba też odpada.
nospor
Cytat
że w php można używać
superglobalnych w sposób znany z konsoli ... jakiś błąd czy inny sposób przekazania args'ów ?

Cos zle przeczytales... Owszem, mozna uzywac argc ale tylko w skryptach odpalanych z konsoli.

Napisz poprostu co kombinujesz, co chcesz przekazywac itd to bedzie mozna ci pomoc. Na chwile obecna albo GET albo POST albo SESSION
codex
oto co chcę zrobić:
- jeżeli startowy plik serwisu "index.php" uruchamia się bez parametrów - będzie oznaczało, że użytkownik który przegląda stronę nie jest zalogowany.
- jeżeli prześlę argument określający, użytkownika zalogowanego, wtedy ta sama strona index.php ma wyglądać nieco inaczej ( wyświetlanie nazwy usera, itd.)
oczywiście metoda odczytu $_GET odpada ponieważ każdy może sobie wstawić parametr w pasku przeglądarki lub np. próbować chociażby nawet bruteforce.
SzpaaQ
Cytat(codex @ 3.12.2015, 21:04:14 ) *
oto co chcę zrobić:
- jeżeli startowy plik serwisu "index.php" uruchamia się bez parametrów - będzie oznaczało, że użytkownik który przegląda stronę nie jest zalogowany.
- jeżeli prześlę argument określający, użytkownika zalogowanego, wtedy ta sama strona index.php ma wyglądać nieco inaczej ( wyświetlanie nazwy usera, itd.)
oczywiście metoda odczytu $_GET odpada ponieważ każdy może sobie wstawić parametr w pasku przeglądarki lub np. próbować chociażby nawet bruteforce.


z $_POST wystarczy spojrzeć w źródło i też widać parametry. czemu nie zrobisz formularza z logowaniem?
codex
no mam formularz z logowaniem - formularz obsługuję w osobnym pliku acess.php a ten z kolei robi przekierowanie na strone domową (index.php). Jeżeli mówisz, że $_POST też można podejżeć .... to jak sobie z tym radzą zawodowcy ?
edit: chyba na razie spróbuję przepisać cały kod index.php tak, żeby generował się automatycznie. Czekam na lepsze rozwiązania.
SzpaaQ
Cytat(codex @ 3.12.2015, 21:47:51 ) *
no mam - formularz obsługuję w osobnym pliku acess.php a ten z kolei robi przekierowanie na strone domową (index.php). Jeżeli mówisz, że $_POST też można podejżeć .... to jak sobie z tym radzą zawodowcy ?
edit: chyba na razie spróbuję przepisać cały kod index.php tak, żeby generował się automatycznie. Czekam na lepsze rozwiązania.

to ja już nie wiem co chcesz zrobić biggrin.gif ale

Cytat
- jeżeli startowy plik serwisu "index.php" uruchamia się bez parametrów - będzie oznaczało, że użytkownik który przegląda stronę nie jest zalogowany.
- jeżeli prześlę argument określający, użytkownika zalogowanego, wtedy ta sama strona index.php ma wyglądać nieco inaczej ( wyświetlanie nazwy usera, itd.)

jeśli chodzi tylko o to to proste rozwiązanie, jeśli masz logowanie to gdzie problem? sprawdz w index.php czy jest gość zalogowany i żadnych parametrów nie potrzeba o ile logowanie nie ogranicza się tylko do
  1. if($dane == 'się zgadzają') header('location: index.php');

a jesli tak to poszukaj w manualu setcookie()
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.