ďťż

Jak użyć zmiennej z innego pliku php

       

Podstrony


telcocafe

Mam taki problem. Stworzyłem w pliku "a" jąkąś zmienną, której wartością jest ciąg wpisany w pole txtowe. Utowrzyłem plik "b" i chciałbym móc posługiwać się zmienną z pierwszego pliku. Czy jest możliwość "przeniesienia" nazwy i wartości zmiennej z jednego pliku do drugiego bez konieczności zapisywania jej w pliku??




Mam taki problem. Stworzyłem w pliku "a" jąkąś zmienną, której wartością jest ciąg wpisany w pole txtowe. Utowrzyłem plik "b" i chciałbym móc posługiwać się zmienną z pierwszego pliku. Czy jest możliwość "przeniesienia" nazwy i wartości zmiennej z jednego pliku do drugiego bez konieczności zapisywania jej w pliku??


Poczytaj o sesjach.

zrobiłem cook'a i wszytko śmiga:D dzięki




E tam zaraz o sesjach :P Ja proponuję jeszcze zastosować cookies lub przekazywanie zmiennych w adresie metodą GET ew. zastosowanie metody POST. Tak więc wybór dość spory jest :)


cool :) w tym przypadku ciacha będą prawie miały taki sam efekt jak sesje :) tylko będą podatne na modyfikacje


zrobiłem cook'a i wszytko śmiga:D dzięki


Do czasu, aż ktoś wyłączy ciacha w swojej przeglądarce.
[...]


W jakimś serwisie hostingowym dane są przekazywane za pomocą GET i dzięki temu możesz przejąć konto dowolnej osoby która je tam posiada... Tej metody nie polecam (podobnie jak ciach)...  :excl:


Niektóre przeglądarki w ogóle cookies nie obsługują...


To już raczej rzadkość :)
Zauwamy jednak że czasami zmienne przekazywane w GET są wygodnym rozwiązaniem bo np. możemy przechodzić na podstrony zmieniając tylko kilka znaków w adresie itd. A co do bezpieczeństwa to już wczesniej pisałem co warto stosować. Co do możliwości wyłączenia cookies w przeglądarce to wystarczy napisać ,że strona wymaga włączonych cookies i już , jak ktoś sie upiera i nie włączy to jego problem . Zresztą takich osób unikających cookies jest dość mało i są to osoby wiedzące (moim zdaniem) zbyt wiele o tym co można zdziałać z cookies choć ja uważam ,że tak naprawdę nie sa one wielkim zagrożeniem i nie obawiam sie korzystania z nich:)


Masz oczywiście rację!
W takich przypadkach GET jest najlepszym rozwiązaniem.

Jednak jeżeli chodzi o ciasteczka, to jednak warto się uniezależnić od klienta i stosować takie przekazywanie danych, żeby to ominąć.
Spotkałem się kiedyś ze sklepem internetowym, którego koszyk był przechowywany w Cookies. No zgroza. Mogłem dowolnie modyfikować umieszczone tam dane. Administrator sklepu długo się potem tłumaczył, że komputera nie może mi sprzedać za 100 zł.
To tylko przykład, ale pokazuje jak trzeba zaprojektować aplikację, aby dane były przekazywane w sposób adekwatny do ich ważności.

Pozdrawiam


Ale na złe nawyki niektórych webmasterów nic się nie poradzi choć czasami aż kusi żeby taką stronkę shackować :D


I tak się robi ... oczywiście nie ja, ale znam takich.


:lol: Oj czuję ,że gdyby hakerzy sie dobrali do stronek to co najmniej 3/4 tych ,które używają php byłaby shackowana :) Zwłaszcza ,że tych niebezpiecznych miejsc umożlwiających 'zabawę' z cudzą stronką jest sporo. Ja jednak staram się nie zwracać na takie rzeczy uwagi  :rolleyes:  bo wychodzę z założenia ,że dla wielu osób ,które zaczynają swoją przygodę z php największym sukcesem jest to ,że ich skrypt wogóle działa ,choć czasami taka małą ingerencja może zmotywować do poprawienia kodu :) Ale cóż żyjemy w świecie w ktróym nie wszyscy zadowalają sie tym ,że dana stronka działa bo niektórzy wolą się pobawić i przetestować czy ona rzeczywiście nie zawiera żadnych błędów :D Choć dla mnie to żadna zabawa zmarnować komuś jego (często wielogodzinne) wysiłki bo to co dla nas wydaję się zabawne nie dla wszystkich takie jest ;)


Tak się składa, że od kilku lat zajmuje się PHP i muszę stwierdzić, że bardzo dużo ludzi wierzy domorosłym programistom, którzy za pare złociszy napiszą PIĘKNY serwis, ale zupełnie otwarty.


No fajnie się gada :) Myślę ,że autor posta rano się ucieszy ,że ma tyle odpowiedzi ,a czytając naszą dyskusję zdobędzie parę dodatkowych informacji :) Bo w sumie nie są one nieprzydatne - dziś trzeba w pierwszej kolejności stawiać na bezpieczeństwo wykorzystując wszelkie możliwe metody :) Tylko wtedy można pisać porządne skrypty w PHP :]


No fajnie się gada smile.gif Myślę ,że autor posta rano się ucieszy ,że ma tyle odpowiedzi ,a czytając naszą dyskusję zdobędzie parę dodatkowych informacji smile.gif Bo w sumie nie są one nieprzydatne - dziś trzeba w pierwszej kolejności stawiać na bezpieczeństwo wykorzystując wszelkie możliwe metody smile.gif Tylko wtedy można pisać porządne skrypty w PHP :]

heheh...pewnie, ze się ucieshy. całkowicie przypadkowo zacząłem nie tak całkiem offtopicową dyskusję o bezpieczeństwie w php :D Mój skrypcik nie będzie używany(jak narazie) przez większ liczbę osób, tzn. narazie mam go na localhoscie i tam raczej pozostanie. Tak poczytałem sobie wasze "rozwarzania" i postanowiłem jednak zgłębić temat sesji. Wyczytałem, że jeżeli php nie ma włączonej funkcji inicjowania sesji to trzeba to zrobić poleceniem session_start(), że zmienne można rejestrowac //session_register()// i wyrejestrowywać//session_unregister()// i są one zapisywane w superglobalnej zmiennej $_SESSION jako tablice oraz, że można odrazu dopisywać wartości do zmiennej $_SEESION bez konieczności rejestracji.(napisałem to wszytsko po to żebyście wiedzieli co wiem i czy to co wiem dobrze rozumiem :D )Wszystko to teoria...chciałem zrobić test. Stworzyłem plik "a" i wklepałem taki kod:
<? $a=15; $_SESSION[2]=$a; ?> <html> <a href="b.php"> dalej</a> </html>
potem stworzyłem plik "b":
<? echo "$_SESSION[2]" ?>
i..jak by to ująć.....pupa..nic się nie wyświetla. Co zrobiłem źle??

pawluch4 musisz jeszcze uzyc session_start(); na samym poczatku kazdego dokumentu gdzie ma wystepowac sesja, oraz session_register() przy tworzeniu sesji. Zreszta przeanalizuj ten kod:http://www.webpl.org/index.php/porady/php/1100214220


pawluch4 musisz jeszcze uzyc session_start(); na samym poczatku kazdego dokumentu gdzie ma wystepowac sesja,  oraz session_register() przy tworzeniu sesji. Zreszta przeanalizuj ten kod:http://www.webpl.org/index.php/porady/php/1100214220

Zmieniłem kod pliku "a" na:

<? session_start(); $a=15; session_register('a'); ?> <html> <a href="plik2.php"> dalej</a> </html>

a pliku "b" na:
<? session_start(); echo "$a" ?>
i teraz wszystko działa.
.:DzIuDek:. ™,czy w ten sposób omijasz konieczność używania $_SESSION,
Użytkownik pawluch4 edytował ten post 24 grudzień 2005, 15:09
Cóż, znowu blędy:

<? session_start(); $a=15; session_register('a');   ?>

Przy korzystaniu z tablicy $_SESSION (lub $HTTP_SESSION_VARS) nie nalezy korzystać z funkcji session_register(), session_is_registered() i session_unregister().

<? $b=$_SESSION[a]; ?>
http://pl.php.net/ma...s.array.foo-bar

i teraz wszystko działa.

na tak, ale z tego co mówił .:DzIuDek:. ™

obsługi register_globals - bo jest to też rzadko stosowane rozwiązanie i do tego niebezpieczne.
więc żeby nie musieć używać superglobalnych zmiennych trzeba posłużyć się session_register().


na tak, ale z tego co mówił .:DzIuDek:. ™

więc żeby nie musieć używać superglobalnych zmiennych trzeba posłużyć się session_register().

A ja osobie tak pomyślałem, że (o ile dobrze zrozumiałem) to można użyć funkcji require, lub include
<?
include plik.php
$zmienna2:=tekst_w_zmiennej_1'
?>
Coś takiego może działać? Bo się tak też tylko upewniam :)

tak :) include/reqiure dołącza treść pliku czyli wynik jest taki sam jak kod byłby umieszczony w tym samym pliqu ;)

Czyli to będzie to samo, co podali koledzy wyżej, tylko krócej? :P

  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.