Build Tree to flat array PHP

Como pasar un array arbol a plano manteniendo el orden y la estructura.Lo unico que aquí no he podido hacerla todo lo generica que podria ser si no que es individual para cada array, ya que hay que indicarle los campos que queremos traspasar.Si alguien tiene la solución que deje un comentario y modifico la Read More

Build Tree Array PHP

Como crear un array árbol, con la siguiente función se crea solo, el array plano tiene que tener lo siguiente. Array => (‘id_hijo’,’nombre_hijo’,’id_padre’) tiene que ser indexado por numero 0,1,2 etc… (FETCH::NUM) Ej.:Array([0] => id_hijo[1] => nombre[2] => id_padre[3] => etc…) La función: function buildTree(array &$elements, $parentId = 0,$level = 0) {       $branch = array();       foreach ($elements as &$element) {         if ($element[2] == $parentId) {           $children = $this->buildTree($elements, $element[0],$level+1);           if ($children) {             $element[‘children’] = $children;           }           $element[‘level’] = $level;           $branch[$element[0]] = $element;           unset($element);         } Read More

Send notification with FCM and PHP

Enviar una notificación desde PHP con FCM (Firebase Cloud Messaging) Tengo una clase que se encarga de enviar los mensajes, no esta muy depurada pero funciona, incluso se podria crear una solo función. <?php class NotifyGoogleFcm {   // https://firebase.google.com/docs/cloud-messaging/http-server-ref   // https://firebase.google.com/docs/cloud-messaging/android/topic-messaging   // https://github.com/fechanique/cordova-plugin-fcm   // https://www.npmjs.com/package/cordova-plugin-fcm-notification   private static $urlFcmGoogle = ‘https://fcm.googleapis.com/fcm/send’;   private static $apiKey = ‘_YOUR_API_KEY_’;   private $header;   private $notify = array();   public $title;   public $body;   public $data = array(); // Si queremos pasar datos a la app, no solo notificarlo   public $color = ‘#22c08a’;   public $sound = ‘default’;   public $icon;   // Se envia a todos los dispositivos, pero si pasamos un unico token se envia solo a ese dispositivo   // Si un usuario se ha subscrito a un topico (/topics/PHP) podemos enviar solo a esas personas   // ej: $this->to = «dtbjlnBC3Os:APA91bEHzYAdwZrCOvrMc5ottIbX6mygHi2N5UKg-_fdzsf63U_Ste»;   public $to = ‘/topics/all’;   // Si queremos enviar a mas de uno el mismo mensaje   // ej:  $this->registration_ids = array(«dtbjlnBC3Os:APA91bEHzYAdwZrCOvrMc5ottIbX6m»,»dfuTx5jdD0w:APA91bFfDkzY0ntMOt-ddORc9DZ_»); Read More

Acceder a / Crear unidad de red desde PHP

Como acceder / crear una unidad de red desde PHP function crear_unidad_red($letter){ $location = «\\\\ip_servidor\\carpeta\\subcarpeta\\etc…»; $user = «nombre_de_usuario»; $pass = «contraseña»; if(!is_dir(«$letter:»)): // Map the drive system(«net use «.$letter.»: \»».$location.»\» «.$pass.» /user:».$user.» /persistent:no «); endif; // Borrar unidad // system(«net use $letter: /delete /y»); } $unidad = ‘Z’; crear_unidad_red($unidad); // The location of the PDF Read More

Aceptar la licencia de Android SDK para Cordova / PhoneGap

Hay que ir donde tenemos instalado el Android SDK y ejecutar el siguiente comando, nos aparecerá un mensaje para aceptar las diferentes licencias. Android-sdk\tools\bin> sdkmanager.bat –licenses Failed to install the following Android SDK packages as some licences have not been accepted.To build this project, accept the SDK license agreements and install the missing components using Read More

PHP PDO with Microsoft SQL Server Store Procedure Output

Como ejecutar un store procedure en SQL server con un parámetro de salida. $mysqli->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $outputParam = »; try { $query = «exec store_procedure ?, ?, ?»; $stmt = $mysqli->prepare($query); $stmt->bindValue(1, ‘param 1’, PDO::PARAM_STR); $stmt->bindValue(2, param_int , PDO::PARAM_INT); // Se indica bindParam ya que la asignación a la variable se hace una vez realizado el Read More

Upload cordova via ajax

Como subir una imagen desde cordova via ajax /** * Función para pasar una imagen formato url a BLOB (objeto) * @param {string} pathImage */ var loadImage = function(pathImage) { return new Promise(function(resolve, reject) { var xhr = new XMLHttpRequest(); xhr.open(«GET», pathImage, true); xhr.responseType = «blob»; xhr.onload = function (e) { // console.log(this.response); // var Read More

Upload cordova file transfer

Como subir un fichero desde cordova con file transfer $(‘.take-foto’).on(‘click’,function(){ var options = { encodingType: 0, quality: 60, destinationType: Camera.DestinationType.FILE_URI, correctOrientation: true, targetWidth: 4000, targetHeight: 3000 }; navigator.camera.getPicture(uploadFileTransfer, onFailCamara, options); }) function uploadFileTransfer(imageURI){ winUpload = function(r){ var data = JSON.parse(r.response); // Si la respuesta del servidor es json console.log(data); // navigator.camera.cleanup(function(){},function(){}); }; failUpload = function(error){ Read More

Generar contraseña aleatoria con JavaScript

Función para generar contraseña aleatoria con JavaScript. Acepta dos parámetros 1 la longitud de la contraseña, el segundo es el tipo de contraseña. Ej: num -> solo números alf -> solo letras rand -> aleatorio números, letras y simbolos por defecto -> letras y números   function generatePasswordRand(length,type) { switch(type){ case ‘num’: characters = «0123456789»; Read More

Instalar VmWare tools en Debian 7 y versiones posteriores

Hace un tiempo detecte que instalando vmware tools desde el CD como hasta ahora, no me funcionaban bien re-dimensionar la pantalla, pasar archivos etc… Me puse a investigar y en ninguna página encontré la información, hasta que di con ella en la web support de VmWare. Han sacado varios paquetes que se instalan directamente desde Read More

1 2 3