[Verdebinario] Lezione PHP+MySQL

Giuseppe De Marco peppelinux a yahoo.it
Sab 9 Lug 2011 06:25:27 CDT



> Eccoti i link delle slides, in un posto un pō pių affidabile:

> flow.ciotoni.net/web_dinamico.pdf


Vanno benissimo. Taglia tutte le installazioni e le configurazioni e Linux in 
generale, taglia i tecnicismi.

> Comunque se ci becchiamo mezz'oretta prima magari cordiniamo script di
> esempio sulla base di dati che porti tu, che ne pensi???


Possiamo beccarci anche alle 17:30 in aula, ti tel lunedė dopo pranzo.

> Grazie per il supporto :)

grazie a te che ti sei fatto avanti



Vi spiego la mia parte:

Io faccio Mysql. Niente configurazioni, nč terminali, nč progettazione di basi 
dati, nč tipizzazione dei dati, nč tantomeno chiavi esterne o engine di tabelle.

Faccio inserire dei dati attraverso phpmyadmin. Faccio estrarre dei dati 
attraverso phpmyadmin. Sia in modalitā punta e clicca che in modalitā query.

Faccio 5, al massimo 6 query.

Il nostro obiettivo č quello di rappresentare in html (sito), attraverso php 
(dinamico), il materiale che abbiamo studiato nella prima parte della lezione 
(sql).

Il template che ho utilizzato nella introduzione al corso č 
http://www.freecsstemplates.org/preview/earthlingtwo

Gā, dato che la pagina in php giā pronta la porti tu scegli un template che 
preferisci oppure utilizza earthlightTWO.

Questa č la base dati con la quale devi preparare le funzioni di estrazione:

<BASE DATI SQL MYSQL>

/*
SQLyog Community v9.02 
MySQL - 5.1.41-3ubuntu12.10 : Database - verdebinario_lezione_mysql
*********************************************************************
*/


/*!40101 SET NAMES utf8 */;

/*!40101 SET SQL_MODE=''*/;

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 
*/;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`verdebinario_lezione_mysql` /*!40100 
DEFAULT CHARACTER SET utf8 COLLATE utf8_bin */;

USE `verdebinario_lezione_mysql`;

/*Table structure for table `Corsi` */

DROP TABLE IF EXISTS `Corsi`;

CREATE TABLE `Corsi` (
  `id_corsi` int(11) NOT NULL AUTO_INCREMENT,
  `nome_corso` varchar(45) COLLATE utf8_bin DEFAULT NULL,
  `durata_ore` smallint(6) DEFAULT NULL,
  `numero_lezioni` smallint(6) DEFAULT NULL,
  `Programma_id_programma` int(11) NOT NULL,
  PRIMARY KEY (`id_corsi`),
  UNIQUE KEY `nome_corso_UNIQUE` (`nome_corso`),
  KEY `fk_Corsi_Programma` (`Programma_id_programma`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

/*Data for the table `Corsi` */

insert  into 
`Corsi`(`id_corsi`,`nome_corso`,`durata_ore`,`numero_lezioni`,`Programma_id_programma`)
 values (1,'Webmaster con strumenti Open Source',12,6,1);

/*Table structure for table `Iscritti` */

DROP TABLE IF EXISTS `Iscritti`;

CREATE TABLE `Iscritti` (
  `id_iscritti` int(11) NOT NULL AUTO_INCREMENT,
  `nome` varchar(45) DEFAULT NULL,
  `cognome` varchar(45) DEFAULT NULL,
  `email` varchar(45) DEFAULT NULL,
  `telefono` varchar(45) DEFAULT NULL,
  `Corsi_id_corsi` int(11) NOT NULL,
  PRIMARY KEY (`id_iscritti`),
  KEY `fk_Iscritti_Corsi1` (`Corsi_id_corsi`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

/*Data for the table `Iscritti` */

/*Table structure for table `Lezioni` */

DROP TABLE IF EXISTS `Lezioni`;

CREATE TABLE `Lezioni` (
  `id_lezioni` int(11) NOT NULL AUTO_INCREMENT,
  `giornata` varchar(45) DEFAULT NULL,
  `durata_ore` varchar(45) DEFAULT NULL,
  `obiettivi` varchar(45) DEFAULT NULL,
  `max_partecipanti` varchar(45) DEFAULT NULL,
  `corso_id` int(11) NOT NULL,
  PRIMARY KEY (`id_lezioni`),
  KEY `fk_Lezioni_Programma1` (`corso_id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;

/*Data for the table `Lezioni` */

insert  into 
`Lezioni`(`id_lezioni`,`giornata`,`durata_ore`,`obiettivi`,`max_partecipanti`,`corso_id`)
 values (1,'3','2','introduzione a php e mysql','14',1);

/*Table structure for table `Programma` */

DROP TABLE IF EXISTS `Programma`;

CREATE TABLE `Programma` (
  `id_programma` int(11) NOT NULL AUTO_INCREMENT,
  `scaletta_contenuti` varchar(1500) DEFAULT NULL,
  `ambiente_operativo` varchar(45) DEFAULT NULL,
  PRIMARY KEY (`id_programma`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1;

/*Data for the table `Programma` */

insert  into 
`Programma`(`id_programma`,`scaletta_contenuti`,`ambiente_operativo`) values 
(1,'1. Introduzione\r\n- Software Libero e Standard Aperti\r\n- Nozioni base 
sulle reti telematiche\r\n- Il modello Client/Server: protocollo HTTP2. Il Web 
“statico”\r\n- Il linguaggio HTML e le novità di HTML5\r\n- Fogli di stile a 
Cascata (CSS)\r\n- Realizzare e pubblicare un sito web statico\r\n3. Il web 
“dinamico”\r\n- Il linguaggio di scripting PHP\r\n- Il Database MySQL\r\n- 
Esempi di script PHP e queries SQL4. Gestione dei contenuti con WordPress\r\n- 
Introduzione a WordPress\r\n- Installazione e configurazione iniziale\r\n- 
Pagine, categorie, articoli, tag\r\n5. Gestione dei contenuti con WordPress\r\n- 
Le estensioni: Widgets, Plugins, Temi.\r\n- Gestione di un blog con WordPress6. 
L’aspetto di un sito WordPress\r\n- Modificare un tema installato\r\n- 
Realizzare da zero un tema personalizzato','multipiattaforma');

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

</BASE DATI>

Quindi, se non sbaglio, faremmo due file php. Uno con i parametri di connessione 
e l'altro con il puntatore SQL e le funzioni di estrazione dei dati incastonate 
nell'HTML.

Cosė il discorso lo rendiamo armonico anche con l'HTML

I metodi POST/GET e HXR li ho giā fatti nella introduzione e li ho esemplificati 
attraverso un ambiente ad-hoc sviluppato in Django. Te lo allego in una mail 
privata insieme alle slides.




Maggiori informazioni sulla lista Verdebinario