viernes, 15 de octubre de 2010

jQuery: Haciendo un Plugging en jQuery

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"   
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr"><head>  
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />  
  <title>Highlight jQuery plugin</title>  
  
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js" type="text/javascript"></script> 
  
  <script type="text/javascript">
    // definición de la función  
    $.fn.highlight = function(options){  
        // puede recibir un array de parámetros nombrados  
        // invocamos a una función genérica que hace el merge   
        // entre los recibidos y los de por defecto   
        var opts = $.extend({}, $.fn.highlight.defaults, options);  
      
        // para cada componente que puede contener el objeto jQuery que invoca a esta función  
        this.each(function(){  
            // asignamos a la asignación del foco la invocación a una función  
            $(this).focus(function(){  
                // que asigna al fondo el color recibido o el asginado por defecto  
                $(this).css({"background" : opts.background});  
            });  
            // asignamos a la perdida del foco la invocación a una función  
            $(this).blur(function(){  
                // que asigna al fondo un color blanco  
                $(this).css({"background" : "white"});  
            });  
        });  
      
    };  
      
    // definimos los parámetros junto con los valores por defecto de la función  
    $.fn.highlight.defaults = {  
        // para el fondo un color por defecto  
        background: '#a6cdec'  
    };  
  </script>  
  
  <script type="text/javascript">
    $(document).ready(function(){    
 
        //$("form :input:visible").highlight(); 

        $("form :input:visible").highlight({background: 'red'});  
      
    });  
  </script>  
  
</head>  
<body>  
<h1>Highlight jQuery plugin</h1>  
<form method="post" action="" name="test1">  
  <table>  
    <tbody>  
      <tr>  
        <td> <label for="name">Name</label> </td>  
        <td> <input id="name" type="text" /> </td>  
      </tr>  
      <tr>  
        <td> <label for="country">Country</label> </td>  
        <td> <input id="country" type="text" /> </td>  
      </tr>  
      <tr>  
        <td> <label for="password">Password</label> </td>  
        <td> <input id="password" type="password" /> </td>  
      </tr>  
    </tbody>  
  </table>  
</form>  
<br />  
<small>Mueve el foco entre los campos del formulario</small>  
</body>  
</html>

test rck:
http://jsfiddle.net/ric47121/rAbRG/

JavaScript: jSon

<script>

var Persona = {
'nombre': 'Ricardo',
'apellido': 'Levano',
'edad': '20'

};

Persona.getEdad = function() {
return this.edad;
}

Persona.saludar = function(fnCallBack) {
fnCallBack();
}

/**/

alert("hola soy " + Persona.nombre + " y tengo " + Persona.getEdad() + "años");

Persona.saludar(function(){
alert("holitass");
});

</script>

jueves, 7 de octubre de 2010

Linux: Buscar Cadena en Archivos

grep -lir "idbanner" *.php
O bien buscar emails
egrep -lir "\w+([._-]\w)*@\w+([._-]\w)*\.\w{2,4}" *.php


l lista el nombre de archivos
i ignora mayusculas y minusculas
r recursivo


I:\intacto\Sonica\portal2010>grep -lir "idbanner" *.php
artistas_espacio_back.php
banners.php
index - copia.php
registro_usuariosOK.php
resultado_busqueda.php
shows_.php

viernes, 1 de octubre de 2010

jQuery: jSon

<script type="text/javascript">
$(document).ready(function () {

var query = "SELECT * FROM tbl_users WHERE user_id = 3";

$.getJSON("query_executor.php", { query: query}, function(data){
alert("user_name: " + data[0].user_name);

});
});
</script>


O
var html = $.ajax({
type: "GET",
url: "php_ajax/query_executor.php",
data: "query=" + query,
async: false
}).responseText;

var myObject = eval('(' + html + ')');

alert(var_dump_rck(myObject[0]));



El PHP
<?php
include("db.php");
    
$query = $_REQUEST['query'];
$result = mysql_query($query) or trigger_error(mysql_error());

$jsonArr = array();
while($row = mysql_fetch_object($result))
{
    $jsonArr[] = $row;
}

echo json_encode($jsonArr);

?>

El Json Generado

[
{"user_id":"1","user_name":"pepe","user_fecha_nacimiento":"1986-09-01"},
{"user_id":"2","user_name":"juan","user_fecha_nacimiento":"1988-12-05"},
{"user_id":"3","user_name":"Ambrosio Romero","user_fecha_nacimiento":"1984-05-12"}
]

jueves, 16 de septiembre de 2010

jquery: var_dump

<script>
function var_dump_rck(data) {

var str = "";
$.each(data, function(key, value) {
//alert(key + ': ' + value);
str += key + ': ' + value + "\n";
});

return str;
}
</script>

imagenes de video youtube

http://img.youtube.com/vi/r6mmfbSDqbw/0.jpg
http://img.youtube.com/vi/r6mmfbSDqbw/1.jpg

jueves, 10 de junio de 2010

PHP: Pasar objetos por sesión

<?php
/**
* Archivo: Usuario.php
*/
class Usuario
{
    private $_nombre ='';

    public function __construct ($nombre)
    {
        $this->_nombre = $nombre;
    }
    public function __toString()
    {
        return $this->_nombre;
    }
    public function getTest()
    {
        return 'este es un método de testing';
    }

}

<?php
// Archivo: index.php

require_once 'Usuario.php';

session_start();

$_SESSION['usuario'] = new Usuario('enrique');

?>
<a href="siguiente.php">siguiente</a>

<?php

// Archivo: siguiente.php

require_once 'Usuario.php';

session_start();

$usuario = $_SESSION['usuario'];

echo 'Hola, mi nombre es '.$usuario .' y '.$usuario->getTest();


Interesante..
Fuente:
http://phpsenior.blogspot.com/

viernes, 4 de junio de 2010

Linux: Calidad Videos FFmpeg

video original: espania.mov 7.9 MB

a flv calidad media (526 KB)
ffmpeg -i espania.mov -ab 56 -ar 44100 -b 200 -r 15 -s 510x286 -f flv video_finale_510x286.flv
a flv calidad media (641 KB)

ffmpeg -i espania.mov -s 510x286 -f flv -acodec libmp3lame -ab 128000 -ar 44100 -vcodec flv -b 1000 ppp_media.flv
a flv alta calidad (1.4 MB)
ffmpeg -i espania.mov -s 510x286 -f flv -acodec libmp3lame -ab 128000 -ar 44100 -vcodec flv -b 1000000 ppp.flv

sábado, 29 de mayo de 2010

Linux: cron - Crontab

Cron es impulsado por un cron, un archivo de configuraciòn que especifica comando shell para ejecutarse periódicamente a una hora específica



Modo de Operación:
1º Editar el archivo que esta en /etc/crontab
y agregar la linea deseada, por ejemplo:
36 2 * * 7 root wget http://myserver.com/mycroneable.php
o
scribir esta linea de comando que hace lo mismo:
crontab 36 2 * * 7 root wget http://myserver.com/mycroneable.php


Esto se ejecutará todos los domingos a las 2:36 AM

Linux: Gestión de usuarios

archivos importantes:
/etc/passwd
/etc/group

Habilitar o deshabilitar el login de root en SSH

Editar el archivo
/etc/ssh/sshd_config

PermitRootLogin no --Deshabilitarlo
PermitRootLogin yes --Habilitarlo
Despues de guardar los cambios reiniciamos el servicio SSH.
EN FREEBSD
/etc/rc.d/sshd restart
EN LINUX
/etc/init.d/sshd restart



http://es.kioskea.net/contents/linux/linusr.php3

http://www.leopoldomaestro.com/habilitar-o-deshabilitar-el-login-de-root-en-ssh/

viernes, 28 de mayo de 2010

c#: wget

using System;
using System.Collections.Generic;
using System.Text;
using System.Net;

namespace wget
{
class Program
{

static void Main(string[] args)
{
//string res = wget("http://www.google.com");
if (args.Length == 0)
{
Console.WriteLine("Debe especificar una url");
}
else
{
string uri = args[0];
if (uri.Contains("htt"))
{
Console.WriteLine(wget(uri));
}
else
{
Console.WriteLine("No es válido");
}

//Console.ReadKey();
}
}

private static string wget(string url)
{
WebClient c = new WebClient();
byte[] response = c.DownloadData(url);
return Encoding.ASCII.GetString(response);
}
}
}

<?php

if(isset($_REQUEST['name']))
{
    echo gethostbyname($_REQUEST['name']);
}
else
{
    echo gethostbyname("www.google.com");
}

?>

Usos:
wget http://www.google.com
wget http://servidor/GetHostByName.php?name=www.google.com

MySQL: mysqldump

C:\wamp\bin\mysql\mysql5.1.36\bin\mysqldump -u root -p test > dump.sql

http://rm-rf.es/backups-mysql-con-mysqldump/

Backup de bases de datos remotas

mysqldump --opt --password=pass --user=user --host=ip database > G:\backups_sqldump\sqldump_database.sql

sábado, 22 de mayo de 2010

Linux: instalar RED5 on UBUNTU

instalar java jre + jdk:
sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts
apt-get install sun-java6-bin sun-java6-jre sun-java6-jdk

para comprobar:
java -version

setear la java HOME:
export JAVA_HOME=/usr/lib/jvm/java-6-sun-1.6.0.12/

estando en /opt/red5 ejecutar:
/usr/ant/bin/ant prepare
/usr/ant/bin/ant build
/usr/ant/bin/ant


ejecutarlo (estando en el directorio /opt/red5.):
./red5.sh

viernes, 21 de mayo de 2010

windows: Administrar Servidor

servicios de windows:
services.msc

programas de Inicio:
msconfig

Linux: safe_mode Off

find -name php.ini

./etc/php5/cli/php.ini
./etc/php5/cgi/php.ini
./etc/php5/apache2/php.ini

Modificamos el que esta en apache2:
editar ./etc/php5/apache2/php.ini
buscar linea safe_mode y setear en Off

Reiniciar el Servidor
/etc/init.d/apache2 restart

tirar un phpinfo y comprobar cambio

jQuery: Leer Json - PHP

$(".bordeLinea .lineas").click(function(){

var pro_id = $(this).attr("id");
$.post("php/getRowProduct.php", { pro_id:pro_id },
function(data){

$("#pro_titulo").html(data.pro_titulo);
$("#pro_subtitulo").html(data.pro_subtitulo);
$("#pro_tips").html(data.pro_tips);
$("#pro_precio_1").html(data.pro_precio_1);
$("#pro_precio_2").html(data.pro_precio_2);
$("#pro_descripcion").html(data.pro_descripcion);
$("#pro_presentacion_1").html(data.pro_presentacion_1);
$("#pro_presentacion_2").html(data.pro_presentacion_2);
$("#pro_categoria").html(data.pro_categoria);
$("#micrositio").attr( "href",data.lin_link);

var pro_imagen = "<?php echo $fileConfig["pro_imagen"]["folder"] ?>"+data.pro_imagen;
var pro_imagen_1 = "<?php echo $fileConfig["pro_imagen_1"]["folder"] ?>"+data.pro_imagen_1;
var pro_imagen_2 = "<?php echo $fileConfig["pro_imagen_2"]["folder"] ?>"+data.pro_imagen_2;

$("#pro_imagen").attr( "src",pro_imagen);
$("#pro_imagen_1").attr("src",pro_imagen_1);
$("#pro_imagen_2").attr("src",pro_imagen_2);



if(data.pro_novedad==1)
$("#mark").html("NOVEDAD");
if(data.pro_lanzamiento==1)
$("#mark").html("LANZAMIENTO");

if(data.pro_novedad==0 && data.pro_lanzamiento==0)
$("#franjaFichaPopUp").hide();

//$(".fichaProducto").show();

},"json");


});

El PHP:

<?php
    include("../includes/func_config.php");
    include("../includes/func_sql.php");
    
    
    if($_REQUEST["pro_id"]){
            
            $rs=DameDatos($dbname,"bg_productos","*"," WHERE pro_id='".$_REQUEST["pro_id"]."'",$cOrden,$nRegistros);
            $rg=mysql_fetch_array($rs);
            
            foreach($rg as $id=>$value){
                $json[]='"'.$id.'":"'.utf8_encode($value).'"';
            
            }
            
            $rs=DameDatos($dbname,"bg_lineas","lin_nombre,lin_link"," WHERE lin_id='".$rg["lin_id"]."'",$cOrden,$nRegistros);
            $rg=mysql_fetch_array($rs);

            $lin_nombre = utf8_encode($rg["lin_nombre"]);
            $lin_link = $rg["lin_link"];
            
            
            $slin_nombre = DameValorCampo($dbname,"bg_sublineas","slin_nombre"," WHERE slin_id='".$rg["slin_id"]."'");
            $slin_nombre = utf8_encode($slin_nombre);
            
            
            $json[]='"lin_link":"'.$lin_link.'"';
            $json[]='"pro_categoria":"'.$lin_nombre.'"';
            $json[]='"slin_nombre":"'.$slin_nombre.'"';
            
            echo '{'.implode(",",$json).'}';
    }
?>

jueves, 20 de mayo de 2010

PHP: calcularEdadByFechaMySql

<?php
/***********************************************************/
// echo calcularEdadByFechaMySql("2009-11-03 19:35:21"); //formato mysql
// echo calcularEdadByFechaMySql($user['user_fecha_nacimiento']);
/***********************************************************/
function calcularEdadByFechaMySql($fecha_nac)
{
    //Esta funcion toma una fecha de nacimiento
    //desde una base de datos mysql
    //en formato aaaa/mm/dd y calcula la edad en números enteros

    $dia=date("j");
    $mes=date("n");
    $anno=date("Y");

    //descomponer fecha de nacimiento
    // $dia_nac=substr($fecha_nac, 8, 2);
    // $mes_nac=substr($fecha_nac, 5, 2);
    // $anno_nac=substr($fecha_nac, 0, 4);

    $datetime = date_create($fecha_nac);

    $dia_nac = date_format($datetime, 'd');
    $mes_nac = date_format($datetime, 'n');
    $anno_nac = date_format($datetime, 'Y');

    if($mes_nac>$mes){
    $calc_edad= $anno-$anno_nac-1;
    }else{
    if($mes==$mes_nac AND $dia_nac>$dia){
    $calc_edad= $anno-$anno_nac-1;
    }else{
    $calc_edad= $anno-$anno_nac;
    }
    }
    return $calc_edad;
}
?>
?>