Desde el 2012 llevo mis apuntes en este blog documentando lecciones aprendidas, formatos, procesos, negocios, metodologías, herramientas, guias y buenas prácticas para el mundo informativo y la gestión de proyectos. Habilidades blandas, habitos, frases de líderes, empresarios exitosos y apuntes personales que son el resultado de investigaciones que realizo para mejorar cada día en el ambito personal y profesional.
metodo rapido para evitar los ataques por sql con PHP : SQL INJECTION
function anti_injection($data){
$data = get_magic_quotes_gpc() ? stripslashes($data) : $data;
$data = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($data) : mysql_escape_string($data);
return $data;
}
Validaciones para un formulario HTML + JQUERY
/*************/
jscript de validaciones de campos para un formulario
var checkForm = function(id,iderror){
var msgerror = '';
var msgerror_require = '(*) Campo Requerido';
var msgerror_emailvalid = 'El E-mail es incorrecto';
var msgerror_numeric = 'Debe ingresar solo números';
var bform = true;
var tform = '#'+id;
$(tform+' .require').each(function(i){
if (this.value=='') {
$(this).addClass('error');
bform = false;
msgerror = msgerror_require;
} else {
$(this).removeClass('error');
}
});
$(tform+' .emailvalid').each(function(i){
var filtro = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
if (!filtro.test(this.value)){
$(this).addClass('error');
bform = false;
msgerror = msgerror_emailvalid;
} else {
$(this).removeClass('error');
}
});
$(tform+' .numeric').each(function(i){
var strChars = "0123456789.-";
for (i = 0; i <this.value.length; i++) {
strChar = this.value.charAt(i);
if (strChars.indexOf(strChar) == -1) {
$(this).addClass('error');
bform = false;
msgerror = msgerror_numeric;
} else {
$(this).removeClass('error');
}
}
});
$(tform+' .check').each(function(i){
var checkeado=$('#checkbox').attr('checked');
if(!checkeado) {
$(this).addClass('error');
bform = false;
msgerror += msgerror_term;
agregar_Error();
} else {
$(this).removeClass('error');
quitar_Error();
}
});
if (bform == true) {
return true;
} else {
$('#'+iderror).html(msgerror).show();
return false;
}
}
function divError(form,p){
var msg_error = '(*) Debe completar los campos requeridos ';
$$('form#'+form+' .msgerror').each(function(el){
if (p=='hide') {
el.hide();
}else{
el.update(msg_error);
el.show();
}
});
}
/**********************************************//
en el html
<form action="[ACTION]" method="post" onsubmit="return checkForm('form1','divErr');" id="form1" name="form1">
y un div
<div id="divErr" style="display:none"></div>
no olvidar poner en cada imput la clase "require" o el que definimos en el jscript
Validacion de nick consultando Base de Datos Jquery + PHP
function validanick(a){
var elegido = a.value;
var filtro = /([a-zA-Z0-9]{6,10})$/;
if (elegido.length < 6) {
$(a).addClass('error');
$('#divErr').removeClass('[CLASSERROR]');
$('#divErr').removeClass('msg_success');
$('#divErr').addClass('display_on msg_error');
$("#divErr").html("El nick debe tener 6 caracteres como minimo");
return false;
}
else if (!filtro.test(a.value)){
$(a).addClass('error');
$('#divErr').removeClass('msg_success');
$('#divErr').removeClass('[CLASSERROR]');
$('#divErr').addClass('display_on msg_error');
$("#divErr").html("El nick no debe tener espacios en blanco");
return false;
}
else {
$(a).removeClass('error');
$.post("verificar_nick.php", {elegido: elegido},
function(data){
if(data =="True"){
$(a).removeClass('error');
$('#divErr').removeClass('[CLASSERROR]');
$('#divErr').addClass('display_on msg_success');
$("#divErr").html("El nick de usuario " + elegido + ", se encuentra disponible");
return true;
}
else{
$(a).addClass('error');
$('#divErr').removeClass('[CLASSERROR]');
$('#divErr').addClass('display_on msg_error');
$("#divErr").html("El nick de usuario " + elegido + ", no se encuentra disponible");
return false;
}
}
);
}
}
Leer una carpeta que está al mismo nivel en el servidor
// crear una carpeta o leer archivo de una carpeta paralela a la que estamos desde el servidor
$dir = "/segundodir/adjuntos/2/";
// Current directory
$position = dirname(__FILE__);
// Every call to dirname() will go one level up
$position = dirname($position);
$dir = $position.$dir;
//crear carpeta
mkdir($dir,0777);
EN PHP