Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - gAb1

#271
Oops, gracias marmolito por la corrección, me lie con el orden de los discos.

La manera correcta sería:

Código (bash) [Seleccionar]
dd if=/dev/sdb1 of=/dev/sda1 bs=4096 conv=noerror,sync

Tal como dijo marmolito: "if" es el origen y "of" el destino; teniendo esto en cuenta: "dev/sdb1" debería ser el disco duro y "/dev/sda1" debería ser el ssd. De todas maneas las letras de unidad siempre hay que comprobarlas, con el comando "fdisk" se confirman.

Cita de: marmolito en 28 Noviembre 2015, 12:36 PM
Pregunta: Tu sistema de "recovery" no te permite crearte DVD´s de recuperación para el caso de que el disco duro se quede totalmente inaccesible ???

@OssoH Si prefieres instalar Windows limpio (el que no lleva programas preinstalados que seguramente no vas a usar nunca) es mucho mejor y más facil hacer un recovery nuevo a partir de dicha instalación (asi te libras del bloatware que en la mayoria de casos no sirve para nada más que relantizar el sistema).
#272
PHP / Re: Calcular días hábiles en PHP
29 Noviembre 2015, 00:16 AM
Por favor favor usa las etiquetas de código GeSHi (tienes una lista para elegir el tipo de lenguaje). Modifica para ponerlas.

Tu lo que quieres es obtener, en php, solo los dias de trabajo o dias normales.

También te diré que no necesitas usar tantas comillas... Las comillas dobles ( " " ) solo son necesarias para que php interprete las barras invertidas ( \ ) y puedas imprimir códigos ASCII y otros carácteres especiales como nuevas lineas ( \n ), etc. Para simple texto con las normales es suficiente, tal solo cierralas y pones la variable.

Código (php) [Seleccionar]
$sql='UPDATE tbldias
      SET    dc_fecha_noti       = ' . $fecha_noti . ',
             dc_fecha_venci_noti = ' . $fecha_venci_noti . '
      WHERE  dc_num_accion       = ' . $num_accion;


PHP no puede saber que dias son festivos (solo puede saber cual es Sabado y cual Domingo). Necesitarás crear una función con un array que contenga todos los dias festivos y que devuelva solo los que estén entre la fecha indicada y la fecha final (aunque si no son muchos no hace falta filtrarlos). No necesitas poner el año:

Código (php) [Seleccionar]
// $startDate sería $fecha_noti y $days los dias a sumar (por si los pides en el formulario)
function getWorkingDays($startDate, $days) {
    // aquí tendrías que poner todos los dias festivos menos los sabados y domingos.
    // o si son muchos crear una funcion que devuelva solo los necesarios...
    // (por ejemplo 10 dias festivos a partir de la fecha indicada, dependiendo de $days)
    $holidays  = array(
        'New Year\'s Day'   => '01-01'
        'Trivia Day'        => '01-04'
        'National Bird Day' => '01-05'
    );
    $weekend   = array('Sun' => '','Sat' => '');
    $date      = new DateTime($startDate); // recuerda solo mes y dia
    $nextDay   = clone $date;
    $i         = 0;
    $nextDates = array();

    while ($i < $days) {
        $nextDay->add('P1D');
        if (isset($holidays[$nextDay->format('m-d')])) continue;
        if (isset($weekend[$nextDay->format('D')])) continue;
        $nextDates[] = $nextDay->format('Y-m-d');
        $i++;
    }

    return $nextDates;
}


Así lo harías en la página PHP:

Código (php) [Seleccionar]
require_once('conexion.php');
require_once('functions.php'); // si tienes un archivo para las funciones pon la función de arriba, o crealo

// si el formulario no está en esta página quita el isset() dejando solo el filter_input();
$num_accion = isset ( $_POST['num_accion'] ) ? filter_input ( INPUT_POST , 'num_accion' , FILTER_SANITIZE_STRING) : NULL;
$fecha_noti = isset ( $_POST['fecha_noti'] ) ? filter_input ( INPUT_POST , 'fecha_noti' , FILTER_SANITIZE_STRING) : NULL;
$days       = isset( $_POST['days'] ) ? (int) $_POST['days'] : 10; // los que quieras poner por defecto

$fecha_venci_noti = getWorkingDays($fecha_noti, $days);

?>
// Aqui puede ir el formulario HTML
<form></form>
#273
Yo siempre formateo el disco entero cuando viene windows preinstalado, ya que no es una instalación limpia (contiene bloatware del ensamblador del equipo). Te recomiendo que uses una imagen oficial de windows.

Si prefieres usar la partición oculta, puedes clonarna facilmente al nuevo ssd y asi seguro no tendrás problemas.

Asegurate de conectar el ssd en el puerto sata 0 de la placa base y el disco duro en el 1.

La manera más limpia, rapida y facil para clonar discos enteros o particiones es usar la utilidad "dd" de cualquier distribución linux o unix (es suficiente con arrancarla sin instalar). En el terminal escribes:

Código (bash) [Seleccionar]
dd if=/dev/sdb1 of=/dev/sda1 bs=4096 conv=noerror,sync

"/dev/sda" debería ser el ssd "/dev/sdb" debería ser el disco duro y "/dev/sdb" debería ser el disco duro "/dev/sda" debería ser el ssd (el número es la partición). Con el siguiente comando encuentras facilmente las letras de ambos (y te aseguras también de que la partición 1 es la que contiene el recovery):

Código (bash) [Seleccionar]
fdisk -l | grep dev

Edito: Fallo mio, es justo al revés. Corregido.
#274
El video va integrado en el procesador APU. La ram cogeré un modulo de mi ordenador y antes de nada probaré los dos que ya tiene uno a uno para ver que pasa y luego el mio.
#275
@simorg le pasé el programa que comentas, nada más abrirse ya estaba todo en verde (The disk status is PERFECT) de todas maneras le hice un self-test rápido y nada, todo correcto.

No sé que puede ser, todas las piezas parecen estar funcionando y son nuevas...

En realidad no sabría decir si realmente se apaga, solo los leds de los ventiladores se apagan un par de veces cuando se está encendiendo.
#276
Windows / Re: Problema windows 10
27 Noviembre 2015, 15:35 PM
Seguramente Windows Update reinstaló el driver y el problema quedo solucionado.
#277
No sé que tipo de lógica matemática lleva el OR (sin paréntesis), pero con IN() funciona exactamente como quiero:

Por ejemplo (tomando en cuenta el ejemplo: type es 2, status es 0 y bhk es 3)

Código (sql) [Seleccionar]
AND t2.type = 1 OR t2.type = 2
AND t2.status = 0 --OR t2.status = 1
AND t2.bhk = 1


No devuelve nada, pero si le añado el OR si que devuelve, ¿qué tipo de lógica es esa?

Si hacemos lo mismo pero con IN() funciona perfectamente:

Código (sql) [Seleccionar]
AND t2.type IN (1, 2)
AND t2.status IN (0) -- (0, 1)
AND t2.bhk IN (1)


No devuelve nada, ni con 0 solo, ni con 0 y 1... Esto si lo veo lógico.

Para que devuelva con el IN:

Código (sql) [Seleccionar]
AND t2.type IN (1,2)  -- 2
AND t2.status IN (0)  -- 0
AND t2.bhk IN (1,3)  -- 3


Ahora devuelve el ejemplo porque todos los AND son TRUE. Esto es lo que necesitaba.

Exacto, acaba de leer que necesito parentesis para que el OR haga lo que necesito, pero es más facil usar IN.

Gracias!
#278
Vale, voy a comprobar a ver si es el disco duro, porque algo tiene que ser, no es normal que se apague (aunque solo sea la primera vez cuando se enciende la fuente...)
#279
Los formularios no se pueden (o deben) procesar directamente, primero hay que hacer ciertas comprobaciones y si todo esta correcto entonces se llama a la función para que procese los datos.

En el archivo Guarda.php (el que veo en el action del formulario y el del jquery supongo) tienes que llamar a la función guarda().

Primero declaras las variables del post y luego las envias como parametros al llamar la función.

Código (php) [Seleccionar]
// Si el formulario esta en el mismo archivo simplemente envuelves el código en un if
if (@$_POST['current_email'] && @$_POST['new_email'] && @$_POST['confirm_new_email']) {

   $valor1 = filter_input(INPUT_POST, 'valor1', FILTER_SANITIZE_STRING);
   $valor2 = filter_input(INPUT_POST, 'valor2', FILTER_SANITIZE_STRING);
   $valor3 = filter_input(INPUT_POST, 'valor3', FILTER_SANITIZE_STRING);

   if ($valor1 && $valor2 && $valor3) {
       // depende de como instancies la clase
       $returned = $change_email = $Funciones->guarda($valor1, $valor2, $valor3);
   }
   else {
       // error falta rellenar formulario...
   }

   // lo que quieras devolver de la función si hay algun problema lo indicas aqui
   if ($returned == 'error') {
       // error al guardar la info...
   }
}

// Aquí puedes poner el formulario html
?>

<form role="form"  method="POST" action="guarda.php" class="formulario" id="formulario">
#280
Estoy tratando de filtrar resultados usando 3 columnas como filtros pero no funciona como me esperaba...

Por ejemplo, en la tabla tengo un solo ejemplo: col1 es 2, col2 es 0 y col3 es 3.

Si hago:

Código (sql) [Seleccionar]
AND col1 = 1 OR col1 = 3
AND col3 = 3


No se muestra el ejemplo. Pero si hago:

Código (sql) [Seleccionar]
AND col1 = 1 OR col1 = 3
AND col3 = 1 OR col3 = 3


Si que se muestra... ¿por qué ahora si pero antes no? No le veo ningún sentido... No hay ninguna col3 con valor 1 pero si con 3, ¿por qué no se muestra cuando solo busco el valor 3? Pero si busco el valor 1 y 3 ¿si que se muestra? Por favor explicarmelo o me volveré más loco aun  :-\

Si cualquiera de los AND no se cumple (no se muestra nada) o como funciona exactamente?

¿Funcionará igual si uso IN() en lugar de OR? Mejor cuando lo entienda uso el IN().

Gracias!