本文整理汇总了PHP中toba::encriptador方法的典型用法代码示例。如果您正苦于以下问题:PHP toba::encriptador方法的具体用法?PHP toba::encriptador怎么用?PHP toba::encriptador使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类toba
的用法示例。
在下文中一共展示了toba::encriptador方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: obtener_clave_pura_fila
function obtener_clave_pura_fila($fila)
{
$id_fila = "";
foreach ($this->columnas_clave as $clave) {
$id_fila .= $this->datos[$fila][$clave] . apex_qs_separador;
}
$id_fila = substr($id_fila, 0, strlen($id_fila) - strlen(apex_qs_separador));
if (apex_pa_encriptar_qs) {
$encriptador = toba::encriptador();
//ATENCION: me faltaria ponerle un uniqid("") para que sea mas robusto;
$id_fila = $encriptador->cifrar($id_fila);
}
return $id_fila;
}
示例2: generar_solicitud
/**
* Generacion directa de una URL que representa un posible futuro acceso a la infraestructura
* No se chequean permisos
*
* @param string $item_proyecto Proyecto al que pertenece el ítem destino (por defecto el actual)
* @param string $item ID. del ítem destino (por defecto el actual)
* @param array $parametros Párametros enviados al ítem, arreglo asociativo de strings
* @param boolean $zona Activa la propagación automática del editable en la zona
* @param boolean $cronometrar Indica si la solicitud generada por este vinculo debe cronometrarse
* @param array $param_html
* @param boolean $menu El vinculo esta solicitado por el menu?
* @param string $celda_memoria Namespace de memoria a utilizar, por defecto el actual
* @param string $nombre_ventana Nombre con que se abrira la ventana hija en caso de ser popup
* @return string URL hacia el ítem solicitado
* @deprecated Desde 1.0 usar get_url o get_url_
*/
protected function generar_solicitud($item_proyecto = null, $item = null, $parametros = null, $zona = false, $cronometrar = false, $param_html = null, $menu = null, $celda_memoria = null, $servicio = null, $objetos_destino = null, $prefijo = null, $nombre_ventana = null)
{
$separador = '&';
//-[1]- Determino ITEM
//Por defecto se propaga el id de la operación actual, o una operación del mismo proyecto
$autovinculo = false;
if ($item_proyecto == null || $item == null) {
$item_solic = toba::memoria()->get_item_solicitado();
if ($item_proyecto == null) {
$item_proyecto = $item_solic[0];
}
if ($item == null) {
$item = $item_solic[1];
$autovinculo = true;
}
}
//Controlo que el usuario posea permisos para acceder al ITEM
if (!$autovinculo) {
//El control es solo dentro del proyecto actual
if (toba::proyecto()->get_id() == $item_proyecto && !toba::proyecto()->puede_grupo_acceder_item($item)) {
toba::logger()->notice("VINCULADOR: Fallo la creacion de un vinculo al item '{$item}' porque el usuario no posee permisos para acceder al mismo.");
return null;
}
}
$item_a_llamar = $item_proyecto . apex_qs_separador . $item;
//-[2]- Determino parametros
$parametros_formateados = "";
if ($zona) {
//Hay que propagar la zona?
$parametros_formateados .= $this->get_qs_zona();
}
//Cual es el tipo de salida?
if (isset($servicio) && $servicio != apex_hilo_qs_servicio_defecto) {
$parametros_formateados .= $separador . apex_hilo_qs_servicio . "=" . $servicio;
}
if (isset($objetos_destino) && is_array($objetos_destino)) {
$objetos = array();
foreach ($objetos_destino as $obj) {
$objetos[] = $obj[0] . apex_qs_separador . $obj[1];
}
$qs_objetos = implode(',', $objetos);
$parametros_formateados .= $separador . apex_hilo_qs_objetos_destino . "=" . $qs_objetos;
}
//Cual es la celda de memoria del proximo request?
if (!isset($celda_memoria)) {
$celda_actual = toba::memoria()->get_celda_memoria_actual_id();
//Si es la celda por defecto, no explicitar ya que se asume
if ($celda_actual != apex_hilo_qs_celda_memoria_defecto) {
$celda_memoria = toba::memoria()->get_celda_memoria_actual_id();
}
}
if (isset($celda_memoria)) {
$parametros_formateados .= $separador . apex_hilo_qs_celda_memoria . "=" . $celda_memoria;
}
//La proxima pagina va a CRONOMETRARSE?
if ($cronometrar) {
$parametros_formateados .= $separador . apex_hilo_qs_cronometro . "=1";
}
//Formateo paremetros directos
if (isset($parametros) && is_array($parametros)) {
foreach ($parametros as $clave => $valor) {
$parametros_formateados .= $separador . "{$clave}={$valor}";
}
}
//Obtengo el prefijo del vinculo
if (!isset($prefijo)) {
$prefijo = $this->prefijo;
} else {
if (strpos($prefijo, '?') === false) {
$prefijo = $prefijo . '?';
}
}
//Genero la URL que invoca la solicitud
$vinculo = $prefijo . $separador . apex_hilo_qs_item . "=" . $item_a_llamar;
if (trim($parametros_formateados) != "") {
$encriptar_qs = toba::proyecto()->get_parametro('encriptar_qs');
if ($encriptar_qs) {
//Le concateno un string unico al texto que quiero encriptar asi evito que conozca
//la clave alguien que ve los parametros encriptados y sin encriptar
$parametros_formateados .= $parametros_formateados . $separador . "jmb76=" . uniqid("");
$vinculo = $vinculo . $separador . apex_hilo_qs_parametros . "=" . toba::encriptador()->cifrar($parametros_formateados);
} else {
$vinculo = $vinculo . $parametros_formateados;
}
//.........这里部分代码省略.........
示例3: __construct
private function __construct()
{
//toba::logger()->debug("TOBA MEMORIA: Inicializacion.", 'toba');
//dump_session();
$this->id = uniqid('st', true);
$this->url_actual = texto_plano($_SERVER["PHP_SELF"]);
//-[1]- Busco el ID de referencia de la instanciacion anterior del HILO
// Este ID me permite ubicar la memoria correcta para el request ACTUAL
if (isset($_GET[apex_hilo_qs_id])) {
$this->hilo_referencia = $_GET[apex_hilo_qs_id];
} else {
//Atencion, no hay hilo de referencia. CONTROLAR!!
//Esto tiene sentido solo para la pagina de logon (?) para el resto
//del sistema implica que las cosas funcionen mal!
}
//-[2]- Que ITEM se solicito?
$this->item_solicitado = self::get_item_solicitado_original();
//-[3]- Recupero los parametros
$this->parametros = array();
foreach (array_keys($_GET) as $clave) {
$this->parametros[utf8_decode($clave)] = utf8_decode($_GET[$clave]);
}
// $this->parametros = $_GET;
//FALTA hacer un URL decode!!!
$encriptar_qs = toba::proyecto()->get_parametro('encriptar_qs');
if ($encriptar_qs) {
if (isset($_GET[apex_hilo_qs_parametros])) {
$encriptador = toba::encriptador();
parse_str($encriptador->descifrar($_GET[apex_hilo_qs_parametros]), $parametros);
$this->parametros = array_merge($this->parametros, $parametros);
unset($this->parametros[apex_hilo_qs_parametros]);
unset($this->parametros["jmb76"]);
//Clave agregada para complicar la encriptacion
}
}
unset($this->parametros[apex_hilo_qs_id]);
unset($this->parametros[apex_hilo_qs_item]);
//------- MEMORIA -- Hago el bindeo con $_SESSION ----------------------------
// Determino el ID de la celda de memoria actual
if (isset($this->parametros[apex_hilo_qs_celda_memoria])) {
$this->celda_memoria_actual_id = $this->parametros[apex_hilo_qs_celda_memoria];
unset($this->parametros[apex_hilo_qs_celda_memoria]);
} else {
$this->celda_memoria_actual_id = apex_hilo_qs_celda_memoria_defecto;
}
// Apunto las referencias a session
$this->memoria_celdas =& toba::manejador_sesiones()->segmento_memoria_proyecto();
// Celda ACTUAL
if (!isset($this->memoria_celdas[$this->celda_memoria_actual_id])) {
$this->memoria_celdas[$this->celda_memoria_actual_id] = array();
}
$this->celda_memoria_actual =& $this->memoria_celdas[$this->celda_memoria_actual_id];
// Memoria GLOBAL
if (!isset($this->memoria_celdas['__toba__global_proyecto'])) {
$this->memoria_celdas['__toba__global_proyecto'] = array();
}
$this->memoria_global =& $this->memoria_celdas['__toba__global_proyecto'];
// Memoria de la INSTANCIA
$this->memoria_instancia =& toba::manejador_sesiones()->segmento_datos_instancia();
//-----------------------------------------------------------------------------
if (isset($this->parametros[apex_hilo_qs_servicio])) {
$this->servicio = substr($this->parametros[apex_hilo_qs_servicio], 0, 60);
unset($this->parametros[apex_hilo_qs_servicio]);
}
if (isset($this->parametros[apex_hilo_qs_objetos_destino])) {
$objetos = $this->parametros[apex_hilo_qs_objetos_destino];
$lista_obj = explode(",", $objetos);
$this->objetos_destino = array();
foreach ($lista_obj as $obj) {
if (trim($obj) != '') {
$this->objetos_destino[] = explode(apex_qs_separador, $obj);
}
}
unset($this->parametros[apex_hilo_qs_servicio]);
}
//Guardo el FLAG que indica si se accedio por el menu
if (isset($_GET[apex_hilo_qs_menu])) {
$this->acceso_menu = true;
} else {
$this->acceso_menu = false;
}
$this->inicializar_memoria();
if (isset($this->celda_memoria_actual['hilo'])) {
//Si la página requerida es una que ya se genero, se descartan los siguientes pedidos
//Esto permite manejar el caso del refresh y el back, aunque se pierde la posibilidad de re-hacer con forward
//ya que cada back que se ingresa genera un nuevo estado (porque se realiza una nueva ejecución)
$claves = array_keys($this->celda_memoria_actual['hilo']);
if (in_array($this->hilo_referencia, $claves) && $this->hilo_referencia != end($claves)) {
//No provengo desde la ultima generacion (seria el caso normal)
$encontrado = false;
foreach ($claves as $clave) {
if ($encontrado) {
unset($this->celda_memoria_actual['hilo'][$clave]);
//Borro aquellos que quedan en 'sandwich'
}
if ($clave == $this->hilo_referencia) {
$encontrado = true;
}
}
}
//.........这里部分代码省略.........