Necesitamos añadir estas lineas en el fichero .htaccess
RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L] RewriteCond %{HTTPS} !=on RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
Necesitamos añadir estas lineas en el fichero .htaccess
RewriteEngine On RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L] RewriteCond %{HTTPS} !=on RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R,L]
Si tenemos una tabla (nombredelatabla) con la clave autoincremental, con los valores:
1 pepito
2 jaimito
3 equivocado
Si borramos el 3, cuando queramos insertar un valor nos pondrá el 4.
para poder reutilizar el 3, tenemos que modificar la tabla:
Alter table nombredelatabla auto_increment=3
Donde el número es el que queremos que sea el siguiente
Para presentar una ventana con una caja de texto y poner un texto por defecto:
private void preguntaTexto(){
AlertDialog.Builder alert = new AlertDialog.Builder(this);alert.setTitle(getString(R.string.titulosms));
alert.setMessage(getString(R.string.telefonosms));// Set an EditText view to get user input
final EditText input = new EditText(this);input.setText("TEXTO_QUE_QUEREMOS CARGAR");
alert.setView(input);alert.setPositiveButton("Ok", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
String textorecuperado= input.getText().toString();
//aqui hacemos lo que queramos con el texto que el usuario ha introducido});
alert.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int whichButton) {
// No hacemos nada
}
});alert.show();
}------------------------------------
@Override
public void onAttachedToWindow() {
openOptionsMenu();
};
Cuando trabajamos con fechas en mysql se guardan en formato yyyy-mm-dd mientras que normalmente en pantalla las queremos ver en formato dd/mm/YYYY.
Para ellos vamos a ver las consultas necesarias para guardar y recuperar los datos y evitar que nos aparezcan datos 00/00/0000
Cuando recuperamos el valor ponemos en la sql
if(fecha is not null,date_format(fecha,'%d/%m/%Y'),'') as fec
Si llamamos siempre a date_format cuando el valor es null el resultado es 00/00/0000
Y a la hora de guardar solo formateamos la fecha si tiene valor
update la_tabla_que_sea set fecha=if ('".$_POST['campo_fecha_web']."'!='',str_to_date('".$_POST['campo_fecha_web']."','%d/%m/%Y'),null) where id=id_necesario_para_actualizar
Con esto evitamos llamar a str_to_date si el valor está vacio, que es lo que origina que se guarde el 00/00/0000
Ponemos como estilo:
body { background: url(imagen.jpg) center center cover no-repeat fixed; } @media only screen and (max-width: 767px) { body { background-image: url(imagenmaspeque.jpg); } }
Y como código de la pagina:
Todo lo que tengas que poner. El resultado seria:
Todo lo que tengas que poner
Una vez que estamos en la linea que queremos en el menú Edit->Add bookmark
Le ponemos un nombre al marcador
Vemos que al lado de la linea aparece una barra azul, si dejamos el ratón encima nos indica el nombre del marcador.
Para ver los marcadores, hay que activar la vista, en el menú Window->Show->View->Bookmarks ( si no aparece hay que pulsar en Other, y buscarlo manualmente )
La vista de marcadores indica el nombre que le pusimos, el fichero en el que está y la linea
Si queremos eliminarlo pulsamos botón derecho sobre el marcador y elegimos “Delete”
¿Eres capaz de resolverlo en 10 segundos?
partimos de una funcion en PHP que resta dias
function restadias($fecha,$dias){ list( $dia, $mes, $year ) = split( '/', $fecha ); //teniendo la fecha tenemos que obtener el lunes y el viernes de esa semana. $f=mktime(0 , 0, 0, (int)$mes , (int)$dia, (int)$year); $sumadias=60*60*24*($dias); $l=$f-$sumadias; $dia1=date('j',$l); if ($dia1<10){ $d="0".$dia1; }else{ $d=$dia1; } $mes1=date('n',$l); if ($mes1<10){ $m="0".$mes1; }else{ $m=$mes1; } $year1=date('Y',$l); $nf = $d."/".$m."/".$year1; return $nf; }
Si vemos la función, lo que hace es partir la fecha de texto dd/mm/aaaa y obtener el valor en segundos con mktime, luego los días que va a restar los multiplica por el número de segundos del día y hace la resta, el resultado lo formatea otra vez en formato dd/mm/aaaa
Así para el ejemplo:
echo restadias("03/03/2016",1);
El resultado es o debería de ser 02/03/2016
Pero para restadias("28/03/2016",1) cuando debería de darnos el día 27 nos devuelve un fatídico 26/03/2016.
1459123200 - 86400 = 1459036800
Y todo por el cambio de hora, como la función realiza el mktime pasando 0 en horas, minutos y segundos, al restar 86400 segundos según la funcion $dia1=date('j',$l)
Y lo vemos mejor viendo la hora:
date("H",$l);
Donde parte de las 0 y nos devuelve 23.
para solucionarlo, modificamos la función restadias por:
function restadias($fecha,$dias){ list( $dia, $mes, $year ) = split( '/', $fecha ); //teniendo la fecha tenemos que obtener el lunes y el viernes de esa semana. $f=mktime(12 , 0, 0, (int)$mes , (int)$dia, (int)$year); $sumadias=60*60*24*($dias); $l=$f-$sumadias; $dia1=date('j',$l); if ($dia1<10){ $d="0".$dia1; }else{ $d=$dia1; } $mes1=date('n',$l); if ($mes1<10){ $m="0".$mes1; }else{ $m=$mes1; } $year1=date('Y',$l); $nf = $d."/".$m."/".$year1; return $nf; }
Donde hemos puesto como hora las 12, asi nos evitamos el problema del cambio de hora, de 2 a 3 de la mañana.