Медитував над кодом 10 хв. |

indusНарод, а індуси і дальше жгуть… над кодом нижче я сидів з 10 хвилин, і в мене не виникло ЖОДНИХ думок, а що власне він повинен зробити… Поможіть пліз мені, хто підкаже в чому суть скрипта - поставлю пиво, може і два :) на разі довелося розгребти шось таке страшне і кучеряве. Постійно складаєтсья враження, що в коді перебувало як мінімім 10 людей, оскільки одинакові помилки були реалізовані абсолютно іншими способами.

[php]
function remove_pgs()
{
if($_SESSION["PHARMA_login"])
{
$result['vcharUserType']=$_SESSION["PHARMA_vcharUserType"];
$result['intUserId']=$_SESSION["PHARMA_intUserId"];
$result['vcharUserName']=$_SESSION["PHARMA_vcharUserName"];
$result['vcharFirstName']=$_SESSION["PHARMA_vcharFirstName"];
$result['vcharLastName']=$_SESSION["PHARMA_vcharLastName"];
$result['PHARMA_login']=$_SESSION["PHARMA_login"];
}
foreach($_SESSION as $k => $v){
unset($_SESSION[$k]);
}
if($result["PHARMA_login"])
{
$_SESSION["PHARMA_vcharUserType"]=$result['vcharUserType'];
$_SESSION["PHARMA_intUserId"]=$result['intUserId'];
$_SESSION["PHARMA_vcharUserName"]=$result['vcharUserName'];
$_SESSION["PHARMA_vcharFirstName"]=$result['vcharFirstName'];
$_SESSION["PHARMA_vcharLastName"]=$result['vcharLastName'];
$_SESSION["PHARMA_login"]=$result['PHARMA_login'];
}
}[/php]

Запис 'Медитував над кодом 10 хв.' має 20 коментарів
  1. kolin:

    Індуси постійно жгуть :). А як вони жгуть у своїх фільмах, то взагалі… :)))

  2. 4matic:

    Это функция проверки работоспосбоности операторов присваивания.

  3. Azazel:

    функция удаляет из сессии все кроме переменных: vcharUserType, intUserId, vcharUserName, vcharFirstName, vcharLastName, PHARMA_login….

    стареешь? :)

  4. Witalick:

    Одним словосполученням - “трансцедальна мастурбація”

  5. guest:

    Шо тут може бути не ясно?! Цей скріпт переливає пусте в порожнє… а потім робить то саме в зворотньому порядку :)
    А ще цей скріпт збільшує зарплатню індійського програміста, якому платять за кількість написаних строк коду.

  6. Taras Koval:

    це типу блін - функція яку в народі кличуть logout()

  7. BeGeMoT:

    Чувак я пью Крейк вишнёвый (ламбрик, кажется, называется) - производства бельгии =).

    Код чистит левые данные из сесии. И сохрнаяет только информацию о логине. То есть если в сесии была ещё какая-то херня она дальше не будет передаватся =).

    Более правильно было сделать ансет всякой фигне чем чистить всё. Хотя мало ли, типа если информация о логине ВСЕГДА передаётся - то почему бы не почистить таким методом. Что бы там [сесии] не лежало.

  8. Гість:

    Я так довго не дивився, але вроді суть в тому щоб очистити сесію від всього що не на PHARMA_.

  9. DeeGiTAL:

    фунція очищує масив $_SESSION від усіх елементів окрім перелічених в скрипті (vcharUserType, intUserId, vcharUserName, vcharFirstName, vcharLastName, login)

  10. Azazel:

    вполне адекватный и работающий код - че вы взьерепенились? :) да - некрасиво реализовано, но логи вполне четкая и понятная

  11. TAHK:

    Ну есть вариант :) один… самый глупый… :)))) например убрать из сессии все, кроме PHARMA_* … ну это так, на вскидку)

    if($result["PHARMA_login"]) - а вот это в упор понять не могу… зачем?…

  12. vedeney:

    ну типу та… але одна маленька поправка на вітер :) в сесії окрім цих даних немає нічого :) відповідно функція нагадує переливання з повного в повне!

  13. Azazel:

    ты не отговаривайся - ты лучше пиво тащи обещаное ;)

  14. vp:

    я то пробував у фотошопі прописати — не працює :(((

  15. zlatko:

    Мені все ясно : рекурсія :)

  16. vedeney:

    до речі, один з варіантів, де використовується ця функція.
    if(mysql_insert_id()){
    remove_pgs();
    $_SESSION["PHARMA_vcharUserType"]=’user’;
    $_SESSION["PHARMA_intUserId"]=mysql_insert_id();
    $_SESSION["PHARMA_vcharUserName"]=$result['vcharUserName'];
    $_SESSION["PHARMA_vcharName"]=$result['vcharName'];
    $_SESSION["PHARMA_login"]=true;
    return true;
    }

  17. Azazel:

    садись. два :)
    сколько не учи - одни двойки ]:->

  18. DeeGiTAL:

    карочі, з тебе пива - і то багато :)) а то зараз ще хтось покопіпейстає правильні відповіді :))) наступного разу пиши шось типу “хто перший пояснить в чому суть ….. ” :)

  19. Azazel:

    и вот это исправь: “=>” - противно читать ;) поставь человеческое =>

  20. Azazel:

    в 12й строке ;)

Коментувати

*

*

Категорії
Архів