giorno settimanamesegiorno

Sono passati 88 giorni dall'inizio dell'anno che corrispondono a 13 settimane

Arcobaleno, domani sereno



* Chattina

Aggiorna Storia
  • mar: :resistere:
    Febbraio 15, 2022, 19:44:48
  • mar: Non mi ricordavo di essere un global moderator wauuuu Ok Prof ti lascio restaurare in pace!
    Febbraio 15, 2022, 19:43:56
  • mar: :Cartelli70:
    Febbraio 15, 2022, 19:41:14
  • mar: ad cazzum pure qui?
    Febbraio 15, 2022, 19:41:02
  • mar: ciaoooo sono in perlistrazione
    Febbraio 15, 2022, 19:40:44
  • mar: :okkey:
    Febbraio 15, 2022, 19:40:20
  • Loretta/Nina: ciao a tutti
    Ottobre 04, 2021, 19:23:02
  • Loretta/Nina: :tuffarsi:
    Settembre 21, 2021, 07:08:03
  • Loretta/Nina: Buon autunno a tutti
    Settembre 21, 2021, 07:01:35
  • nuvolotta: avventure testuali
    Luglio 06, 2020, 23:26:08
  • _jan_: ...gli ultimo però....!!
    Gennaio 14, 2019, 14:45:09
  • _jan_: vedi gli ultimi post in fondo.
    Novembre 24, 2018, 19:10:00
  • mar: Trovato :Amm9:
    Novembre 24, 2018, 18:57:51
  • mar: Chi cerca trova non vi trovo! :Cartelli2:
    Novembre 24, 2018, 18:57:05
  • mar: Vado a vedere le cartoline!
    Novembre 24, 2018, 18:52:38
  • mar: :Amore145:
    Novembre 24, 2018, 18:52:21
  • mar: :Amore178:
    Novembre 24, 2018, 18:52:07
  • _jan_: Welcome Visitor.  :Party133:
    Novembre 15, 2018, 10:03:24
  • Loretta/Nina: Benvenuto ligi  :Cartelli37:
    Ottobre 09, 2018, 13:19:25
  • nuvolotta: Cucù...  :Amore20:
    Settembre 16, 2018, 01:16:47
  • Loretta/Nina: :Party133:
    Settembre 01, 2018, 17:05:30
  • _jan_: Ciao ai visitors!!
    Settembre 01, 2018, 17:02:31
  • Loretta/Nina: :fischio: :979:
    Agosto 28, 2018, 16:20:48
  • ketty: ah beh, meno male. ora il tempo e' un po' brutto
    Agosto 26, 2018, 13:27:36
  • _jan_: No, no, soqquà. Ci passo ma....... non c'è mai nessuno. Ammiro Nuvolotta, solitaria e presente.
    Agosto 25, 2018, 10:34:41
  • ketty: ma Jan è andato in vacanza? :Cartelli70:
    Agosto 24, 2018, 20:51:59
  • ketty: ciao a tutti.
    Agosto 24, 2018, 20:50:12
  • nuvolotta: :faccina_fiore: ciao ragazzioli/ole...
    Agosto 19, 2018, 23:03:49
  • Loretta/Nina: :ciao: :Party133:
    Agosto 19, 2018, 20:24:28
  • _jan_: :Felici13:
    Agosto 04, 2018, 15:30:40
  • nuvolotta: Ferie... già fatte....
    Agosto 04, 2018, 09:54:58
  • _jan_: Auguri di buon onomastico a tutti gli Alfonso....
    Agosto 01, 2018, 11:10:21
  • _jan_: chiusp per ferie?
    Luglio 30, 2018, 19:50:58
  • _jan_: Buon onomastico a Donatella Seconda........ e la prima? :Shok145:
    Luglio 30, 2018, 06:59:38
  • _jan_: Buon onomastico a tutte le Marta.  :Amore20:
    Luglio 29, 2018, 07:44:31
  • _jan_: Ci sono altre nuove iscritte viste il 26 luglio 2018..... (mica saranno monache)....  :approva:
    Luglio 26, 2018, 18:39:04
  • _jan_: Oggi, 26 luglio 2018, abbiamo una nuova iscritta "Francesca".....Benvenuta Francesca.  :Party133:
    Luglio 26, 2018, 15:49:24
  • _jan_: Buon onomastico anche a tutte le Anna!!! .....
    Luglio 26, 2018, 10:30:21
  • _jan_: Auguri di Buon Onomastico a TUO..... (ogni giorno, credo)..... :sm269:
    Luglio 26, 2018, 10:28:52
  • ketty: ma.... quando è il tuo?
    Luglio 25, 2018, 19:52:19

* Emoticon aggiuntive e link al portale


Autore Topic: -5- Gestione completa (o quasi) del DB: Eliminare una tabella  (Letto 2226 volte)

0 Utenti e 1 Visitatore stanno visualizzando questo topic.

Offline micdas

  • Administrator
  • Hero Member
  • *****
  • Post: 848
  • Sesso: Maschio
    • sito su Excel ed il suo vba
Eliminare una tabella
Dopo la creazione della tabella è ovvio che dovremmo avere la possibilità di eliminarla.
Anche in questo caso useremo due files:
* cancella_tabella.php
* cancella_tabella_canc.php
Il primo mostra lo stato della tabella (esistente ed eventualmente quanti record contiene
Il secondo esegue l'operazione di eliminazione


Come il solito il primo file (cancella_tabella.php) verifica l'esistenza della tabella ed eventualmente ne mostra alcuni contenuti.
Questo il codice del file cancella_tabella.php:
Codice: Non sei autorizzato a vedere i links. Registrati o Login
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Gestione cerca</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<link href="css/stile.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="container">
<div id="header">
<h1>&nbsp;</h1>
</div>
<div id="navigation">&nbsp;</div>
    <div id="content">
<h1>Eliminazione della tabella</h1>
<h2>Inizia la procedura di eliminazione della tabella</h2>
    <p>La tabella verrà eliminata se esiste</p>
<?php
include ("res/config_db.php");
include (
"res/functions.php");
$Query "SHOW TABLES FROM $DBName";
$all_tables show_tables($Query);
if (
in_array($table$all_tables)) {
$Query "SELECT * FROM ".$table;
$num_rec num_record($Query);
if ($num_rec != 0) {
echo $num_rec " record per la tabella " .$table"<br />\n";
echo "Eliminando la tabella i dati andranno persi<br />\n";
} else {
echo "Nessun record nella tabella ".$table."<br />\n";
}
echo "<a href=\"cancella_tabella_canc.php?tabella=".$table."\">elimina la tabella</a><br />\n";
} else {
echo "La tabella " $table " non esiste ne DB<br />\n";
echo "Impossibile la sua eliminazione<br />\n";
}
?>

    </div>
<div id="footer">
<?php
include ("res/link.php");
?>

    </div>
</div>
</body>
</html>
In questo file notiamo, più o meno le stesse caratteristiche del primo file mostrato per la creazione della tabella (crea_tables.php).
Quindi passiamo al secondo file che esegue l'operazione


Questo il codice del file cancella_tabella_canc.php:
Codice: Non sei autorizzato a vedere i links. Registrati o Login
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Gestione cerca</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<link href="css/stile.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="container">
<div id="header">
<h1>&nbsp;</h1>
</div>
<div id="navigation">&nbsp;</div>
    <div id="content">
<h1>Elenco della tabelle presenti nel DB</h1>
<?php
include ("res/config_db.php");
include (
"res/functions.php");
$tabella $_REQUEST['tabella'];
$Query "SHOW TABLES FROM $DBName";
$all_tables show_tables($Query);
if (
in_array($tabella$all_tables)) {
echo "Cancellazione della tabella " $tabella "<br />\n";
$Query "DROP TABLE " $tabella;
echo "La query:<br />" $Query "<br />";
if (execute_query($Query)) {
echo "La tabella " $table " è stata cancellata correttamente<br />";
} else {
echo "Non è stato possibile cancellare la tabella " $table "<br />";
}
} else {
echo "La tabella " $table " non esiste ne DB<br />\n";
echo "Impossibile la sua eliminazione<br />\n";
}
?>

    </div>
<div id="footer">
<?php
include ("res/link.php");
?>

    </div>
</div>
</body>
</html>
Le note per questa pagina.
Inclusione dei soliti files esterni contenenti i dati e le funzioni usati nella gestione
Codice: Non sei autorizzato a vedere i links. Registrati o Login
include ("res/config_db.php");
include ("res/functions.php");

Eseguiamo un ulteriore controllo nel DB usando la mia funzione personale show_tables() per verificare che la tabella esista. Questo controllo ci permetterà di salvaguardarci dall'effetto di un eventuale refresh eseguito sulla pagina dopo l'eliminazione della tabella. Cercando di eliminare una tabella che non esiste causerebbe un errore nella procedura di cancellazione.
Codice: Non sei autorizzato a vedere i links. Registrati o Login
$Query = "SHOW TABLES FROM $DBName";
$all_tables = show_tables($Query);
if (in_array($table, $all_tables)) {
.................
} else {
..................
}

La procedura di eliminazione verrà chiamata con la seguente Query invocando la mia funzione personale execute_query() se la tabella esiste.
Codice: Non sei autorizzato a vedere i links. Registrati o Login
$Query = "DROP TABLE " . $tabella;
e questa è la mia funzione
Codice: Non sei autorizzato a vedere i links. Registrati o Login
<?php
function execute_query($query) {
    global 
$Host;
    global 
$User;
    global 
$Password;
    global 
$DBName;
    if (!
$link mysql_connect($Host$User$Password)) {
        return 
FALSE;
    }
    if (!
mysql_select_db($DBName$link)) {
        return 
FALSE;
    }
    
$result mysql_query($query$link);
    if (!
$result) {
        return 
FALSE;
    }
    
mysql_close ($link);
    return 
TRUE;
}
?>


Penso che questo, per ora, possa bastare...Alla prossima

 :n031:
E' stupido pensare di non aver bisogno degli altri