Cara menggunakan php get url

Cara menggunakan php get url

Kali ini broagus.com akan berbagi materi tentang bagaimana  Membaca URL dan Variabel Pada PHP
Sebenarnya untuk mendapatkan variable dari URL, fungsinya adalah :

    1. GET

      GET berfungsi untuk mengirimkan nilai variabel ke halaman lain atau mengirimkan ke database dan mengambil nilai variabel dari halaman lain atau mengambil data pada database.

      
      if(isset($_GET['get_variable'])){
      $get_result = true;
      $get_variable = $_GET['get_variable'];
      $get_remarks = "GET Variable is Exist. get_variable=" . $get_variable;
      }else{
      $get_result = false; $get_variable = "";
      $get_remarks = "GET Variable is Not Exist";
      } echo "- " . $get_remarks . "";
      

      2. REQUEST

      
      if(isset($_REQUEST['request_variable'])){
      $request_result = true;
      $request_variable = $_REQUEST['request_variable'];
      $request_remarks = "REQUEST Variable is Exist. request_variable=" . $request_variable; }else{
      $request_result = false;
      $request_variable = ""; $request_remarks = "REQUEST Variable is Not Exist"; }
      echo "- " . $request_remarks . "";
      

      Namun variable dalam contoh ini hanya untuk pengecekan dan mengitung ada berapa banyak variable yang terdapat pada url yang aktif, berikut dengan variable beserta isinya (siapa tau dibutuhkan).

      Dalam contoh ini terdapat sebanyak 2 (dua) fungsi saja, yaitu "getcurrentpath('parameter')" & "function geturlvariables('parameter')". Ada sebanyak 8 (delapan) parameter yang dapat digunakan pada fungsi getcurrentpath('parameter'), yaitu :

      1.  Parameter "fullpath" : berfungsi untuk mendapatkan fullpath (lengkap termasuk protocol "https://" atau "http://") dari url yang aktif.
      2.  Parameter "protocol" : berfungsi untuk mendapatkan protocol dari url yang aktif.
      3. Parameter "host" : berfungsi untuk mendapatkan host (misalnya "localhost" atau "www[dot]nama_website_anda[dot]com" atau "IP-Address") dari url yang aktif.
      4. Parameter "url" : berfungsi untuk mendapatkan info url (tanpa protocol https:// atau http://) dari url yang aktif.
      5. Parameter "basehost" : berfungsi untuk mendapatkan basehost dari url yang aktif.
      6. Parameter "basename" : berfungsi untuk mendapatkan basename dari url yang aktif.
      7. Parameter "path" : berfungsi untuk mendapatkan path (tempat dimana file program web disimpan) dari url yang aktif.
      8. Parameter "filename" : berfungsi untuk mendapatkan filename dari url yang aktif. Sedangkan untuk fungsi geturlvariables('parameter'), hanya 1 (satu) parameter saja, dengan menyebutkan fullpath url yang aktif. 

      Cara penggunaannya adalah sebagai berikut :

      1. $fullpath = getcurrentpath('fullpath');
      2. $protocol = getcurrentpath('protocol');
      3. $host = getcurrentpath('host');
      4. $url = getcurrentpath('url');
      5. $basehost = getcurrentpath('basehost');
      6. $basename = getcurrentpath('basename');
      7. $path = getcurrentpath('path');
      8. $filename = getcurrentpath('filename');
      9. $url_variables = geturlvariables($url);

      CARA MENJALANKAN CONTOH PROGRAM

      Langkah-1 : Silahkan create path : "test1/test2/test3" pada root directory localhost.
      Langkah-2 : Copy dan paste script program php berikut ini (yang diawali dengan "<?php" dan diakhiri dengan "?>") dan simpan dengan nama file "geturlvariables.php" pada path yang baru dibuat tersebut.

      
      <?php
      function geturlvariables($url){
        $number = substr_count($url,"?");
        $result = "";
        $remarks = "There is no variable.";
        if($number > 0){
          $position = strpos($url,"?") + 1;
          $remove_this = substr($url,0,$position);
          $variables_raw = str_replace($remove_this,"",$url);
          $variables = explode("&", $variables_raw);
          $count = 0;
          foreach($variables as $result_variables){
          $count++;
          $result = $result . $count . ". " . $result_variables . "<br />";
          }
          if(empty($result_variables)){
            $result = "";
          }else{
            $remarks = "(total " . $count . " items)<br />";
          }
        }
        return $remarks . $result;
      }
      function getcurrentpath($param){
        $number = "";
        $protocol = "";
        $host = "";
        $url = "";
        $fullpath = "";
        $basename = "";
        $basehost = "";
        $path = "";
        $filename = "";
        $result = "";
        if(!empty($_SERVER['HTTPS']) && ('on' == $_SERVER['HTTPS'])){
          $protocol = 'https://';
        }else{
          $protocol = 'http://';
        }
        if($_SERVER["SERVER_PORT"] == "80"){
          $url .= $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"];
        }else{
          $url .= $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"].$_SERVER["REQUEST_URI"];
        }
        $protocol = $protocol; /*this is a redundan statement:)*/
        $host = $_SERVER['HTTP_HOST'];
        $url = $url;
        $fullpath = $protocol . $url;
        $basename = basename($url);
        $basehost = str_replace($basename,"",$url);
        $path = str_replace($host,"",$basehost);
        $filename = strtok($basename, "?");
        if($param == "fullpath"){
          $result = $fullpath;
        }elseif($param == "protocol"){
          $result = $protocol;
        }elseif($param == "host"){
          $result = $host;
        }elseif($param == "url"){
          $result = $url;
        }elseif($param == "basehost"){
          $result = $basehost;
        }elseif($param == "basename"){
          $result = $basename;
        }elseif($param == "path"){
          $result = $path;
        }elseif($param == "filename"){
          $result = $filename;
        }else{
          $result = "unknown url request";
        }
      return $result;
      }
      
      $fullpath = getcurrentpath('fullpath');
      $protocol = getcurrentpath('protocol');
      $host = getcurrentpath('host');
      $url = getcurrentpath('url');
      $basehost = getcurrentpath('basehost');
      $basename = getcurrentpath('basename');
      $path = getcurrentpath('path');
      $filename = getcurrentpath('filename');
      $url_variables = geturlvariables($url);
      echo "*** Hasil Start ***<br />";
      echo "MEMBACA URL DAN VARIABLE-NYA<br /><br />";
      echo "- fullpath : " . $fullpath . "<br />";
      echo "- url : " . $url . "<br />";
      echo "- basehost : " . $basehost . "<br />";
      echo "- basename : " . $basename . "<br />";
      echo "- protocol : " . $protocol . "<br />";
      echo "- host : " . $host . "<br />";
      echo "- path : " . $path . "<br />";
      echo "- filename : " . $filename . "<br />";
      echo "- url_variables : " . $url_variables . "<br />";
      /*Ini contoh pengecekan variable*/
      if(isset($_GET['get_variable'])){
        $get_result = true;
        $get_variable = $_GET['get_variable'];
        $get_remarks = "GET Variable is Exist. get_variable=" . $get_variable;
      }else{
        $get_result = false;
        $get_variable = "";
        $get_remarks = "GET Variable is Not Exist";
      }
      echo "- " . $get_remarks . "<br />";
      if(isset($_REQUEST['request_variable'])){
        $request_result = true;
        $request_variable = $_REQUEST['request_variable'];
        $request_remarks = "REQUEST Variable is Exist. request_variable=" . $request_variable;
      }else{
        $request_result = false;
        $request_variable = "";
        $request_remarks = "REQUEST Variable is Not Exist";
      }
      echo "- " . $request_remarks . "<br />";
      echo "*** Hasil End ***<br />";
      ?>
      
      

      Langkah-3 : Untuk menjalankannya pada browser, ketik secara lengkap pada url seperti berikut ini :
      http://localhost/test1/test2/test3/geturlvariables.php?variable1=aaa&variable2=bbb&variable3=ccc&get_variable=getget&request_variable=reqreq

      Jika program tersebut dijalankan, maka hasilnya akan terlihat seperti berikut ini :

      *** Hasil Start ***
      MEMBACA URL DAN VARIABLE-NYA
      - fullpath : http://localhost/test1/test2/test3/geturlvariables.php?variable1=aaa&variable2=bbb&variable3=ccc&get_variable=getget&request_variable=reqreq
      - url : localhost/test1/test2/test3/geturlvariables.php?variable1=aaa&variable2=bbb&variable3=ccc&get_variable=getget&request_variable=reqreq
      - basehost : localhost/test1/test2/test3/
      - basename : geturlvariables.php?variable1=aaa&variable2=bbb&variable3=ccc&get_variable=getget&request_variable=reqreq
      - protocol : http://
      - host : localhost
      - path : /test1/test2/test3/
      - filename : geturlvariables.php
      - url_variables : (total 5 items)
      1. variable1=aaa
      2. variable2=bbb
      3. variable3=ccc
      4. get_variable=getget
      5. request_variable=reqreq
      - GET Variable is Exist. get_variable=getget
      - REQUEST Variable is Exist. request_variable=reqreq
      *** Hasil End ***

      Sumber PHP Indonesia