Se sei proprio "digiuno" dovresti intanto seguire una guida generale sul php (ce ne sono diverse qui su html.it: parti ovviamente con una "di base"...).
Poi una "guida" su db e sql almeno per i concetti fondamentali.
---
Quindi potresti prepararti un'installazione locale per fare delle prove: se usi SQLite semplifichi - secondo me - alcune operazioni. ("installazione" quasi non ce n'è: si tratta di configurare correttamente il php, più che altro) La sintassi SQL fondamentale è quella standard, mentre piccole differenze possono essere riscontrate nella documentazione.
---
Il mio suggerimento è quello, a questo punto, di preparare i vari files ".php" senza però mettere codice "dinamico", ma creando la struttura HTML COMPLETA (metti dati "fittizi" per le cose che dovranno essere dinamiche) e verificando che "funzioni" il flusso delle pagine... p.es. per il login prepari un "login.php" (ma di fatto fai una pagina "html") con il form e poi "manualmente" metti nell'ACTION la pagina da chiamare in caso di accesso riuscito.
---
Per il passo successivo potresti aggiungere in testa a tutti i ".php" fatti il settaggio delle variabili "dinamiche" da mostrare all'utente nell'HTML sottostante. Per esempio in un'ipotetica pagina che mostra una tabella di contenuti, avresti inizialmente una cosa come (mostrando un elenco di "id, messaggio":
Codice PHP:
<?php
// qui andrà tutto il codice...
?><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<table>
<tr>
<td>[id1]<td><td>[messaggio1]</td>
</tr>
<tr>
<td>[id2]<td><td>[messaggio2]</td>
</tr>
</table>
</body>
</html>
dove metti dei dati statici fittizi, poi la cambierai come:
Codice PHP:
<?php
// qui andrà tutto il codice...
$messaggi = array(
1 => array(
'id' => 1,
'testo' => 'msg1'
),
2 => array(
'id' => 2,
'testo' => 'msg2'
),
);
?><!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<table>
<?php foreach($messaggi as $msg) { ?>
<tr>
<td><?php print $msg['id'];?><td><td><?php print $msg['testo'];?></td>
</tr>
<?php }; ?>
</table>
</body>
</html>
cioè la rendi "dinamica": crea variabili per tutte le parti "dinamiche"
---
Successivamente organizzi la struttura php in modo che i vari "settaggi" siano eseguiti in maniera "effettiva" (interagendo anche con il db).