Skip to main content

Μεταβλητές PHP - Διάρκεια

Όταν μεταφέρουμε δεδομένα από φόρμες, στις PHP σελίδες μας, μπορούμε να χρησιμοποιήσουμε 4 διαφορετικούς τύπους μεταβλητών/μεθόδων. Κάθε τύπος έχει το δικό του τρόπο απεικόνισης και τη δική του διάρκεια.
Πιο αναλυτικά, έχουμε τις μεταβλητές $_GET, $_POST, $_SESSION και $_COOKIE.
  • Με τη μέθοδο GET, τα δεδομένα που μεταφέρονται από σελίδα σε σελίδα ενσωματώνονται στο url. Έτσι, αν δούμε το url μιας σελίδας στο Internet να είναι
    αντί για
    σημαίνει πως με τη μέθοδο GET μεταφέρονται από τη μία σελίδα στην άλλη το Session_Id και το όνομα(name).
  • Με τη μέθοδο POST, τα δεδομένα μεταφέρονται από τη μία σελίδα στην άλλη μέσα στην αίτηση απόκρισης του browser προς τον server. Είναι η πλέον ενδεδειγμένη μέθοδος για την αποστολή σημαντικών στοιχείων στον server, όπως πχ. του κωδικού πρόσβασης, αφού τα στοιχεία δεν δημοσιεύονται στο url της σελίδας.
  • Με τη μέθοδο SESSION τα στοιχεία που επιλέγουμε, κρατούν τις τιμές τους, μέχρι ο χρήστης να κλείσει τον Browser ή μέχρι να περάσει ο μέγιστος χρόνος αδράνειας, όπως ορίζεται από τις ρυθμίσεις του server.
  • Η μέθοδος COOKIE είναι η μόνη από τις 4 μεθόδους, που χρειάζεται τη δικαιοδοσία του χρήστη. Το πρόγραμμα-ιστοσελίδα αποθηκεύει συγκεκριμένες πληροφορίες, που έχει ορίσει ο προγραμματιστής,σε αρχεία στον υπολογιστή του χρήστη, τα οποία ονομάζονται cookies. Σε περίπτωση, λοιπόν, που ο χρήστης ξανασυνδεθεί στη σελίδα που χρησιμοποιεί τα cookies, η σελίδα θα τον αναγνωρίσει και θα τον συνδέσει χωρίς να χρειάζεται εκ νέου πληκτρολόγηση των στοιχείων του.

Συνοπτικά λοιπόν προκύπτει το παρακάτω πινακάκι
GET1 Σελίδα
POST1 Σελίδα
SESSIONΜέχρι να κλείσει ο χρήστης τον browser
Μέχρι να ξεπεραστεί ο μέγιστος χρόνος αδράνειας
COOKIESΜέχρι να τα σβήσει ο χρήστης
Μέχρι να λήξουν(όσο ορίζει ο προγραμματιστής)

Τέλος, να σημειωθεί πως η JavaScript μπορεί να διαβάσει τις τιμές των cookies, ως client-side γλώσσα προγραμματισμού, αλλά όχι των άλλων μεθόδων.


Popular posts from this blog

Configure drupal_http_request() on the fly

The drupal_http_request() function supports connections using a proxy. You can configure a global proxy to use for all drupal_http_request() callbacks from the settings.php file of your website/installation by filling the following lines with the proper information:For those of you preferring a UI, then HTTP proxy module is for you.But what if you only want to use a proxy in some cases; like a custom module? In that case you will need the following function(modify accordingly):Now all you have to do is Call <?php _MYMODULE_change_proxy(); ?>.Do your drupal_http_request() calls.Call <?php _MYMODULE_change_proxy(TRUE); ?> to reset your previous settings.

Drupal: Allow registrations through Invite or Referral modules only

The Invite module provides invitations from existing users to their contacts. The Referral module, in contrary, creates a special URL for each existing user, which can be found in each user's profile, and allows new user registration. Even though, these two modules seem to provide the same functionality, they don't (and they shouldn't). Invite module, provides a mechanism for a site administrator to limit new registrations to "Invitations only". Referral module doesn't provide any of this functionality. Some users have requested the Invite module and Referral module to join in one module. Until now, there isn't anything to that direction. Wouldn't it be great though if there was a solution to limit drupal registration to referral or invitation only? Copy the functions below to a refinvite.module file in your sites→all→modules→refinvite folder and enable the module. Then go to http://<your-address-here>/admin/user/settings and enable the new …

Send mass email to certain users using VBO

Views Bulk Operations uses the built-in actions to act upon nodes, users, entities etc. Among these actions is our ability to send emails to users. If you try to use this action though you will encounter a small but serious problem. You are asked for an email address to send your message. You might say "but I have selected the users I want this message to reach. Why should I input an address again?". Don't get overwhelmed. What this field expects is not an address but a token. Specially this token [user-email]. If the website is intended for you, then you might say that's not such a problem to write this token down again and again. But if the manager of the website is bound to be the client or if you just want to spend less time writing things down, you might prefer to use a custom hook_form_alter() callback to set a default value. It could be done in both theme and module environment so suit yourself. Just add the following in your module or theme.