За последние 24 часа нас посетили 63063 программиста и 1742 робота. Сейчас ищут 1190 программистов ...

Кодирование парамертов в строке гет запроса

Тема в разделе "PHP для новичков", создана пользователем lamok, 2 янв 2009.

  1. lamok

    lamok Активный пользователь

    С нами с:
    16 июн 2008
    Сообщения:
    64
    Симпатии:
    1
    Всех с новым годом!
    допустим есть строк (ссылка)
    www.wer.ru/get.php?name=ivan&familia=petrov
    как сделать чтобы заместо ima и petrov было что-нито другое ну типа там 1423423 ну типа закодировано а переходя по ссылке в скрипте его заскодировать???
     
  2. free-bits

    free-bits Активный пользователь

    С нами с:
    13 ноя 2008
    Сообщения:
    296
    Симпатии:
    0
    Адрес:
    г. Красноярск
    Как вариант base64_encode() и base64_decode()
     
  3. Ti

    Ti Активный пользователь

    С нами с:
    3 июл 2006
    Сообщения:
    2.378
    Симпатии:
    1
    Адрес:
    d1.ru, Екатеринбург
    + mcrypt
     
  4. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
  5. lamok

    lamok Активный пользователь

    С нами с:
    16 июн 2008
    Сообщения:
    64
    Симпатии:
    1
    оо спасибо большое не знал таких функций
     
  6. lamok

    lamok Активный пользователь

    С нами с:
    16 июн 2008
    Сообщения:
    64
    Симпатии:
    1
    Поскажие а как прочитать закадированное???
    вот кодированная ссылка: www.ert.ru/get.php?sdfhrthrdthy45itgrgvbjbkgfnbkjd7
    а как в get.php прочитать то нужно ж знать @_GET['????'] а я то не знаю, как быть?
     
  7. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    $_GET[0]
    ЗЫ. Злые массивы в PHP. Неправильные ;-)
     
  8. Sergey89

    Sergey89 Активный пользователь

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    PHP:
    1. key($_GET);
    или
    PHP:
    1. $_SERVER['QUERY_STRING'];
     
  9. lamok

    lamok Активный пользователь

    С нами с:
    16 июн 2008
    Сообщения:
    64
    Симпатии:
    1
    Ничего не выводит. Пусто
     
  10. lamok

    lamok Активный пользователь

    С нами с:
    16 июн 2008
    Сообщения:
    64
    Симпатии:
    1
    $_SERVER['QUERY_STRING'];
    дает просто строку
    а если $_GET то пишет что эт массив:)

    а скажите если я закадирую с поможью base64 то любой эту строку может расшифтовать у ся на сервере?
    или как?
     
  11. Adamant

    Adamant Активный пользователь

    С нами с:
    8 апр 2007
    Сообщения:
    234
    Симпатии:
    0
    Адрес:
    Казахстан г.Тараз
    Простой вариант
    PHP:
    1.  
    2. <?php
    3. // выдача в браузер
    4. $param = base64_encode('name=ivan&familia=petrov');
    5. ?>
    6. <a href="<?echo 'http://' . $_SERVER['HTTP_HOST'] . $_SERVER['PHP_SELF'] . '?' . $param;?>">base64_encode_link</a>
    7.  
    8. <?php
    9. // раскодировка на стороне сервера
    10. if (!empty($_SERVER['QUERY_STRING'])) {
    11.     echo "\$_SERVER['QUERY_STRING'] : ";
    12.     echo base64_decode($_SERVER['QUERY_STRING']);  
    13.     echo "<br>\n";
    14. }
    15. }
    16. ?>
    17.  
    В base64_encode нельзя передавать массив напрямую. Если надо энкодировать массив, его предварительно нужно serialize()-вать.
     
  12. lamok

    lamok Активный пользователь

    С нами с:
    16 июн 2008
    Сообщения:
    64
    Симпатии:
    1
    to Adamant
    спасибо эт я понял
    интересует вопрос уникальности и возможно ли разпоснать(раскодировать на другом серевере???
     
  13. Adamant

    Adamant Активный пользователь

    С нами с:
    8 апр 2007
    Сообщения:
    234
    Симпатии:
    0
    Адрес:
    Казахстан г.Тараз
    PHP:
    1.  <?php
    2.  // раскодировка на стороне сервера
    3.  if (!empty($_SERVER['QUERY_STRING'])) {
    4.      echo "\$_SERVER['QUERY_STRING'] : ";
    5.      echo base64_decode($_SERVER['QUERY_STRING']);  
    6.      echo "<br>\n";
    7.  }
    8.  ?>
    А по поводу уникальности или я бы сказал возможности раскодировки кем-то, как вам уже посоветовал Ti - юзайте
     
  14. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Что у всех за мания пошла ссылки шифровать?
    Лично я не люблю, когда меня перекидывают по ссылке site.ru?dfafffffffffwfsr2r
     
  15. anapkin

    anapkin Активный пользователь

    С нами с:
    18 дек 2008
    Сообщения:
    23
    Симпатии:
    0
    Адрес:
    Анапа
    Kreker, согласен. Мало ли что там по этой ссылке. Если это для того, чтобы скрыть названия переменных - то это бесполезно, я думаю.
     
  16. free-bits

    free-bits Активный пользователь

    С нами с:
    13 ноя 2008
    Сообщения:
    296
    Симпатии:
    0
    Адрес:
    г. Красноярск
    Для передачи через адресную строку урла с гет-параметрами)
     
  17. lamok

    lamok Активный пользователь

    С нами с:
    16 июн 2008
    Сообщения:
    64
    Симпатии:
    1
    ясненько шифровать параметры для их сокрытия бесполезно
    спасибо