Guida: Come utilizzare PHP e MySQL? : phpmyadmin

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.

 

 

 

 

Per creare un nuovo database è necessario immettere il nome desiderato per il database e cliccare su Crea Database.

 

 

 

 

 

 

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

 

 

 

 

 

 

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.

 

 

 

 

 

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.

 

 

 

 

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

 

 

 

 

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

 

 

 

 

 

 

 

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.

 

 

 

 

 

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

 

Se il vostro sito è ospitato su un hosting condiviso non avrete l’accesso a SSH e di conseguenza non potrete utilizzare mysldump o mysql per l’importazione di un database SQL, ma dovrete utilizzare phpMyAdmin.

Il problema che la maggior parte degli Hosting non consente l’importazione di database di grosse dimensioni, spesso il limite è appena di 4MB. Il limite impostato sul nostro Hosting per importare i database è di 50mb, se ciò non dovesse bastare, abbiamo selezionato alcuni script e software Free che facilitano l’importazione di database mySQL di grosse dimensioni.

 

BigDump

BigDump è uno script molto semplice da usare, basta caricare il file configurato bigdump.PHP e il file del backup SQL in una cartella del sito ed importare il database.

 

MySQLDumper

MySQLDumper è uno script in PHP e Perl per il backup dei database mySQL, consente di scaricare e ripristinare un file di backup facilmente.  E’ particolarmente adatto per gli hosting condivisi, nella quale non si ha accesso alla shell. MySQLDumper è un progetto open source e rilasciato sotto licenza GNU.

 

Sypex Dumper è uno script gratuito che utilizza Ajax, consente di esportare e importare database di qualsiasi dimensione senza andare in timeout. Diponibile anche una versione a pagamento con delle funzioni in più.

 

Alla Prossima

 

Come trasferire un sito WordPress – A volte capita di voler spostare il proprio sito web di Server, per far questo è necessario seguire la procedura step by step di trasferimento sito web (files + database) da un server all’altro.

Per prima cosa è necessario sapere che il piano hosting ed il dominio sono due servizi separati:

  • Piano Hosting, all’interno del piano vengono caricati i files ed il database del sito web
  • Dominio, è il nome dato al sito web (es: xlogic.org)

 

Quindi se devi trasferire il sito web di Server e vuoi spostare tutti i servizi presso un nuovo Provider dovrai acquistare:

 

Se vuoi far effettuare la procedura di trasferimento sito web ad i tecnici del Provider dovrai acquistare anche il servizio Trasferimento sito web (files + database)

Solitamente le configurazioni e le mails non possono essere trasferite, quindi è consigliabile creare una cartella nel proprio Client di posta e spostare fisicamente tutte le mails all’interno della stessa, in questo modo avrai copiato dal Server al tuo Computer tutte le mails.

Per quanto riguarda le configurazioni invece, dovrai reimpostare tutto all’interno del nuovo pannello di controllo, quindi dovrai ricreare gli indirizzi mail, gli eventuali cron job, redirect, e molto altro.

 

Il trasferimento completo che comprende anche le configurazioni, gli indirizzi mail e le mails potrà essere effettuato dai nostri tecnici solamente se nell’attuale Server è presente il pannello di controllo cPanel e in base ad altre condizioni che verranno analizzate direttamente dai nostri tecnici per capire se sarà possibile effettuare il trasferimento completo del sito web oppure solamente dei files e dei database.

Se possiedi un sito WordPress e vuoi trasferirlo presso i nostri Server potrai acquistare uno dei seguenti pacchetti:

 

Il trasferimento del sito web sarà gratuito, inoltre i nostri tecnici configureranno nel migliore dei modi il tuo sito web, installeranno ed imposteranno i Plugin ritenuti fondamentali e nel corso dell’anno potrai sempre contare sul nostro supporto tecnico WordPress che ti aiuterà a risolvere i problemi.

 

Il trasferimento del sito web può avvenire manualmente oppure mediante backup, in questo articolo ti insegneremo come trasferire manualmente il sito web (files + database) da un server all’altro.

 

In ogni caso ti forniremo anche un articolo che ti indicherà come effettuare il trasferimento attraverso un Plugin WordPress:

 

Passi per trasferire il sito web

Comunque tornando a noi, per poter trasferire il sito web bisogna tenere in considerazione i seguenti fattori:

  • Files: sono presenti tutti i files di sistema che permettono a WordPress di funzionare correttamente, inoltre sono presenti tutti i files multimediali caricati all’interno del server, tutti i temi, plugin installati direttamente dal backend di WordPress e molto altro.
  • Database: contiene il contenuto dei tuoi articoli, pagine, commenti, i collegamenti delle tue immagini e tutto ciò che riguarda il tuo sito web.

 

1. Scarica il Database

Accedi all’interno del tuo pannello di controllo e scarica il database del sito web, solitamente viene utilizzato phpMyadmin, quindi entra all’interno del programma e scarica il file in formato .sql

  • Entra all’interno di cPanel
  • Apri phpMyadmin
  • Nella pagina a sinistra è presente l’elenco dei database, seleziona il database del sito
  • Sopra le tabelle sono presenti diverse voci, clicca su “esporta database”
  • Scarica il database in locale

Come trasferire un sito WordPress

 

2. Scarica i files del sito Web

Scarica i files del tuo sito web in locale, è possibile recuperarli accedendo via ftp con un Client FTP inserendo i dati che hai ricevuto nella mail di benvenuto del Provider.

  • Accedi via FTP con un Client come ad esempio Filezilla
  • Accedi all’interno della root principale del sito
  • Seleziona tutte i files e le cartelle presenti all’interno della root principale e trasferiscili in una cartella nel tuo pc in locale.

Su Xlogic ad esempio la root principale del sito web è la cartella Public_html, in ogni caso dovrai copiare tutti i files e le cartelle presenti nell’area dove ci sono i files e le cartelle di sistema come ad esempio:

  • wp-config.php
  • wp-admin.php
  • wp-admin/
  • wp-content/
  • wp-includes/
  • etc

 

Accedi via FTP all’interno della Root principale del sito

Trasferisci i files all’interno di una cartella in locale nel tuo pc

 

3. Crea utente e database

Accedi all’interno del nuovo piano Hosting utilizzando il link e le credenziali presenti nella mail di benvenuto e crea l’utente ed il database.

  • Accedi in cPanel utilizzando le credenziali che puoi trovare nella mail di benvenuto inviata dal Provider

cPanel > Database > Mysql

  • Crea il database

  • Crea l’utente

  • Associa utente e database

  • Dai tutti i privilegi

  • Effettua una verifica

Ricordati di salvare i dati relativi all’utente ed al database, sono molto importanti perché senza questi non potrai puntare il database al sito web.

Quindi lo staff ti consiglia di segnarti in una nota i seguenti dati:

  • Nome database
  • Nome utente
  • Password utente

Inoltre durante la creazione dell’utente potrebbe capitare che la password inserita non viene accettata dal sistema perché ne richiede una più complessa, in quel caso utilizza il Password Generator presente nella pagina e ricordati di salvare la password creata.

 

4. Cambia il nome del DB all’interno del file .sql

Apri il database.sql che hai scaricato precedentemente con un Editor di testo, nelle prime righe dovrai modificare i seguenti parametri:

  • Nome Database: Inserisci il nome completo del Database che hai appena creato da cPanel, esempio: database_data
  • Nome Host: Deve sempre essere “Localhost”

Inoltre rinomina il file .sql chiamandolo con il nome del database appena creato, esempio: database_data

 

5. Importa il database .sql via phpMyadmin

Dopo aver effettuato la modifica al file .sql non ti resta che importarlo all’interno del nuovo database che hai appena creato su Xlogic.

  • cPanel > Database > phpMyadmin | Seleziona il database che hai appena creato in cPanel e poi clicca su Importa

  • Clicca sul pulsante Scegli File e carica il database, dopo di che clicca sul pulsante Esegui

  • Il database è stato caricato correttamente su phpMyadmin

Se il database supera il limite di upload files impostato dal server è necessario splittarlo in files di piccole dimensioni, per far questo puoi seguire questa gudia:

 

6. Modifica il file wp-config.php

Ritorna nella cartella dove sono presenti i files del sito web che hai trasferito dal tuo server vecchio al tuo computer ed apri il file wp-config.php con un programma come Adobe Dreamweaver, se invece non hai la possibilità di poterlo modificare dal tuo computer dovrai prima trasferire i files via ftp nel nuovo server, dopo di che dovrai accedere nel gestore files di cPanel ed aprire il file wp-config.php, in ogni caso dovrai effettuare le seguenti modifiche.

Apri il file wp-config ed inserisci il nome del database, dell’utente con la relativa password che hai creato prima da cPanel mentre nel campo DB_Host inserisci localhost.

Successivamente salva e chiudi il file.

 

7. Importa i files via ftp

Ora non ti rimane che aprire Filezilla ed accedere via ftp con i dati inviati dal nuovo Provider (IP Server, nome utente e password), dopo di che accedi nella root principale di Xlogic, la cartella public_html e copia tutti i files che avevi scaricato precedentemente all’interno della stessa.

Al termine dell’operazione, il sito sarà completamente trasferito.

 

8. Aggiorna i Name Server

Durante il trasferimento del sito web probabilmente hai mantenuto i NS presso il vecchio Hosting per evitare che il sito non fosse più visibile, quindi detto questo, al termine dell’operazione di trasferimento sito web sarà necessario modificare i Name Server direttamente dal pannello DNS del dominio ed inserire i NS del nuovo Server, così che il dominio punterà al nuovo piano Hosting.

Per effettuare questa modifica ti consigliamo di aprire un ticket all’assistenza richiedendo di modificare i Name Server, dopo di che dovrai attendere la propagazione DNS che durerà circa 2-3 ore.

 

Stai cercando un’Hosting affidabile è veloce? Vieni a trovarci su: https://xlogic.org

Hosting CondivisoHosting Reseller – Hosting DedicatoHosting WordPressVPS SSDServer Dedicati