Coding

Gli acronimi web aiutano a leggere documentazione, log e configurazioni, ma lo stesso termine può avere significati diversi in base al contesto. Il glossario raccoglie definizioni sintetiche e va usato come punto di partenza: per implementazioni e parametri è sempre necessario consultare la specifica o la documentazione ufficiale.

Come usare questo glossario

In questo glossario, abbiamo raccolto 30 acronimi che sono frequentemente utilizzati dagli sviluppatori.

ARIA

Accessible Rich Internet Applications: a volte utilizzato anche come WAI-ARIA.

La specifica ARIA definisce diverse metodologie di front-end che rendono i contenuti web accessibili per le persone disabili che accedono al web con le tecnologie assistive (AT), come gli screen reader.

ACSS

Atomic Cascading Style Sheets: una metodologia di scrittura CSS sviluppata da Yahoo.

ACSS si basa sulle classi riutilizzabili (atomic) e nomi di classe brevi prevedibili che consentono di realizzare lo stile direttamente nel codice HTML. Atomizer è uno strumento che può aiutare a generare classi atomic per i progetti web.

AMP

Accelerated Mobile Pages:  ha lo scopo di rendere più veloce le pagine dei siti tramite accesso mobile.

AMP permette di ottimizzare HTML, CSS e JavaScript per migliorare le prestazioni e fornisce componenti da usare per caricare le risorse esterne e gli script eseguiti tramite il runtime AMP.

API

Application Programming Interface: in italiano interfaccia di programmazione di un’applicazione è un insieme di procedure disponibili al programmatore, di solito raggruppate a formare un set di strumenti specifici per l’espletamento di un determinato compito all’interno di un certo programma. Spesso con tale termine si intendono le librerie software disponibili in un certo linguaggio di programmazione.

BEM

Block, Element, Modifier: è una convenzione per la scrittura di classi CSS leggibili.

I blocchi sono i nomi di entità indipendenti, come ad esempio un menu o un pulsante.
Gli elementi sono di diverse parti o funzionalità dei blocchi.

CDN

Content Delivery Network: una rete di server distribuiti che hanno lo scopo di memorizzare le copie duplicate dai nostri contenuti web.

Il CDN ci consente di fornire contenuti ad ogni utente da un server. In questo modo siamo in grado di ottenere migliori prestazioni e ridurre i tempi di inattività del server.

CMS

Content Management System: un software che ci permette di pubblicare, modificare e organizzare diversi tipi di contenuti digitali.

La maggior parte dei CMS sono utilizzati per la pubblicazione sul Web, come WordPress, Drupal, Joomla etc. Il CMS separa il contenuto dalla presentazione e funzionalità, quindi, permette di gestire i contenuti web senza alcuna conoscenza di codifica.

CRUD

Create, Read, Update, Delete: un termine usato in gestione di database, che contiene le quattro funzioni di base di un database persistente.

In SQL, i quattro comandi correlati sono: INSERT (per creare), SELECT (per leggere), UPDATE (per l’aggiornamento) e DELETE (per Delete).

Le funzioni CRUD descrivono il ciclo di vita tipico dei dati sui siti web dinamici.

CSSOM

Cascading Style Sheets Object Model: un insieme di API utilizzate dal browser per rendere corretti gli stili CSS in una pagina web.

Il CSSOM rappresenta tutti gli stili CSS (selettori e le loro proprietà) su una pagina Web. CSSOM ha una struttura ad albero simile a DOM, ma è un modello di dati separati.

CTA

Call-to-action: un termine di marketing  usato molto frequente nel mondo del web design.

Un CTA è un messaggio diretto a utenti o potenziali clienti a prendere un’azione immediata. Nel web design solitamente si trovano collegamenti che hanno lo scopo di invogliare gli utenti a fare clic su un pulsante, banner, pubblicità, etc.

DOM

Document Object Model: modello a oggetti del documento, è una forma di rappresentazione dei documenti strutturati come modello orientato agli oggetti.
DOM è lo standard ufficiale del W3C per la rappresentazione di documenti strutturati in maniera da essere neutrali sia per la lingua che per la piattaforma.

ECMASCRIPS (ES)

European Association Script Computer Manufacturers: uno specifico linguaggio di scripting in cui la sintassi di JavaScript si basa insieme a JScript e ActionScript.

ECMAScript ha preso il nome dalla European Computer Manufacturers Association.

FOSS

Free and Open-Source Software: un software libero, nel senso che non ha alcun vincolo sul diritto d’autore, e open-source, quindi chiunque può accedere e modificare il codice sorgente del software.

A volte noto anche come FLOSS.

GUI

Graphical User Interface: un tipo di interfaccia utente.

Una GUI rende possibile agli utenti senza conoscenze tecniche di interagire con un software senza l’utilizzo delle righe di comando, come MS-DOS. Una GUI utilizza icone grafiche e un linguaggio visivo.

IDE

Integrated Development Environment: un’applicazione software che ci fornisce un ambiente di programmazione che integra diversi strumenti necessari per lo sviluppo e il test, come ad esempio un editor di codice sorgente, costruire strumenti di automazione, un compilatore o interprete, un debugger. Xcode, Eclipse e Visual Studio sono esempi di IDE.

ITCSS

Inverted Triangle Cascading Style Sheets: un’architettura scalabile per CSS, codice CSS riutilizzabile.

ITCSS divide proprietà CSS in livelli in base alla loro specificità e importanza.

JSON

JavaScript Object Notation: un formato di dati leggibili indipendente dal linguaggio per l’interscambio dei dati.

La sua sintassi è simile a quella di JavaScript ed è per questo che è il formato dei dati più comune nelle applicazioni basate su JavaScript.

LAMP

Linux, Apache, MySQL, PHP / Python / Perl: indica una piattaforma software per lo sviluppo di applicazioni web che prende il nome dalle iniziali dei componenti software con cui è realizzata.

Lo stack LAMP consiste in Linux come sistema operativo, Apache come web server, MySQL come software per la gestione di database e PHP, Perl o Python come linguaggio di scripting. La sua variante di Windows si chiama WAMP, mentre la sua variante di OS X è MAMP.

LTR/RTL

Left To Right / Right To Left: i termini usati nella internazionalizzazione.

LTR e RTL sono proprietà locale della impostazioni della lingua o paese di un’interfaccia utente. LTR sta per sinistra a destra, RTL destra a sinistra. Essi indicano la direzione del testo.

MEAN

MongoDB, Express.js, angular, Node.js: un JavaScript web per la creazione di siti web dinamici e applicazioni web, funziona su qualsiasi sistema operativo.

MVC

Model-View-Controller: Un modello architettonico utilizzato nella programmazione orientato sugli oggetti.

E’ un pattern architetturale molto diffuso nello sviluppo di sistemi software, in particolare nell’ambito della programmazione orientata agli oggetti, in grado di separare la logica di presentazione dei dati dalla logica di business.

OAUTH

Open Authentication: un protocollo che rende possibile l’autorizzazione sicura in modo sicuro e standard.

OAuth è spesso utilizzato come metodo per consentire agli utenti di accedere a un sito utilizzando i servizi di terze parti, come ad esempio Facebook, Twitter o Google, senza registrazione.

OOP

Object-Oriented Programming: un paradigma di programmazione.

In OOP, creiamo modelli simili per l’ambiente del mondo reale facendo uso di quattro grandi principi: astrazione, incapsulamento, ereditarietà e polimorfismo. Al centro di OOP, vi sono oggetti che contengono i dati incapsulati in forma di proprietà e metodi.

REGEX

Regular Expression: un modello di testo utilizzato per la corrispondenza tra combinazioni di caratteri in diverse stringhe.

Regex permette di ricercare facilmente determinate sequenze di caratteri in un testo e convalidare l’input dell’utente. Regex è parte di molti linguaggi di programmazione, come JavaScript, PHP, Python, Ruby, Java, e altri.

REST

Representational State Transfer: Un insieme di progettazione software per la trasmissione di dati tra client e server. Seguendo i principi dell’architettura REST è possibile creare RESTFUL API per le nostre applicazioni web.

SCM

Source Control Management: un sistema per la gestione di più versioni dello stesso documento, applicazione, codice o altri tipi di informazioni. Chiamato anche gestione di controllo delle revisioni.

SCM permette di tenere traccia delle modifiche e prevenire la perdita di informazioni. I più popolari sistemi SCM sono GIT e SVN.

SMACSS

Scalable and Modular Architecture for Cascading Style Sheets: Una metodologia di scrittura CSS che consente di rendere modulare il codice CSS e renderlo più leggibile e gestibile.

SMACSS definisce 5 tipi di regole di stile (base, layout, modulo, statali, tema) e li identifica con diversi prefissi di selezione.

WYSIWYG

What You See Is What You Get: Un tipo di editor di contenuti che consente agli utenti di modificare il testo, immagini e altro, senza scrivere alcun codice.

In un editor WYSIWYG, gli utenti possono vedere il risultato finale in temo reale. L’interfaccia post editor di WordPress e altre piattaforme blogging sono esempi di sistemi WYSIWYG.

 

Alla Prossima.

 

Approfondimenti correlati

Fonte ufficiale: MDN Web Docs Glossary.

Domande frequenti

Qual è la differenza tra HTTP e HTTPS?

HTTPS è HTTP trasportato su una connessione protetta da TLS, che autentica il server e cifra i dati in transito.

DNS e URL indicano la stessa cosa?

No. Il DNS risolve nomi in indirizzi o altri record; l’URL identifica una risorsa e include schema, host e percorso.

API e SDK sono sinonimi?

No. Un’API definisce come interagire con un servizio; un SDK include strumenti, librerie e documentazione per sviluppare.

Gli snippet WordPress sono frammenti di codice che modificano il comportamento del CMS. È preferibile inserirli in un plugin dedicato o child theme, documentarli e testarli in staging. Un errore PHP può rendere il sito non accessibile, quindi servono backup e accesso ai file per ripristinare rapidamente.

I migliori codici Snippets per il tuo sito WordPress | I Codici Snippet sono porzioni di codice che ti aiutano a correggere molti errori di WordPress, a proteggere il tuo sito web migliorandone la sicurezza e addirittura possono aggiungere nuove funzionalità al tuo sito WordPress.

Nel dettaglio, queste porzioni di codice possono servire a svolgere delle funzioni più tecniche come ad esempio:

  • Effettuare redirect verso Mobile
  • Decomprimere un archivio zippato
  • Calcolare l’ultimo giorno del mese
  • Nascondere la versione di WordPress
  • Rimuovere la barra admin di WordPress
  • Eliminare dei Widget dal Template
  • Molto altro ancora…

Questi Snippets possono essere inseriti all’interno del file di WordPress functions.php ma esiste il rischio concreto di perderli in caso di aggiornamenti o di modifiche fortuite quindi consigliamo di utilizzare il Plugin WordPress Code Snippets che ti faciliterà il lavoro e ti renderà la vita più semplice.

Snippet WordPress utili: esempi e buone pratiche

Una volta installato il Plugin Code Snippets non dovrai far altro che aggiungere le porzioni di codice (Snippets) cliccando sul pulsante “Add New” e successivamente dovrai attivarle.

Però prima di effettuare qualsiasi modifica ti consigliamo di effettuare sempre un backup perché può succedere che questi codice possano andare in conflitto con alcuni plugin già installati e di conseguenza all’interno del tuo sito WordPress si verificheranno degli errori.

Di seguito il team di Xlogic ti mostrerà i migliori codici Snippets che ti aiuteranno a configurare il tuo sito WordPress:

Rimani loggato su WordPress per il tempo che desideri

Di default se selezionata la voce “ricordami” dopo aver effettuato l’accesso al sito, WordPress ti consentirà di accedere senza inserire nuovamente le credenziali per 14 giorni, con questo Snippet potrai modificare la durata dei giorni, in questo modo potrai rimanere connesso per un periodo di tempo più lungo rispetto a quello attuale.

// Stay logged in for longer periods
add_filter( ‘auth_cookie_expiration’, ‘keep_me_logged_in’ );
function keep_me_logged_in( $expirein ) {
return 31556926; // 1 year in seconds
}

Abilita le impostazioni nascoste di WordPress

Lo sai che WordPress ha nascosto delle impostazioni per evitare che l’utente medio combini dei pasticci? Se sei esperto o comunque te la cavi ti consigliamo di attivare le impostazioni nascoste per personalizzare ancora di più il tuo sito WordPress.

//Show Hidden All Settings Menu in WordPress
function all_settings_link() {
add_options_page(__(‘All Settings’), __(‘All Settings’), ‘administrator’, ‘options.php’);
}
add_action(‘admin_menu’, ‘all_settings_link’);

Visualizza i Post popolari senza installare i Plugin

Per visualizzare la sezione dei Post Popolari devi inserire il seguente codice Snippet:

function count_post_visits() {
if( is_single() ) {
global $post;
$views = get_post_meta( $post->ID, ‘my_post_viewed’, true );
if( $views == ” ) {
update_post_meta( $post->ID, ‘my_post_viewed’, ‘1’ );
} else {
$views_no = intval( $views );
update_post_meta( $post->ID, ‘my_post_viewed’, ++$views_no );
}
}
}
add_action( ‘wp_head’, ‘count_post_visits’ );

Ma non è finita qua, dopo di che dovrai aprire la pagina in cui vuoi visualizzare la sezione dei Post Popolari ed inserire questo codice:

$popular_posts_args = array(
‘posts_per_page’ => 3,
‘meta_key’ => ‘my_post_viewed’,
‘orderby’ => ‘meta_value_num’,
‘order’=> ‘DESC’
);
$popular_posts_loop = new WP_Query( $popular_posts_args );
while( $popular_posts_loop->have_posts() ):
$popular_posts_loop->the_post();
// Loop continues
endwhile;
wp_reset_query();

Impagina il sito WordPress senza installare i Plugin

Se impagini correttamente il tuo sito web il visitatore avrà la possibilità di navigare in maniera più semplice ed intuitiva, per far questo devi inserire il seguente codice Snippet:

global $wp_query;
$total = $wp_query->max_num_pages;
// only bother with the rest if we have more than 1 page!
if ( $total > 1 ) {
// get the current page
if ( !$current_page = get_query_var(‘paged’) )
$current_page = 1;
// structure of “format” depends on whether we’re using pretty permalinks
$format = empty( get_option(‘permalink_structure’) ) ? ‘&page=%#%’ : ‘page/%#%/’;
echo paginate_links(array(
‘base’ => get_pagenum_link(1) . ‘%_%’,
‘format’ => $format,
‘current’ => $current_page,
‘total’ => $total,
‘mid_size’ => 4,
‘type’ => ‘list’
));
}

Rimuovi la barra Admin di WordPress

// Remove the admin bar from the front end
add_filter( ‘show_admin_bar’, ‘__return_false’ );

Cambia la struttura permalink dell’autore

Di default WordPress mostra il profilo dell’autore sul seguente link “sito.it/autore/nome”, con questo codice Snippet potrai personalizzare il percorso:

add_action(‘init’, ‘cng_author_base’);
function cng_author_base() {
global $wp_rewrite;
$author_slug = ‘profile’; // change slug name
$wp_rewrite->author_base = $author_slug;
}

Disattiva la funzione di ricerca WordPress

La funzione di ricerca è un impostazione predefinita di WordPress ma se il tuo sito non la richiede o comunque non vuoi che gli utenti effettuino delle ricerche all’interno del tuo sito web, devi aggiungere questa porzione di codice:

function fb_filter_query( $query, $error = true ) {

if ( is_search() ) {
$query->is_search = false;
$query->query_vars[s] = false;
$query->query[s] = false;

// to error
if ( $error == true )
$query->is_404 = true;
}
}

add_action( ‘parse_query’, ‘fb_filter_query’ );
add_filter( ‘get_search_form’, create_function( ‘$a’, “return null;” ) );

Mostra le miniature dei Post nei Feed RSS

// Put post thumbnails into rss feed
function wpfme_feed_post_thumbnail($content) {
global $post;
if(has_post_thumbnail($post->ID)) {
$content = ” . $content;
}
return $content;
}
add_filter(‘the_excerpt_rss’, ‘wpfme_feed_post_thumbnail’);
add_filter(‘the_content_feed’, ‘wpfme_feed_post_thumbnail’);

Proteggi il tuo sito WordPress dagli attacchi Brutal Force

Questo Snippets ha il compito di rifiutare tutte le richieste considerate dannose evitando in questo modo di subire gli attacchi Brutal Force.

global $user_ID; if($user_ID) {
if(!current_user_can(‘administrator’)) {
if (strlen($_SERVER[‘REQUEST_URI’]) > 255 ||
stripos($_SERVER[‘REQUEST_URI’], “eval(“) ||
stripos($_SERVER[‘REQUEST_URI’], “CONCAT”) ||
stripos($_SERVER[‘REQUEST_URI’], “UNION+SELECT”) ||
stripos($_SERVER[‘REQUEST_URI’], “base64”)) {
@header(“HTTP/1.1 414 Request-URI Too Long”);
@header(“Status: 414 Request-URI Too Long”);
@header(“Connection: Close”);
@exit;
}
}
}

Disattiva il collegamento automatico degli Url nei commenti di WordPress

Se nel form dei commenti l’utente incolla un link di testo, WordPress lo convertirà automaticamente in un collegamento ipertestuale, quindi se desideri visualizzare semplicemente il link devi inserire questo codice Snippet:

//Disable URL Auto-Linking in WordPress Comments
remove_filter( ‘comment_text’, ‘make_clickable’, 9 );

Traduci la voce “Reply” con la voce “Rispondi” nella sezione dei commenti

Modifica il testo predefinito Reply inserendo ciò che desideri nella sezione dei commenti.

//Change Reply Text in WordPress Comments
function bs_modified_comment_reply_text( $link ) {
$link = str_replace( ‘Reply’, ‘Rispondi’, $link );
return $link;
}
add_filter( ‘comment_reply_link’, ‘bs_modified_comment_reply_text’ );

 

 

Approfondimenti correlati

Fonte ufficiale: WordPress Plugin Handbook.

Domande frequenti

Meglio functions.php o un plugin?

Un plugin dedicato rende la funzione indipendente dal tema. Il child theme è adatto quando il comportamento è strettamente legato alla presentazione.

Come testare uno snippet?

Usa staging, controlla log PHP e prova casi limite. Non incollare codice di origine sconosciuta su un sito in produzione.

Come disattivarlo dopo un errore?

Accedi via File Manager o SFTP, rinomina il plugin o ripristina il file modificato dalla copia precedente.

Questa guida file .htaccess è rivolta a chi deve gestire direttive Apache in ambienti che consentono override. Una regola errata può generare errori 500, redirect ciclici o blocchi di accesso. Prima di modificare il file bisogna salvarne una copia, applicare una variazione alla volta e conoscere la document root coinvolta.

Nota di aggiornamento: Questa è la guida avanzata; l’articolo ID 18045 resta la guida introduttiva per utenti non sviluppatori.

Guida al file htaccess per il tuo sito WordPress – Esistono moltissimi fattori che ti permettono di personalizzare il tuo sito web, per esempio con Xlogic Hosting è possibile gestire le versioni PHP ed i relativi parametri direttamente dal miglior pannello di controllo presente sul mercato, cPanel Hosting.

Se non conosci cPanel lo puoi testare gratuitamente senza il bisogno di iscriverti o di lasciare i tuoi dati attraverso questa pagina: Demo cPanel

E’ possibile effettuare moltissime modifiche da cPanel WordPress, ad esempio puoi aumentare il limite di upload del sito web, il valore php Memory Limit, il valore Post Max Size ma ci sono delle operazioni che non possono essere effettuate direttamente da cPanel ma è necessario utilizzare un altro file molto importante se non indispensabile, mi riferisco al htaccess file.


Indice dei contenuti file .htaccess

1. Che cos’è il file .htaccess

2. Come visualizzare il file .htaccess

3. Come creare il file .htaccess WordPress

4. .htaccess WordPress – rendi sicuro il tuo sito

  1. Impedisci di scoprire il nome utente di WordPress
  2. Proteggi l’area di login di WordPress
  3. Autorizza determinati IP per accedere nel backend di WordPress
  4. Impedisci l’introduzione e l’esecuzione dei files .php
  5. Proteggi i files importanti di WordPress
  6. Proteggi la directory wp-includes
  7. Escludi la Directory dalla navigazione
  8. Proteggi il sito WordPress da aggiunte di codice

5. Quali operazioni puoi effettuare con il file .htaccess

  1. Effettua un htaccess redirect 301 o htaccess redirect 404
  2. Reindirizza tutto il traffico da http:// ad https://
  3. Impedisci la visualizzazione delle Directory
  4. Imposta i files principali
  5. Previeni l’hotlinking delle immagini
  6. Proteggi le tue cartelle con una Password
  7. Blocca gli indirizzi IP specifici che fanno Spam
  8. Come impostare WWW o non WWW
  9. Scopri come forzare il download dei files multimediali
  10. Visualizza gli errori che possono essere presenti in un sito

6. .htaccess test – scopri se hai inserito bene le regole all’interno del tuo sito WordPress


.htaccess: la guida definitiva per usare il file htaccess

.htaccess: la guida definitiva per usare il file htaccess

Attraverso il file htaccess è possibile effettuare moltissime operazioni, come ad esempio htaccess rewrite, .htaccess redirect, il ripristino di determinati documenti, l’attivazione della cache di WordPress, la gestione dei Robot e Crawler dei motori di ricerca come Google e Bing. 

Moltissime persone hanno paura di mettere mano al file .htaccess anche perché se la modifica non viene effettuata correttamente c’è il rischio che il sito WordPress non venga più visualizzato.

Detto questo, all’interno di questo articolo ti spiegheremo esattamente che cos’è il file htaccess, come funziona e quali sono le operazioni che possono essere effettuate inclusi i principali trucchi ed ottimizzazioni del file htaccess wordpress

Ma ancora prima di iniziare ad elencare le operazioni che possono essere effettuate, è necessario capire che cos’è il file .htacces e quale è la sua funzione.

Che cos’è il file .htaccess

Il file .htaccess è un file di configurazione utilizzato dal Web Server Apache che può comunicare a quest’ultimo come presentare varie forme di informazione e come gestire alcune intestazioni di richiesta HTTP.

In pratica il file .htaccess è un mezzo di decentralizzazione per poter organizzare le funzionalità di ogni singolo sito web in un unico posto.

E’ anche possibile utilizzare un file .htaccess per ciascun sito web ma non lo consigliamo perché potrebbe non essere sicuro ed il tuo account potrebbe essere soggetto ad un eventuale attacco hacker.

Come visualizzare il file .htaccess

Il file htaccess editor può essere visualizzato e modificato accedendo via FTP oppure accedendo all’interno del Gestore File di cPanel, solitamente il file non è visibile, quindi è necessario visualizzare le cartelle ed i files nascosti, scopri come visualizzare il file .htaccess

Come creare il file .htaccess WordPress

Il tuo sito web potrebbe non possedere di default un file .htaccess, nessun problema! Puoi creare il file htaccess generator direttamente da cPanel o utilizzando un Editor di testo come il Blocco Note o NotePad++

Devi semplicemente generare un nuovo file chiamandolo .htaccess ed inserire all’interno questo codice:

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

Se invece hai attivato Multisite su WordPress dovrai utilizzare il seguente codice:

RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*.php)$ $2 [L]
RewriteRule . index.php [L]

htaccess WordPress – proteggi il tuo sito WP

WordPress è il CMS più utilizzato sul Web, quindi abbiamo deciso di dedicare un paragrafo esclusivamente per WordPress .htaccess, vediamo insieme in che modo puoi aumentare la sicurezza e le performance del tuo sito WordPress grazie al file .htaccess editor:

a) .htaccess – impedisci di scoprire il nome utente di WordPress

Se un utente inserisce l’URL tuosito.com/?author=1, viene rendirizzato all’interno della pagina dell’autore, in questo modo l’utente ha la possibilità di raccogliere tutti i nomi utenti usati da chi ha pubblicato contenuti sul tuo sito.

Se l’utente è un malintezionato e vuole bucare il tuo sito WordPress deve solamente trovare la password che se non è complessa può succedere che il tuo sito sia in serio pericolo.

Per evitare questa situazione devi semplicemente inserire all’interno del file htaccess il seguente codice:

 RewriteCond %{QUERY_STRING} author=d
 RewriteRule ^ /? [L,R=301]

b) .htaccess password – proteggi l’area di login di WordPress

Tutti gli utenti che utilizzano WordPress sanno che per accedere al backend del CMS devono effettuare il login mediante il percorso /wp-admin oppure /wp-login.php

Per rendere più sicuro il proprio sito web WordPress è possibile proteggere con una Password l’area di Login per accedere nel backend di WordPress.

Apri il file .htaccess ed inserisci quanto segue:

1
2
3
4
5
6
7
8
9
Order Deny,Allow
Deny from All
Satisfy Any
AuthName "Protected By AskApache"
AuthUserFile /web/askapache.com/.htpasswda1
AuthType Basic
Require valid-user

E’ anche possibile proteggere con password le altre cartelle, per conoscere il codice da inserire per proteggere altre Directory guarda questo link.

c) Autorizza determinati IP per accedere nel backend di WordPress

Se hai un ip statico puoi limitare l’accesso solamente al tuo IP all’interno della bacheca di WordPress, gli indirizzi IP non autorizzati verranno rimandati alla pagina di errore 404.

Per far questo è necessario inserire il seguente codice all’interno del file .htaccess e sostituire “Il tuo indirizzo IP1” con il tuo indirizzo IP statico, se non lo conosci lo puoi visualizzare accedendo all’interno del sito mio-ip.org!

ErrorDocument 401 /tuo-sito-wordpress/index.php?error=404
ErrorDocument 403 /tuo-sito-wordpress/index.php?error=404
RewriteEngine on
RewriteCond %{REQUEST_URI} ^(.*)?wp-login.php(.*)$ [OR]
RewriteCond %{REQUEST_URI} ^(.*)?wp-admin$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 1$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 2$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 3$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 4$
RewriteCond %{REMOTE_ADDR} !^Il tuo indirizzo IP 5$
RewriteRule ^(.*)$ - [R=403,L]

d) Impedisci l’introduzione e l’esecuzione dei files .php

La maggior parte delle volte un virus / malware si trova all’interno di un file eseguibile come il file .php, quindi per evitare che accada questa disgrazia ti consigliamo di aggiungere all’interno del file questo codice:

RewriteCond %{REQUEST_URI} !^/wp-content/plugins/file/to/exclude.php
RewriteCond %{REQUEST_URI} !^/wp-content/plugins/directory/to/exclude/
RewriteRule wp-content/plugins/(.*.php)$ - [R=404,L]
RewriteCond %{REQUEST_URI} !^/wp-content/themes/file/to/exclude.php
RewriteCond %{REQUEST_URI} !^/wp-content/themes/directory/to/exclude/
RewriteRule wp-content/themes/(.*.php)$ - [R=404,L]

e) Proteggi i files importanti di WordPress

Attraverso questo codice potrai proteggere files importanti come il file error_log ed il file di configurazione WordPress nonché wp-config.php

<FilesMatch "^.*(error_log|wp-config.php|.[hH][tT][aApP].*)$">
Order deny,allow
Deny from all
</FilesMatch>

f) Proteggi la directory wp-includes

All’interno della cartella wp-includes si trovano moltissimi files importanti, tramite questo codice bloccherai l’accesso a qualsiasi persona.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>

g) Escludi la Directory dalla navigazione

Essendo che WordPress ha una struttura predefinita, qualsiasi persona la può conoscere, quindi inserendo il codice sotto riportato puoi escludere la directory dalla navigazione.

Options All -Indexes

h) Proteggi il sito WordPress da aggiunte di codice

Gli hacker tentano sempre di modificare le variabili di WordPress _REQUEST e GLOBAL per provare ad accedere all’interno del sito web, mediante questo codice impedisci di far inserire del codice all’interno di WordPress.

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{QUERY_STRING} (<|%3C).*script.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|[|%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|[|%[0-9A-Z]{0,2})
RewriteRule ^(.*)$ index.php [F,L]

Quali operazioni puoi effettuare con il file .htaccess

Prima di effettuare qualsiai operazione sul file htaccess WordPress ti consigliamo di eseguire sempre un backup completo del tuo sito web.

Se sei cliente di Xlogic Hosting hai la possibilità di generare un backup su cPanel oppure puoi acquistare il servizio di Backup automatico JetBackup, in questo modo non dovrai più pensare a nulla perché per qualsiasi problema avrai la possibilità di ripristinare un backup in due semplicissimi click.

Il file può essere utilizzato sia su un sistema htaccess apache ma anche su un sistema htaccess litespeed, a proposito, noi di Xlogic Hosting utilizziamo LiteSpeed, un sostituto di Apache migliore in termini di velocità e di sicurezza, se non conosci il Web Server LiteSpeed ti invito a consultare questa pagina: LiteSpeed – CloudLinux.

Scopri quali sono le principali operazioni che puoi effettuare inserendo delle determinate regole all’interno del file rewriterule htaccess.

a) Come effettuare un htaccess redirect 301 o redirect 404

I redirect 301 sono necessari quando si vuole indicare ai crawler dei motori di ricerca che una determinata pagina è stata spostata definitivamente ad un altro indirizzo, per far questo è necessario inserire questo codice:

Redirect 301 /vecchio.php http://www.nuovosito.com/nuovo.php

esempio: Redirect 301 https://test.xlogic.org/ https://xlogic.org

In questo modo l’utente che accederà all’interno del sottodominio test.xlogic.org verrà reindirizzato al sito principale nonché xlogic.org

Mentre l’errore 404 è molto importante e se non viene gestito nel migliore dei modi rischia di danneggiare il nostro sito web, quindi per poter risolvere il problema è necessario inserire nel file .htaccess il seguente codice:

# Pagina per errori 404
ErrorDocument 404 /errore-404.html

In questo modo l’utente che visualizza una pagina non esistente verrà automaticamente reindirizzato alla pagina 404.

b) Come reindirizzare tutto il traffico da http:// ad https://

A google piacciono i siti web sicuri, quindi è molto importante che tutto il traffico venga reindirizzato mediante il protocollo https://, per far questo devi inserire il seguente codice all’interno del file:

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Se non possiedi un certificato SSL diventa nostro cliente! Offriamo gratuitamente su tutti i nostri piani Hosting uno o più certificati SSL della Comodo per tutti i tuoi domini e sottodomini!

c) Come impedire la visualizzazione delle Directory

E’ necessario inserire questo codice all’interno del file htaccess quando ad esempio il visitatore visualizza un immagine del sito ma se modifica il percorso riesci a vedere anche tutti gli altri files che non dovrebbero essere visibili, mi spiego meglio facendo un esempio:

1) Il visitatore visualizza questa immagine:

  • https://xlogic.org/images/server02.png

2) Se non inserisci il codice, qualsiasi visitatore avrà la possibilità di visualizzare anche gli altri files presenti all’interno della cartella /images/

In pratica con il file .htaccess impedisci ai visitatori di visualizzare il contenuto delle directory.

Per impedire la visualizzazione delle directory e dei files presenti, devi creare un file .htaccess all’interno di ogni cartella che non vuoi rendere visibile e devi inserire questo codice:

1
Options -Indexes

d) Impostazioni della Directory

E’ possibile comunicare al Web Server quali documenti dovrebbero essere inizialmente trattati come i documenti principali, devi semplicemente inserire questo codice:

1
DirectoryIndex index.html index.cgi index.php

Questo significa che i tre files indicati all’interno del file .htaccess (in ordine di inserimento) verranno considerati dal sistema come files principali per poter rendere visibile il tuo sito web.

e) Come prevenire l’hotlinking delle immagini

Questa situazione si verifica quando altre persone copiano l’url di un immagine da un tuo articolo o pagina e la usano sul proprio sito, in questo modo non la caricano sul loro Server ma utilizzano la tua banda rallentando così il tuo sito WordPress.

Per evitare questo problema è necessario accedere all’interno del file htaccess ed inserire questo codice:

RewriteEngine On RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} 
!^https://(www.)?your-site.com/.*$ [NC] RewriteRule .(gif|jpg)$ 
https://www.your-site.com/hotlink.gif [R,L]

Al posto di your-site.com devi inserire il nome del tuo dominio mentre invece di https://www.your-site.com/hotlink.gif devi inserire l’intero percorso dove si trova l’immagine da proteggere.

f) Come proteggere le tue cartelle con una Password

La protezione delle Directory con una Password è una procedura molto comune che ha il compito di proteggere le aree di amministrazione e molte altre cartelle ritenute importanti all’interno del tuo sito WordPress.

Segui questa procedura per proteggere una determinata cartella con una Password:

1) Crea un file .htaccess all’interno della cartella che desideri proteggere

2) Inserisci il seguente codice all’interno del file htaccess password:

AuthName “Area Protetta”
AuthUserFile /path/to/password/file/.htpasswd
AuthType Basic
require valid-user

  • La prima riga indica al Server che la Directory protetta è denominata “Area Protetta”
  • La seconda riga indica la posizione del file Password
  • La terza riga indica la tipologia di Autenticazione
  • La quarta riga indica che abbiamo bisogno di credenziali di accesso valide che può essere usata anche per specificare un nome utente specifico come ad esempio: ‘require user username’ richiede il nome utente ‘username’.

3) Sostituisci all’interno del file .htaccess il percorso (/path/to/password/file/.htpasswd) con il percorso reale che permette di connettere il file .htaccess password all’interno del tuo sito WordPress.

4) Crea il file .htpasswd all’interno della cartella che hai scelto ed inserisci questo codice all’interno del file htaccess:

username:encryptedpassword
xlogic_test:lWE10RTRaaCVFUc1
K

Hai la possibilità di generare una password complessa cliccando su questo link: htpassword generator

g) Firewall .htaccess – come bloccare determinati indirizzi IP per Spam

E’ possibile riconoscere potenziali visitatori che effettuano Spam e negare loro l’accesso al tuo sito web; Questa operazione può sembrare estrema ma a volte può succedere che una persona o un gruppo di persone prendano di mira il tuo sito web e questa può essere un’ottima soluzione per bloccare gli attacchi.

Puoi scegliere anche un dominio di riferimento per negare o escludere i visitatori da un indirizzo IP.

1
2
3
4
order allow,deny
deny from 200.0.0.0
deny from 130.50.5.
allow from all

Questo blocco di IP avrà come target il primo IP (200.0.0.0) ed ogni IP entro l’intervallo di 130.5.5.(da .0 a 200).

h) Dominio e Sottodominio – WWW e non WWW

I motori di ricerca possono indicizzare il sito web sia con www che senza www, però conviene impostarlo solamente in un unico modo, per far questo è necessario inserire il seguente codice:

1
2
3
4
5
6
7
8
9
# Forza il sottodominio con www
RewriteEngine On
RewriteCond %{HTTP_HOST} ^dominio.it [NC]
RewriteRule ^(.*)$ http://www.dominio.it/$1 [L,R=301]
# No Sottodominio
RewriteEngine On
RewriteCond %{HTTP_HOST} !^dominio.it$ [NC]
RewriteRule ^(.*)$ http://dominio.it/$1 [L,R=301]

Questo codice proviene da questo archivio e fornisce una soluzione molto utile.

i) Forza il Download dei files multimediali al posto di essere visualizzati sul Browser

Attraverso questo codice potrai permettere al visitatore di effettuare il download diretto del file multimediale invece di produrre il video o l’audio direttamente dal Browser:

1
AddType application/octet-stream .zip .rar .mp3 .avi .mp4

Ovviamente dovrai inserire all’interno del codice il formato che ti interessa.

j) Visualizza gli Errori .htaccess

Solitamente questi errori “numerici” vengono visualizzati solamente lato server, in questo modo potrai conoscere tutti gli errori che possono essere presenti sul tuo sito web.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
ErrorDocument 100 /100_CONTINUE
ErrorDocument 101 /101_SWITCHING_PROTOCOLS
ErrorDocument 102 /102_PROCESSING
ErrorDocument 200 /200_OK
ErrorDocument 201 /201_CREATED
ErrorDocument 202 /202_ACCEPTED
ErrorDocument 203 /203_NON_AUTHORITATIVE
ErrorDocument 204 /204_NO_CONTENT
ErrorDocument 205 /205_RESET_CONTENT
ErrorDocument 206 /206_PARTIAL_CONTENT
ErrorDocument 207 /207_MULTI_STATUS
ErrorDocument 300 /300_MULTIPLE_CHOICES
ErrorDocument 301 /301_MOVED_PERMANENTLY
ErrorDocument 302 /302_MOVED_TEMPORARILY
ErrorDocument 303 /303_SEE_OTHER
ErrorDocument 304 /304_NOT_MODIFIED
ErrorDocument 305 /305_USE_PROXY
ErrorDocument 307 /307_TEMPORARY_REDIRECT
ErrorDocument 400 /400_BAD_REQUEST
ErrorDocument 401 /401_UNAUTHORIZED
ErrorDocument 402 /402_PAYMENT_REQUIRED
ErrorDocument 403 /403_FORBIDDEN
ErrorDocument 404 /404_NOT_FOUND
ErrorDocument 405 /405_METHOD_NOT_ALLOWED
ErrorDocument 406 /406_NOT_ACCEPTABLE
ErrorDocument 407 /407_PROXY_AUTHENTICATION_REQUIRED
ErrorDocument 408 /408_REQUEST_TIME_OUT
ErrorDocument 409 /409_CONFLICT
ErrorDocument 410 /410_GONE
ErrorDocument 411 /411_LENGTH_REQUIRED
ErrorDocument 412 /412_PRECONDITION_FAILED
ErrorDocument 413 /413_REQUEST_ENTITY_TOO_LARGE
ErrorDocument 414 /414_REQUEST_URI_TOO_LARGE
ErrorDocument 415 /415_UNSUPPORTED_MEDIA_TYPE
ErrorDocument 416 /416_RANGE_NOT_SATISFIABLE
ErrorDocument 417 /417_EXPECTATION_FAILED
ErrorDocument 422 /422_UNPROCESSABLE_ENTITY
ErrorDocument 423 /423_LOCKED
ErrorDocument 424 /424_FAILED_DEPENDENCY
ErrorDocument 426 /426_UPGRADE_REQUIRED
ErrorDocument 500 /500_INTERNAL_SERVER_ERROR
ErrorDocument 501 /501_NOT_IMPLEMENTED
ErrorDocument 502 /502_BAD_GATEWAY
ErrorDocument 503 /503_SERVICE_UNAVAILABLE
ErrorDocument 504 /504_GATEWAY_TIME_OUT
ErrorDocument 505 /505_VERSION_NOT_SUPPORTED
ErrorDocument 506 /506_VARIANT_ALSO_VARIES
ErrorDocument 507 /507_INSUFFICIENT_STORAGE
ErrorDocument 510 /510_NOT_EXTENDED

htaccess tester – scopri il file htaccess di un sito

Controlla le regole di rewrite htaccess inserendo semplicemente l’url alla quale stai appicando le regole, posiziona il contenuto all’interno dell’area dedicata e procedi ad effettuare la verifica, ecco come! Testa le regole del file htaccess

htaccess tester xlogic

 

Alla prossima!

Approfondimenti correlati

Fonte ufficiale: Apache HTTP Server: .htaccess.

Domande frequenti

Tutti i server usano .htaccess?

No. È una funzione tipica di Apache e server compatibili; altri web server usano configurazioni differenti o traducono solo alcune direttive.

Dove si trova il file?

Di solito nella document root del sito, ma possono esistere file in sottocartelle. Le regole ereditate dipendono dalla configurazione server.

Come risolvere un errore 500 dopo una modifica?

Ripristina la copia precedente, controlla log errori e sintassi, quindi reintroduci le direttive una alla volta.

PHP gestisce la logica dell’applicazione, mentre MySQL conserva dati strutturati. Un’applicazione moderna dovrebbe usare estensioni supportate come PDO o MySQLi, query preparate, gestione degli errori e credenziali con privilegi minimi. Il codice di esempio va adattato alla versione PHP e testato in un ambiente non pubblico.

Nota di aggiornamento: Gli esempi devono essere verificati con la versione PHP e MySQL/MariaDB realmente installata.

Come lavorano insieme PHP e MySQL

PHP è il linguaggio di scripting più importante per lo sviluppo web. E ‘gratuito, open source e server-side (il codice viene eseguito sul server). MySQL è un Relational Database Management System (RDBMS) che utilizza Structured Query Language (SQL), anch’esso è gratuito e open source. La combinazione di PHP e MySQL consente di creare praticamente qualsiasi tipo di sito web, dal modulo di contatto al portale aziendale.

 

Che cosa è PHP?

PHP è stato inizialmente creato come piattaforma di scripting, chiamato “Personal Home Page”. Oggi PHP (l’abbreviazione di Hypertext Preprocessor) è un’alternativa alle pagine di Microsoft ASP (Active Server Pages).

PHP è un linguaggio lato server (open source) che viene utilizzato per creare pagine web dinamiche, solitamente è usato in combinazione con un database MySQL su un server Linux / UNIX  e può essere anche integrato nell’HTML.

Una spiegazione completa di tutti i tag PHP, manuale d’uso e molti tutorial si trovano sulla pagina ufficiale di PHP .

 

Che cosa è MySQL?

MySQL è un Relational Database Management System (RDBMS) che utilizza Structured Query Language (SQL), anch’esso è gratuito e open source.

SQL è il linguaggio più popolare per l’aggiunta, l’accesso e la gestione dei contenuti in un database. E ‘ noto per la sua rapida elaborazione, affidabilità, facilità e flessibilità di utilizzo. MySQL è una parte essenziale di quasi tutte le applicazioni open source PHP, alcuni esempi per PHP / MySQL sono: phpBB, osCommerce,  Joomla e WordPress .

 

Creazione dell’utente e del database MySQL

Per creare un database MySQL, entriamo in cPanel (incluso nei nostri Piani Hosting) e clicchiamo su Database MySQL.

Come usare PHP e MySQL: guida introduttiva

 

 

 

 

Per creare un nuovo database è necessario immettere il nome desiderato per il database e cliccare su Crea Database.
Come usare PHP e MySQL: guida introduttiva

 

 

 

 

 

 

Verrà visualizzata una schermata di conferma, informando che il database è stato creato correttamente.

Come usare PHP e MySQL: guida introduttiva

 

 

 

 

 

 

NB: Il database MySQL è stato creato con il nome utente (Account) come prefisso: nomeutente_nomedatabase, questo è il nome che si deve utilizzare per le applicazioni.

 

Ora è possibile continuare con la creazione di un utente che dovrebbe essere in grado di connettersi al database appena creato. Clicchiamo su Passa agli Utenti mySQL: per creare un utente è sufficiente inserire il nome utente, la password desiderata e cliccare su Crea Utente.

Come usare PHP e MySQL: guida introduttiva

 

 

 

 

 

NB: Si dovrebbe sempre tenere a mente che il nome utente (Account cPanel) verrà aggiunto come prefisso a tutti i database e i nomi degli utenti creati.

 

Una volta che il database e il nome utente sono stati creati è possibile aggiungere alcuni privilegi per l’utente al database. Clicchiamo su Aggiungi un utente al database e su Invia.

Come usare PHP e MySQL: guida introduttiva

 

 

 

 

Sarete reindirizzati ad una schermata in cui vi sarà chiesto di scegliere i privilegi desiderati. Si consiglia di selezionare tutti i privilegi.

 

Gestire il Database mySQL con phpMyAdmin

phpMyAdmin supporta la maggior parte delle funzioni di MySQL come sfogliare, creare, copiare e modificare i database, le tabelle, i campi e gli indici, eseguire query MySQL, gestire procedure e funzioni. Inoltre è possibile Importare dati da file CSV e SQL o esportare i dati in vari formati: CSV, SQL, XML, PDF, Word, Excel, LATEX e altri. La lista completa delle caratteristiche di PhpMyAdmin si trova nel sito ufficiale .

Per gestire il database appena creato clicchiamo su phpMyAdmin

Come usare PHP e MySQL: guida introduttiva

 

 

 

 

Si aprirà una nuova pagina del Browser con phpMyAdmin caricato.

Come usare PHP e MySQL: guida introduttiva

 

 

 

 

 

 

 

Selezionando il database sarà possibile effettuare molte operazioni: eseguire query MySQL, ottimizzare, riparare, gestire il backup o il ripristino del database e molto altro.

 

Creare una tabella in un Database 

Prima di tutto è necessario creare un tabella e impostare i campi corrispondenti in essa.

La creazione di una tabella in phpMyAdmin è semplice, basta cliccare su Crea Tabella, digitare il nome, selezionare il numero di campi e cliccare su Esegui.

Come usare PHP e MySQL: guida introduttiva

 

 

 

 

 

Compiliamo i campi per il database e salviamo.

 

In alternativa, è possibile eseguire una query MySQL, che creerà la tabella.

Il formato è il seguente:

CREATE TABLE tablename (

Fields

)

I campi sono definiti come segue:

fieldname type(length) extra info,

I campi sono separati da virgola.

Per esempio, se si desidera creare una tabella chiamata Utenti con 3 campi in esso – Nome, Cognome e Età è necessario eseguire la seguente query:

CREATE TABLE Members
(
FirstName varchar(15),
LastName varchar(15),
Age int
);

 

Come connettersi al Database

Ora, stabiliamo una connessione al database MySQL. Questo è un passo estremamente importante, perché se lo script non riesce a connettersi al suo database, le query al database fallisce.

Una buona pratica quando si utilizzano i database è quello di impostare il nome utente, la password e i valori del database all’inizio del codice dello script.

$username=”nome_username”;
$password=”nome_password”;
$database=”nome_database”;

Sostituiamo “nome_utente”, “nome_password” e “nome_database” con il nome utente MySQL, password e database che verrà utilizzato dallo script.

Vi starete chiedendo se mantenere la password nel file è un rischio per la sicurezza. Non c’è bisogno di preoccuparsi perché il codice sorgente PHP viene elaborato dal server prima di essere inviato al browser, quindi il visitatore non vedrà il codice dello script nel codice sorgente della pagina.

Colleghiamo lo script PHP al database. Questo può essere fatto con la funzione PHP mysql_connect :

mysql_connect(localhost,$username,$password)

Questa linea dice a PHP di connettersi al server di database MySQL a ‘ localhost ‘ (localhost è il server MySQL, che di solito va sullo stesso server fisico come lo script).

Quando la connessione viene stabilita si deve selezionare il database che si desidera utilizzare, questo dovrebbe essere un database in cui il nome utente ha accesso. Questo passo può essere completato attraverso il seguente comando:

@mysql_select_db($database) or die( “Unable to select database”);

Se lo script non riesce a connettersi si fermerà l’esecuzione e verrà visualizzato il messaggio di errore:

Unable to select database

Una funzione PHP importante è la seguente:

mysql_close();

Questa è una funzione molto importante in quanto chiude la connessione al server. Lo script rimarrà in esecuzione se non si include questa funzione. Troppe connessioni MySQL aperte possono causare problemi per l’account.

 

Come interrogare il Database

Ci sono due modi per interrogare un database. Uno è quello di inserire un comando in PHP.

Un altro modo è di definire il comando come una variabile .

In questa parte della guida vi mostriamo il primo modo. Il comando sarà simile a questo:

mysql_query($query);

Cambiando la variabile, il comando può essere ripetuto più volte nel codice sorgente.

Questo è il codice completo che dovrebbe essere utilizzato per creare una tabella MySQL in PHP:

<?php
$user=”username”;
$password=”password”;
$database=”database”;
mysql_connect(localhost,$user,$password);
@mysql_select_db($database) or die( “Unable to select database”);
$query=”CREATE TABLE tablename(id int(6) NOT NULL auto_increment,first varchar(15) NOT NULL,last varchar(15) NOT NULL,field1-name varchar(20) NOT NULL,field2-name varchar(20) NOT NULL,field3-name varchar(20) NOT NULL,field4-name varchar(30) NOT NULL,field5-name varchar(30) NOT NULL,PRIMARY KEY (id),UNIQUE id (id),KEY id_2 (id))”;
mysql_query($query);
mysql_close();
?>

Inseriamo il database MySQL, username e password di MySQL nelle posizioni corrette sulle prime tre righe.

La query seguente compila la tabella. Ecco un esempio:

$query = “INSERT INTO tablename VALUES
(”,’$field1-name’,’$field2-name’,’$field3-name’,’$field4-name’,’$field5-name’)”;

Non è possibile inserire più valori rispetto al numero di campi che avete creato con la prima query.

 

Connessione tra mySQL e PHP

Dopo aver creato una tabella ed inserito i dati, si dovrà visualizzarla, ciò può essere fatto utilizzando un codice HTML che richiama lo script PHP.

Inizieremo l’esempio dall’inizio:

Il seguente codice HTML raccoglie i dati dalle caselle di testo e li passa allo script PHP:

 <form action=”insert.php” method=”post”>
Value1: <input type=”text” name=”field1-name”><br>
Value2: <input type=”text” name=”field2-name”><br>
Value3: <input type=”text” name=”field3-name”><br>
Value4: <input type=”text” name=”field4-name”><br>
Value5: <input type=”text” name=”field5-name”><br>
<input type=”Submit”>
</form>

Ora vi serve un nuovo script PHP per inserire i dati nel database.

<?php
$username=”username”;
$password=”password”;
$database=”your_database”;

$field1-name=$_POST[‘Value1’];
$field2-name=$_POST[‘Value2’];
$field3-name=$_POST[‘Value3’];
$field4-name=$_POST[‘Value4’];
$field5-name=$_POST[‘Value5’];

mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( “Unable to select database”);

$query = “INSERT INTO tablename VALUES
(”,’$field1-name’,’$field2-name’,’$field3-name’,’$field4-name’,’$field5-name’);
mysql_query($query);
mysql_close();
?>

Questo script deve essere salvato come insert.php in modo che possa essere chiamato dal modulo HTML.

Ora che avete almeno un record nel database, può essere utile sapere come utilizzare PHP con questi dati.

Il primo comando necessario sarà SELECT FROM MySQL:

 SELECT * FROM tablename

Si tratta di una query MySQL di base che dice allo script di selezionare tutti i record della tabella. Dopo l’esecuzione della query il risultato verrà assegnato ad una variabile:

$query=”SELECT * FROM tablename”;
$result=mysql_query($query);

L’intero contenuto della tabella è ora incluso in un array PHP. Prima dell’uscita, in questi dati è necessario cambiare ogni pezzo in una variabile indipendente. Ci sono due fasi.

La prima è il conteggio delle righe. Prima di poter passare attraverso i dati nella variabile è necessario conoscere il numero delle righe del database. Si potrebbe, digitare questo nel codice, ma non è una buona soluzione, siccome il codice dello script dovrà essere cambiato ogni volta che viene aggiunta una nuova riga. Invece è possibile utilizzare il comando:

$num=mysql_numrows($result);

Il valore di $num sarà il numero di righe memorizzato in $result. Questo sarà utilizzato in un ciclo per ottenere tutti i dati e visualizzarli sullo schermo.

La seconda fase è quella di creare il ciclo. Ci vorrà ogni riga del risultato e stampare i dati memorizzati. Nel codice riportato di seguito, $ i è il numero di volte che il ciclo viene eseguito. In questo modo tutti i record vengono visualizzati.

 $i=0;
while ($i < $num) {
CODE
$i++;
}

Si tratta di un ciclo di base di PHP ed eseguirà il codice corretto un numero di volte, o gni volta che $i sarà incrementato di uno.

La parte finale dello script è quella di assegnare a ciascuna porzione di dati la sua variabile:

 $variable=mysql_result($result,$i,”fieldname”);

Quindi, per prendere ogni singolo pezzo di dati nel nostro database potremmo utilizzare il seguente:

$field1-name=mysql_result($result,$i,”field1-name”);
$field2-name=mysql_result($result,$i,”field2-name”);
$field3-name=mysql_result($result,$i,”field3-name”);
$field4-name=mysql_result($result,$i,”field4-name”);
$field5-name=mysql_result($result,$i,”field5-name”);

Non è necessario ottenere il campo ID, perché non c’è per l’utilizzo nella pagina di output.

Ora è possibile scrivere uno script completo per l’output dei dati. In questo script i dati non sono formattati quando viene stampato:

<?php
$username=”username”;
$password=”password”;
$database=”your_database”;

mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( “Unable to select database”);
$query=”SELECT * FROM tablename”;
$result=mysql_query($query);

$num=mysql_numrows($result);

mysql_close();

echo “<b><center>Database Output</center></b><br><br>”;

$i=0;
while ($i < $num) {

$field1-name=mysql_result($result,$i,”field1-name”);
$field2-name=mysql_result($result,$i,”field2-name”);
$field3-name=mysql_result($result,$i,”field3-name”);
$field4-name=mysql_result($result,$i,”field4-name”);
$field5-name=mysql_result($result,$i,”field5-name”);

echo “<b>$field1-name
$field2-name2</b><br>$field3-name<br>$field4-name<br>$field5-name<hr><br>”;

$i++;
}

?>

Questo output elenca tutti i valori memorizzati nel database. Questo vi darà un output di base. Fare la formattazione non è complicato. Tutto quello che dovete fare è usare l’HTML per stampare il risultato, includendo le variabili negli spazi corretti. Il modo più semplice per farlo è chiudendo il tag PHP e HTML. Quando si raggiunge una posizione variabile:

<? echo $variablename; ?>

nella posizione corretta del codice.

È anche possibile utilizzare il ciclo di PHP per ripetere il codice appropriato e includerlo come parte di una tabella più grande. Il risultato finale è il seguente:

<html>
<body>
<?php
$username=”username”;
$password=”password”;
$database=”your_database”;

mysql_connect(localhost,$username,$password);
@mysql_select_db($database) or die( “Unable to select database”);
$query=”SELECT * FROM tablename”;
$result=mysql_query($query);

$num=mysql_numrows($result);

mysql_close();
?>
<table border=”0″ cellspacing=”2″ cellpadding=”2″>
<tr>
<th><font face=”Arial, Helvetica, sans-serif”>Value1</font></th>
<th><font face=”Arial, Helvetica, sans-serif”>Value2</font></th>
<th><font face=”Arial, Helvetica, sans-serif”>Value3</font></th>
<th><font face=”Arial, Helvetica, sans-serif”>Value4</font></th>
<th><font face=”Arial, Helvetica, sans-serif”>Value5</font></th>
</tr>

<?php
$i=0;
while ($i < $num) {

$f1=mysql_result($result,$i,”field1″);
$f2=mysql_result($result,$i,”field2″);
$f3=mysql_result($result,$i,”field3″);
$f4=mysql_result($result,$i,”field4″);
$f5=mysql_result($result,$i,”field5″);
?>

<tr>
<td><font face=”Arial, Helvetica, sans-serif”><?php echo $f1; ?></font></td>
<td><font face=”Arial, Helvetica, sans-serif”><?php echo $f2; ?></font></td>
<td><font face=”Arial, Helvetica, sans-serif”><?php echo $f3; ?></font></td>
<td><font face=”Arial, Helvetica, sans-serif”><?php echo $f4; ?></font></td>
<td><font face=”Arial, Helvetica, sans-serif”><?php echo $f5; ?></font></td>
</tr>

<?php
$i++;
}
?>
</body>
</html>

 

Alla Prossima

 

Approfondimenti correlati

Fonte ufficiale: Manuale PHP PDO.

Domande frequenti

Meglio PDO o MySQLi?

Entrambe supportano query preparate. PDO offre un’interfaccia utilizzabile con più database, mentre MySQLi è specifica per MySQL e MariaDB.

Perché usare query preparate?

Separano dati e struttura della query, riducendo il rischio di SQL injection quando vengono utilizzate correttamente.

Dove conservare le credenziali?

In configurazioni non esposte pubblicamente, con permessi restrittivi e possibilmente variabili d’ambiente o sistemi di gestione dei segreti.

Le migliori risorse per gli sviluppatori – Agosto 2016. In questo articolo ti mostriamo le migliori risorse free per gli sviluppatori tra cui diversi tools e framework che ti aiuteranno a sviluppare nel migliore dei modi il tuo sito Web.

Di seguito le migliori risorse per gli sviluppatori – agosto 2016:

Cutestrap

Cutestrap è un framework e permette di creare le più comuni interfacce web come Form, pulsanti di navigazione, tabelle e molto altro.

cutestrap

 

Intercooler

Intercooler è una libreria Javascript che permette di applicare il linguaggio Ajax attraverso semplici attribuiti in HTML, puoi visualizzare la guida cliccando qui!

intercooler

 

Vital

Vital è un Framework sviluppato con il linguaggio Rouge mentre la sintassi si basa su Ruby; è molto leggero e non è legato in alcun modo a Javascript.

vital

 

Microsoft Web Framework (progetto non più disponibile)

MWF è il Framework di Microsoft basato da un linguaggio moderno, pulito e minimalista; sono integrati diversi componenti che ti permetteranno di creare bellissimi form, pulsanti, etc modificando i colori, i caratteri e le animazioni.

getmwf

 

Weex

Weex è il Framework sviluppato da Alibaba e permette di costruire app per smartphone e tablet attraverso i linguaggi HTML, CSS e Javascript.

weex

 

Browser Calories

Browser Calories è un estensione di Google Chrome e misura il peso di un sito web attraverso una scansione dei files caricati all’interno dello stesso; attraverso questo tool potrai ottimizzare il tuo sito web.

browser-calories

 

HTML5 Test

HTML5 Test è un tool online che ti permette di vedere in maniera dettagliata se un determinato sito web supporta il linguaggio HTML5.

html5test

 

Fontea

Fonte è un estensione free di Photoshop che permette di gestire centinaia di Font Google; tu puoi cercare il Font che fa per te direttamente da Photoshop.

fontea

 

Compressor

Compressor è un applicazione Web che permette di comprimere le immagini, diminuendo il peso ma mantenendo ugualmente la qualità della stessa. In questo modo potrai ottimizzare il tuo sito web rendendolo più veloce e performante.

compressor

 

Drizzle

Drizzle ha la funzione di abilitare i comandi Build UI o le guide di stile per il tuo sito web.

drizzle

 

Alla prossima.

 

 

Le migliori risorse per gli sviluppatori – Aprile 2017 Per il mese di Aprile lo staff ha selezionato delle nuove risorse per lo sviluppo del sito web che includono delle applicazioni web che ti aiuteranno a conoscere il nuovo modulo CSS e ti permetteranno di apprendere nozioni sul codice PHP attraverso schemi di progettazione e molto altro ancora.

Di seguito le migliori risorse per gli sviluppatori di Aprile 2017:

Chroma .js

Le migliori risorse per gli sviluppatori - Aprile 2017

Chroma è una libreria Javascript che ti permetterà di manipolare i colori, inoltre supporta diversi formati come RGBA, RGB ed HEX ed è possibile modificare i colori mediante la luminosità, il contrasto e la saturazione.

Easy Map

Attraverso questa risorsa potrai aggiungere il tuo shop all’interno della mappa mediante il codice API di Google Maps e l’indirizzo della posizione attraverso il formato JSON.

Bash Guide

Bash Guide è una guida che aiuterà gli sviluppatori che hanno appena iniziato a conoscere le principali linee di comando.

Chassis Desktop

Chassis è una configurazione progettata intorno a WordPress ed ha lo scopo principale di monitorare costantemente il funzionamento dei plugin e dei temi del CMS.

Fabri.ca

Fabrica è una raccolta di strumenti per sviluppare il CMS WordPress dall’inizio alla fine, ed è una risorsa molto utile per chi utilizza questo fantastico CMS.

Chrome Mysql Admin

Chrome Mysql admin è un estensione di Google Chrome con lo scopo di farti gestire il tuo database Mysql.

Tippy .js

Tippy è una completa libreria JavaScript utile per creare i ToolTip (elementi comuni dell’interfaccia grafica dell’utente).

React Fundamentals

React è probabilmente la prima libreria Javascript con uno scopo ben preciso, quello di diventare la soluzione definitiva per i programmatori frontend e app mobile basati sul linguaggi HTML5.

React è stata creata da Facebook ed è la colonna portante del Social Network più popolare del mondo; se vuoi partire da zero ed iniziare a conoscere React puoi iscriverti gratuitamente al corso.

Inoltre la libreria può essere scaricata dal seguente link:

 

Alla prossima!