Πέμπτη, 10 Αυγούστου, 2023
spot_img
ΑρχικήPHPPHP Web Concepts - Έννοιες Ιστού

PHP Web Concepts – Έννοιες Ιστού

PHP Web Concepts – Έννοιες Ιστού

Λειτουργίες που αφορούν PHP Web Concepts – Έννοιες Ιστού

Αυτή η συνεδρία δείχνει πώς η PHP μπορεί να παρέχει δυναμικό περιεχόμενο σύμφωνα με τον τύπο του προγράμματος περιήγησης, τους αριθμούς που δημιουργούνται τυχαία ή την είσοδο χρήστη. Δείχνει επίσης πώς μπορεί να ανακατευθυνθεί το πρόγραμμα περιήγησης πελάτη.

Αναγνώριση προγράμματος περιήγησης και πλατφόρμας – Web Concepts

Η PHP δημιουργεί μερικές χρήσιμες μεταβλητές περιβάλλοντος που μπορούν να εμφανιστούν στη σελίδα phpinfo.php που χρησιμοποιήθηκε για τη ρύθμιση του  περιβάλλοντος PHP.
Μία από τις μεταβλητές περιβάλλοντος που ορίζονται από την PHP είναι η HTTP_USER_AGENT που προσδιορίζει το πρόγραμμα περιήγησης και το λειτουργικό σύστημα του χρήστη.
Η PHP παρέχει μια συνάρτηση getenv() για πρόσβαση στην τιμή όλων των μεταβλητών  περιβάλλοντος. Οι πληροφορίες που περιέχονται στη μεταβλητή περιβάλλοντος  HTTP_USER_AGENT μπορούν να χρησιμοποιηθούν για τη δημιουργία δυναμικού  περιεχομένου κατάλληλου για το πρόγραμμα περιήγησης.
Το παρακάτω παράδειγμα δείχνει πώς μπορείτε να αναγνωρίσετε ένα πρόγραμμα περιήγησης πελάτη και ένα λειτουργικό σύστημα.

<html>
   <body>
   
      <?php
         function getBrowser() { 
            $u_agent = $_SERVER['HTTP_USER_AGENT']; 
            $bname = 'Unknown';
            $platform = 'Unknown';
            $version = "";
            
            //First get the platform?
            if (preg_match('/linux/i', $u_agent)) {
               $platform = 'linux';
            }elseif (preg_match('/macintosh|mac os x/i', $u_agent)) {
               $platform = 'mac';
            }elseif (preg_match('/windows|win32/i', $u_agent)) {
               $platform = 'windows';
            }
            
            // Next get the name of the useragent yes seperately and for good reason
            if(preg_match('/MSIE/i',$u_agent) && !preg_match('/Opera/i',$u_agent)) {
               $bname = 'Internet Explorer';
               $ub = "MSIE";
            } elseif(preg_match('/Firefox/i',$u_agent)) {
               $bname = 'Mozilla Firefox';
               $ub = "Firefox";
            } elseif(preg_match('/Chrome/i',$u_agent)) {
               $bname = 'Google Chrome';
               $ub = "Chrome";
            }elseif(preg_match('/Safari/i',$u_agent)) {
               $bname = 'Apple Safari';
               $ub = "Safari";
            }elseif(preg_match('/Opera/i',$u_agent)) {
               $bname = 'Opera';
               $ub = "Opera";
            }elseif(preg_match('/Netscape/i',$u_agent)) {
               $bname = 'Netscape';
               $ub = "Netscape";
            }
            
            // finally get the correct version number
            $known = array('Version', $ub, 'other');
            $pattern = '#(?<browser>' . join('|', $known) . ')[/ ]+(?<version>[0-9.|a-zA-Z.]*)#';
            
            if (!preg_match_all($pattern, $u_agent, $matches)) {
               // we have no matching number just continue
            }
            
            // see how many we have
            $i = count($matches['browser']);
            
            if ($i != 1) {
               //we will have two since we are not using 'other' argument yet
               
               //see if version is before or after the name
               if (strripos($u_agent,"Version") < strripos($u_agent,$ub)){
                  $version= $matches['version'][0];
               }else {
                  $version= $matches['version'][1];
               }
            }else {
               $version= $matches['version'][0];
            }
            
            // check if we have a number
            if ($version == null || $version == "") {$version = "?";}
            return array(
               'userAgent' => $u_agent,
               'name'      => $bname,
               'version'   => $version,
               'platform'  => $platform,
               'pattern'   => $pattern
            );
         }
         
         // now try it
         $ua = getBrowser();
         $yourbrowser = "Your browser: " . $ua['name'] . " " . $ua['version'] .
            " on " .$ua['platform'] . " reports: <br >" . $ua['userAgent'];
         
         print_r($yourbrowser);
      ?>
   
   </body>
</html>

Αυτό παράγει το ακόλουθο αποτέλεσμα στο μηχάνημά μου. Αυτό το αποτέλεσμα μπορεί να είναι διαφορετικό για τον υπολογιστή σας ανάλογα με το τι χρησιμοποιείτε.

Your browser: Google Chrome 54.0.2840.99 on windows reports:
Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko)
Chrome/54.0.2840.99 Safari/537.36

Εμφάνιση εικόνων τυχαία – Web Concepts

Η συνάρτηση PHP rand() χρησιμοποιείται για τη δημιουργία ενός τυχαίου αριθμού. Αυτή η συνάρτηση μπορεί να δημιουργήσει αριθμούς εντός μιας δεδομένης περιοχής. Η γεννήτρια τυχαίων αριθμών θα πρέπει να δημιουργηθεί για να αποφευχθεί η δημιουργία κανονικού μοτίβου αριθμών. Αυτό επιτυγχάνεται χρησιμοποιώντας τη συνάρτηση srand() που καθορίζει τον αρχικό αριθμό ως όρισμα.
Το παρακάτω παράδειγμα δείχνει πώς μπορείτε να εμφανίζετε διαφορετική εικόνα κάθε φορά από τέσσερις εικόνες: 

<html>
   <body>
   
      <?php
         srand( microtime() * 1000000 );
         $num = rand( 1, 4 );
         
         switch( $num ) {
            case 1: $image_file = "/php/images/logo.png";
               break;
            
            case 2: $image_file = "/php/images/php.jpg";
               break;
            
            case 3: $image_file = "/php/images/logo.png";
               break;
            
            case 4: $image_file = "/php/images/php.jpg";
               break;
         }
         echo "Random Image : <img src=$image_file />";
      ?>
      
   </body>
</html>

Θα δώσει το ακόλουθο αποτέλεσμα:

Web Concepts

Χρήση φορμών HTML – Web Concepts

Το πιο σημαντικό πράγμα που πρέπει να προσέξετε όταν ασχολείστε με φόρμες HTML και PHP είναι ότι οποιοδήποτε στοιχείο φόρμας σε μια σελίδα HTML θα είναι αυτόματα διαθέσιμο στα σενάρια PHP σας.
Δοκιμάστε το παρακάτω παράδειγμα βάζοντας τον πηγαίο κώδικα στο σενάριο test.php.

<?php
   if( $_POST["name"] || $_POST["age"] ) {
      if (preg_match("/[^A-Za-z'-]/",$_POST['name'] )) {
         die ("invalid name and name should be alpha");
      }
      
      echo "Welcome ". $_POST['name']. "<br />";
      echo "You are ". $_POST['age']. " years old.";
      
      exit();
   }
?>
<html>
   <body>
   
      <form action = "<?php $_PHP_SELF ?>" method = "POST">
         Name: <input type = "text" name = "name" />
         Age: <input type = "text" name = "age" />
         <input type = "submit" />
      </form>
      
   </body>
</html>

Θα δώσει το ακόλουθο αποτέλεσμα:

Web Concepts

  • Η προεπιλεγμένη μεταβλητή της PHP $_PHP_SELF χρησιμοποιείται για το όνομα του σεναρίου PHP και όταν κάνετε κλικ στο κουμπί Submit – Υποβολή, τότε θα κληθεί το ίδιο σενάριο PHP και θα παράγει μήνυμα ανάλογα τη τιμή που δώσαμε στο Name και στο Age.
  • Η μέθοδος = “POST” χρησιμοποιείται για την ανάρτηση δεδομένων χρήστη στο σενάριο διακομιστή. Υπάρχουν δύο μέθοδοι δημοσίευσης δεδομένων στο σενάριο διακομιστή, οι οποίες συζητούνται στο κεφάλαιο PHP GET & POST.

Ανακατεύθυνση προγράμματος περιήγησης – Web Concepts

Η συνάρτηση PHP header() παρέχει ακατέργαστες κεφαλίδες HTTP στο πρόγραμμα  περιήγησης και μπορεί να χρησιμοποιηθεί για να το ανακατευθύνει σε άλλη τοποθεσία. Το σενάριο ανακατεύθυνσης πρέπει να βρίσκεται στην κορυφή της σελίδας για να αποτρέψει τη φόρτωση οποιουδήποτε άλλου τμήματος της σελίδας.
Ο στόχος καθορίζεται από την Location: header είναι το όρισμα στη συνάρτηση header(). Μετά την κλήση αυτής της συνάρτησης, η συνάρτηση exit() μπορεί να χρησιμοποιηθεί για  να σταματήσει την ανάλυση του υπόλοιπου κώδικα.
Το παρακάτω παράδειγμα δείχνει πώς μπορείτε να ανακατευθύνετε ένα αίτημα προγράμματος περιήγησης σε άλλη ιστοσελίδα. Δοκιμάστε αυτό το παράδειγμα βάζοντας τον πηγαίο κώδικα στο σενάριο test.php.

<?php
   if( $_POST["location"] ) {
      $location = $_POST["location"];
      header( "Location:$location" );
      
      exit();
   }
?>
<html>
   <body>
   
      <p>Choose a site to visit :</p>
      
      <form action = "<?php $_SERVER['PHP_SELF'] ?>" method ="POST">
         <select name = "location">.
         
            <option value = "http://www.tutorialspoint.com">
               Tutorialspoint.com
            </option>
         
            <option value = "http://www.google.com">
               Google Search Page
            </option>
         
         </select>
         <input type = "submit" />
      </form>
      
   </body>
</html>

Θα δώσει το ακόλουθο αποτέλεσμα:

Browser Redirection

Μπορείτε να ενημερωθείτε για την php στο σχετικό θεματικό τμήμα του blog μας που μπορείτε να δείτε εδώ.

Αν θέλετε να μάθετε περισσότερα για την κατασκευή ιστοσελίδας παρακολουθήστε το σεμινάριο Web Design και άλλα σεμινάρια εξ αποστάσεως από το Εργαστήριο ΤΠΕ Ήρων.

Πηγή: tutorialspoint.com

 

5/5 - (1 vote)

Must Read

spot_img