- Home
- Categorie
- Coding e Sistemistica
- Help Center: consigli per il tuo progetto
- Sito web "statico" o "dinamico"?
-
Ciao Valerio,
grazie per il consiglio.
Finora non mi ero mai cimentato nella realizzazione di un sito dinamico...per fortuna ho il tempo e la possibilita' di impratichirmi dato che il sito e' per uso personale. Devo documentarmi un po' per scegliere uno tra i cms che mi hai consigliato...
-
Prego

Valerio Notarfrancesco
-
...
-
Scrivere un cms per una quindicina di categorie contenenti una quindicina di prodotti ciascuna è abbastanza semplice.
Ti posto il codice in 2 parti. Oggi la parte vista e domani la parte admin.
NOTA: LEGGI BENE I COMMENTI DENTRO AL CODICE
file: cms.sql
[php]-- Struttura della tabella
articoliCREATE TABLE IF NOT EXISTS
articoli(
artIDint(5) NOT NULL AUTO_INCREMENT,
nomevarchar(200) NOT NULL DEFAULT '',
descrizionetext NOT NULL,
catIDint(5) NOT NULL,
PRIMARY KEY (artID)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;--
-- Dump dei dati per la tabellaarticoliINSERT INTO
articoli(artID,nome,descrizione,catID) VALUES
(1, 'Pollo', 'Pollo arrosto', 1),
(2, 'Tacchino', 'Un buon tacchino', 1),
(3, 'Tonno', 'Il buon pesce', 2);--
-- Struttura della tabellacategorieCREATE TABLE IF NOT EXISTS
categorie(
catIDint(5) NOT NULL AUTO_INCREMENT,
catNamevarchar(200) NOT NULL DEFAULT '',
PRIMARY KEY (catID)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;--
-- Dump dei dati per la tabellacategorieINSERT INTO
categorie(catID,catName) VALUES
(1, 'carne'),
(2, 'pesce');
[/php]file: configurazione.php
[php]
<?php/**
*-
Nome del server mysql
*/
$dbHost = 'localhost';/**
*-
Utente del database
*/
$dbUser = '';/**
*-
Password per l'utente
*/
$dbPass = '';/**
*-
Nome del database
*/
$dbName = 'cms';/**
*-
Cancella articoli in automatico -
NOTA: Se impostata su true alla cancellazione -
di una categoria faràs eguito l'immediata -
cancellazione di tutti gli articoli in essa -
contenut. Di default è impostata su false
*/
$autoDeleteArt = false;?>
[/php]file: database.php
[php]
<?phprequire_once 'configurazione.php';
$linkID = mysql_connect ( $dbHost, $dbUser, $dbPass ) or die ( 'Si è verificato un errore' /** messaggio di errore configurabile a piacere */ );
mysql_select_db ( $dbName, $linkID );?>
[/php]
file: index.php
[php]
<?php/**
*-
Includiamo il file di configurazione
*/
require_once 'configurazione.php';/**
*-
Includiamo le funzioni per la connessione al database
*/
require_once 'database.php';/**
*-
Apriamo l'html per creare un semplice template fatto di una tabella con una colonna sinistra che funge -
da menù e il blocco centrale che contiene gli articoli della categoria scelta o se non è ancora stata -
scelta i contenuti del sito del utente e da lui decisi
/
?>
<html>
<head>
<title><?php echo $siteTitle; ?>
</title>
<body>
<table width="923" border="1">
<tr>
<?php
/*
* Questa parte rimane sempre invariata e costituisce l'intestazione del sito
/
?>
<td width="129" height="26">Lista Categorie</td>
<td width="778">Header del sito</td>
<?php
/*
* Fine della parte sempre invariata
/
?>
</tr>
</table>
<table width="923" border="1">
<tr>
<td width="129" height="26">
<?php
/*
* Qua ci va il menù delle categorie e anche questo è sempre presente
**/
$sql = "SELECT * FROM categorie";
$result = mysql_query ( $sql );
while ( $row = mysql_fetch_array ( $result, MYSQL_ASSOC ) )
{echo "<a href=\"index.php?catID=" . $row['catID'] . "&catName=" . $row['catName'] . "\">" . $row['catName'] . "</a><br />"; } /** * Fine del menù sempre invariato */ ?> </td> <td width="778"> <?php /** * Questa parte varia perchè se catID e catName non sono settate come variabili post visualizza i contenuti del tuo sito * e che io non conosco. */ if ( isset ( $_GET['catID'] ) ) { /** * Ok se catID è settata presentiamo i contenuti della categoria */ $id = $_GET['catID']; $sql = "SELECT nome, descrizione FROM articoli WHERE catID = $id"; $result = mysql_query ( $sql ); echo "<b>" . $_GET['catName'] . "<br /><br />"; while ( $row = mysql_fetch_array ( $result, MYSQL_ASSOC ) ) { /** * Se l'immagine deve essere cliccabile ti basta inserire il tag href prima di img src * Se non c'è immagine tronca la linea dopo il secondo <br /> */ echo $row['nome'] . "<br />" . $row['descrizione'] . "<br /><img src=\"" . $row['nome'] . ".png\"><br />"; } } else { /** * Altrimenti metti qua i contenuti del sito */ echo "Contenuti del sito"; } ?> </td> </tr> </table> </body> </html>[/php]
-
-
Grazie mille,
sei stato davvero gentile!
-
Ciao, fossi in te proverei ad imparare almeno un cms anche solo per "sfizio". Ad esempio wordpress è davvero semplice e ha un supporto ottimo, inoltre porta dei vantaggi che lo rendono consigliabile anche in progetti semplici (seo in primis)
-
@Ivandesign said:
Non hai torto ma se il tenore di questo forum è: impariamo a usare quello che fanno gli altri .... state messi che è una pena
-
Aggiungo che la cosa più disonorevole e deplorevole che possa esistere e guardare come gli altri fanno cosa
-
Ciao Aragonesse, e tu solo perché non condividi un singolo consiglio tecnico sentenzi che oltre 87.800 persone, quasi un milione di messaggi, centinaia di migliaia di discussioni in quasi 10 anni per non parlare poi di tutte le attività formative in giro per l'Italia sono una pena?
Dai su, vediamo di rilassarci che fa caldo e occorre portare rispetto verso tutti per condividere idee e conoscenze.
Quanto sopra è una colonna portante del forum gt.
Valerio Notarfrancesco
-
@vnotarfrancesco said:
Hai ragione fa caldo, sto smadonnando con una classe da 17 ore ed ero incazzato come un crotalo.
Pardon.
-
Tutto ok

Valerio Notarfrancesco