Buscando artículos sobre "php"
25-marzo-2022
admin

Instalación Apache + Mysql + Php + PhpMyAdmin en ubuntu

Paso 1 – Actualizar la lista de paquetes disponibles y sus versiones ( sudo apt-get update )

Paso 2 – Instalar Apache ( sudo apt-get install apache2 )
Servicio: /etc/init.d/apache2 status
Url: http://127.0.0.1/ ó http://localhost/

Paso 3 – Instalar MySQL ( sudo apt-get install mysql-server )
Te va pedir una contraseña para el usuario root.
Servicio: systemctl status mysql

Paso 4 – Instalar PHP ( sudo apt install -y php )
Prueba:

Crear el fichero /var/www/html/info.php
Con el contenido < !--?php phpinfo();?-- >
Visitar la url: http://localhost/info.php

Paso 5 – Instalar PhpMyAdmin ( sudo apt-get install phpmyadmin )
Adicionalmente, hay que añadirlo en la configuración de apache2. Para ello:

//Descomentamos el alias en el fichero apache.conf /etc/phpmyadmin/apache.conf
Alias /phpmyadmin /usr/share/phpmyadmin
//Incluimos la configuración del phpmyadmin en el apache2.conf
echo "Include /etc/phpmyadmin/apache.conf" >> /etc/apache2/apache2.conf

A partir de la version 5.7 no se puede realizar login en phpMyAdmin con el usuario root. Por lo tanto es necesario crearte un usuario:

sudo mysql -p -u root
Enter password:

mysql> CREATE USER 'rpf'@'%' IDENTIFIED BY 'rpf';
Query OK, 0 rows affected (0,02 sec)

mysql> GRANT ALL PRIVILEGES ON *.* TO 'rpf'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0,02 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0,01 sec)

Error: “Login sin una contraseña está prohibido por la configuración (Ver AllowNoPassword)”
Este error nos lo dará al intentar logarnos si no ponemos una contraseña.

La forma de solucionarlo es:

Descomentar la propiedad AllowNoPassword en el fichero /etc/phpmyadmin/config.inc.php
$cfg['Servers'][$i]['AllowNoPassword'] = TRUE;
13-marzo-2016
admin

WordPress: “Briefly Unavailable for Scheduled Maintenance”

Este error puede aparecer en WordPress en el momento que falla alguna actualización, ya sea del propio wordpress o de un plugin.

Al realizar las actualizaciónes Wordpres crea un archivo en el llamado .maintenance (en la raiz del sitio). Este archivo es el encargado de mostrar el mensaje: “Briefly Unavailable for Scheduled Maintenance”. De tal forma que muestra ese mensaje en tu sitio en lugar de mostrar los errores de PHP mientras se produce la actualización de los archivos necesarios.

Una vez finalizada la actualización, el archivo se borra automáticamente. Si por lo que sea la actualización falla y ese archivo no llega a borrarse se debe borrar a mano. De otro modo sacará constantemente el mensaje de error. Una vez borrado es recomendable ejecutar las actualización que ha fallado para que la aplique correctamente.

9-agosto-2015
admin

Timeout con nusoap

En la librería NuSOAP el tiempo de espera predeterminado es de 30 segundos. Cuando se realizar un servicio con tiempos de ejecución superiores el servicio devolverá un timeout.

Para solucionarlo basta con aumentar el tiempo de espera de respuesta para resolver este problema. Para ello se puede modificar directamente el fichero nusoap.php añadiendole el número de segundos que se precisen a la variable $response_timeout.

$response_timeout = 400;
14-julio-2015
admin

Crear una tarea cron personalizada en wordpress

Si se quiere automatizar alguna tarea desde nuestro wordpress podemos recurrir a la siguiente solucion:

Paso 1/ Descargarse e instalar el plugin Advanced Cron Manager Este plugin permite de una manera muy simple gestionar las tareas automatizadas.

Paso 2/ Se debe crear una acción que será la que se invoque desde el plugin instalado. Por ejemplo, si quisiéramos que periódicamente se ejecutase un script php que tenemos implementado podríamos realizar la siguiente acción sirviéndonos para ello de CURL, tal que así:

function wp_execute_script_php() {
	$ch = curl_init();
	curl_setopt($ch, CURLOPT_URL, "http://disastercode.com.es/miScript.php");
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
	curl_setopt($ch, CURLOPT_REFERER, "http://disastercode.com.es/miScript.php");
	curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1);
	curl_setopt($ch, CURLOPT_ENCODING, "ISO-8859-1,UTF-8;q=0.7,*;q=0.7");
	curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_6) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.151 Safari/535.19");		
	$body = (curl_exec($ch));
	curl_close($ch);
}


add_action( 'wp_execute_script_php', 'wp_execute_script_php' );

Paso 3/ Ya solo queda crear la tarea en la página de gestión del plugin poniendo como schedule_hook_for_action nuestra acción wp_execute_script_php y estableciendo el periodo de ejecución que se desee.

18-junio-2015
admin

Plugins para poner posts autómaticos en wordpress

Auto Post Scheduler
Te permite publicar nuevos mensajes y/o reciclar los mensajes antiguos, de forma automática. No hay necesidad de programar tiempos de correos de forma individual.

Es especialmente útil para la importación de un gran número de mensajes, se configurar para publicar con cualquier frecuencia que se elija.

Auto Post After Image Upload
Te permite crear un post automático al subir una imagen a la galeria de medios.

7-septiembre-2014
admin

Como usar la API de Twiter (parte 2)

A continuación, se muestra un ejemplo de como usar la API de Twiter con PHP.

En primer lugar comentar que se va a utilizar la librería TwitterAPIExchange. Esta librería contiene las funciones necesarias para conectar la API con los credenciales del usuario y realizar de una manera sencilla las operaciones deseadas.

Variable settings con los tokens a usar:

    $settings = array(
        'oauth_access_token' => "",
        'oauth_access_token_secret' => "",
        'consumer_key' => "",
        'consumer_secret' => ""
    );

Ejemplo 1: Listar los ids de los amigos que tiene el usuario robertopf81

//DOC: https://dev.twitter.com/docs/api/1.1/get/friends/ids
function listIdsFriends($usuario, $settings){
        ini_set('display_errors', 1);
        require_once('TwitterAPIExchange.php');
        $url = 'https://api.twitter.com/1.1/friends/ids.json';

        $getfield = '?cursor=-1&screen_name='.$usuario.'&count=5000';        
        $requestMethod = 'GET';
        $twitter = new TwitterAPIExchange($settings);
        $json =  $twitter->setGetfield($getfield)->buildOauth($url, $requestMethod)->performRequest();
        return $json;
}


//ahora la utilizariamos así:
	$friends = listIdsFriends("robertopf81", $settings);
	$jsonFriends = json_decode($friends);
	$num_friends = count($jsonFriends->ids);
	for($i=0; $i<$num_friends; $i++){
		$user = $jsonFriends->ids[$i];
		echo "Friend ". ($i+1) . ": " . $user . "
"; }

Ejemplo 2: Seguir a un nuevo amigo llamado usuarioaseguir.

//DOC: https://dev.twitter.com/docs/api/1.1/post/friendships/create
function follow($usuario, $settings){
        ini_set('display_errors', 1);
        require_once('TwitterAPIExchange.php');
        $url = 'https://api.twitter.com/1.1/friendships/create.json';

        $requestMethod = 'POST';
        $postfields = array( 'screen_name' => $usuario,'follow' => "true" );

        $twitter = new TwitterAPIExchange($settings);
        return $twitter->buildOauth($url, $requestMethod)->setPostfields($postfields)->performRequest();
}


//ahora la utilizariamos así:
	$respuesta = follow("usuarioaseguir", $settings);
	echo $respuesta;
	$json = json_decode($respuesta);
	echo '';
	echo "Usuario: ".$json->name." (@".$json->screen_name.")";
	echo "
"; echo "ID USER: ".$json->id_str; echo "
"; echo "Fecha Envio: ".$json->created_at;

Se han dejado en github estos ejemplos y alguno más: ver aquí.

1-septiembre-2014
admin

Como usar la API de Twiter (parte 1)

Si tienes una cuenta de twiter y quieres realizarte una aplicación personalizada que utilice toda la información que hay en twiter (número de seguidores, amigos, tweets, etc), la gente de Twiter nos facilita una serie de llamadas rest que podemos utilizar para interactuar con ellos. Más información aquí.

En primer lugar decir que a día de hoy la versión de la API de twitter es la 1.1 (la 1.0 ya está deprecada). Esta versión 1.1 requiere usar autentificación OAUTH, de otra forma no podremos poner a funcionar la aplicación.

Por lo tanto para poder utilizar la api se deben seguir estos pasos:
1/ Crear una cuenta de desarrollador: esto se hace en https://dev.twitter.com/

2/ Una vez creada la cuenta de desarrollador ya podrás crear una nueva aplicación en la zona de «Mis Aplicaciones«.

3/ Tras crear la aplicación lo siguiente es crear los Tokens de acceso. (API keys y Access Tokens)

4/ Llegados a este punto ya podriamos utilizar la api. Existen ya un gran número de librerias que nos facilitaran el uso del api twiter para no tener que implementarlo de cero. Además, hay librerías para casi cualquier lenguaje posible. (Ver aquí)

6-enero-2014
admin

Desordenar aleatoriamente un array en java y en php

Para desordenar un array en PHP tenemos la función shuffle. En el ejemplo se crea una array ordenado de 1 a 6 mediante la función range para luego mezclarlos:


En java tenemos la función Collections.shuffle que es equivalente. Recibe como parámetro una lista y mezcla los distintos objetos o tipos que la componen.

List< TuObjeto> asks = new LinkedList< TuObjeto>();
asks.add(new TuObjeto(1));
asks.add(new TuObjeto(2));
asks.add(new TuObjeto(3));
Collections.shuffle(asks);

Como apunte decir que si lo que queremos es desordenar una lista obtenida directamente desde una Base de Datos MySql podemos usar la función rand(). Más información de esta y otras funciones en la documentación oficial de MySql.

SELECT * FROM wth_users ORDER BY rand()

7-diciembre-2013
admin

Generar ficheros excel o word con php

Para generar un una hoja de excel con php basta con añadir al inicio de la página esta cabecera:


Para las celdas puedes utilizar una tabla.

Si quisieras que fuera un documento word tendrías que añadir:


Ésta sería la forma más rudimentaria que hay. Actualmente existen librerías para php que permiten la creación de ficheros excel de una forma más amigable. Por ejemlo:

PHPExcel – es una librería muy potente para PHP integrada por un conjunto de clases que permiten escribir y leer diferentes formatos de archivos de hojas de cálculo como .xls, . xlsx, .csv, .ods, PDF, HTML,… Este proyecto se basa en el estándar OpenXML Microsoft y PHP.

SimpleExcel PHP – es una librería PHP bastante simple que te permite analizar, convertir y escribir datos tabulares desde y hacia Microsoft Excel XML / CSV / TSV / HTML / formato JSON

PHP-Excel – es una librería php-excel muy simple que permite para generar documentos Excel desde php.

6-diciembre-2013
admin

Generador de partes de trabajo

Aplicación web que te genera los partes de horas mensuales en formato *.xls

DEMO: http://genparte.disastercode.com.es

GitHub: https://github.com/roberto-pf/GenParte

Tecnologías empleadas:
– Plugin Fullcalendar de Jquery para implementar el calendario.http://arshaw.com/fullcalendar/

– Nusoap, como servidor web para los días festivos.http://sourceforge.net/projects/nusoap/

– PHPExcel, como librería para generar la hoja de excel.http://phpexcel.codeplex.com/

– Diseño formularios:
Formly -> http://thrivingkings.com/read/Formly-The-form-glamorizer-for-jQuery
NiceForms -> http://www.emblematiq.com/lab/niceforms/

Pantalla Principal

Hoja de excel generada

Páginas:12»

Categorias

Linkedin