Mini Corso di PHP , PHP
- 15/01/2009
Mini Corso di PHP - Sistema di News (Cancella utente) - Lezione 13
Ebbene si, il nostro corso è a piedi un po 'lento - lo ammetto - ma ti prometto che non si fermerà. Farò ogni sforzo per finalizzarlo. Ho ricevuto diverse e-mail lodando il contenuto e chiedendo altri messaggi. Sono molto felice di vedere che il contenuto del mio blog è di essere utile.
Oggi impareremo come eliminare un record dal database. Nella scorsa lezione abbiamo visto come inserire i dati (INSERT) in banca e come selezionare (SELECT) per visualizzarli.
Di seguito è riportato come il codice SQL per eseguire questa operazione:
- DELETE FROM nome_tabella
Ma quasi sempre sarà cancellato uno (s) record (s) specifico (s) del database. Questo è dove creiamo il campo ID nella tabella, ti ricordi? Serve a creare un numero intero ed è sempre incrementato, cioè mai, hanno due file con lo stesso ID. Questo ID viene utilizzato per specificare "chi" sarà cancellato. Così come si potrebbe vedere di seguito il completamento del codice SQL:
- campo_criterio = 'valor' DELETE FROM nome_tabella WHERE 'value' campo_criterio =
Si noti che usiamo il comando WHERE per dire quale record verranno eliminati. Se non si specifica un DOVE TUTTI I RECORD DI QUESTA TAVOLA SARANNO ELIMINATE.
Per vedere l'intera documentazione di questo comando SQL: http://dev.mysql.com/doc/refman/5.0/en/delete.html
Bene, ora sappiamo in teoria come questo tentativo di cancellare le cose dal database, ora facciamo applicare questo al nostro sistema di news. Ecco cosa sarà fatto oggi:
- Creare un collegamento accanto agli utenti del sistema di eliminarlo;
- Creare il file che sarà responsabile per la cancellazione del record;
Così mettersi al lavoro!
Abbiamo bisogno di creare un collegamento che quando la persona fa clic, l'utente sarà cancellato. Ma, come sappiamo, abbiamo bisogno di sapere quale utente viene eliminato dal database. Ma come facciamo a saperlo? Utilizzando il campo ID. Cliccando su 'Elimina' il link, il sistema percorso che si a 'usuario_delete.php' la pagina, questa a sua volta, bisogno di ricevere l'ID utente che verrà cancellato. Passeremo questo parametro via GET, o metterà l'ID utente nella URL. Aprire 'usuario_lista.php' il file ed effettuare le seguenti regolazioni:
- Aggiungere il campo ID nella lista dei campi restituiti dalla SELECT (linea 8);
- Mettere l'ID in una variabile (linea 25);
- Crea 'Delete' il link passando l'ID tramite GET a 'usuario_delete.php' la pagina (linea 28);
Di seguito è riportato il codice si presenta come 'usuario_lista.php' il file:
- <?
- # === - Includere il file che si connette al database
- 'banco.php' ) ; require ('banco.php');
- ?>
- <h1> lista di utenti del sistema </ h1>
- <?
- # === - Io costruisco il comando SQL che rende la ricerca per gli utenti
- ; 'SELECT id, nome, email FROM utenti Sql $ =;
- # === - Esecuzione di SQL
- # === - Record totali RECUPERO trovato
- # === - I stampare il numero totale di record
- # === - MENTRE mentre il comando è vero, vale a dire, finché c'è record da visualizzare.
- # === - Dichiarare variabili con i dati che sono stati registrati nel database
- [ 'nome' ] ; $ Nome = $ row ['name'];
- [ 'email' ] ; $ Email = $ row ['email'];
- [ 'id' ] ; $ Id = $ row ['id'];
- # === - Stampare il nome e l'indirizzo e-mail
- . $id . "'>Apagar</a><BR>" ; echo "$ name <b> </ b> (<a href='mailto:$email'> $ email </ a>) - <a href='usuario_delete.php?id=". $id. "'> Elimina </ a> <BR> ";
- }
- ?>
Bene, la prima parte è fatta, ora abbiamo bisogno di impostare 'usuario_deleta.php' il file. Noi come segue:
- Ricevere l'ID utente;
- Noi verificheremo se l'ID è valido (numerico);
- Quindi eseguire il codice SQL che cancella l'utente dal database;
Ecco come la sceneggiatura era, ha commentato:
- <?
- # === - Includere il file che si connette al database
- 'banco.php' ) ; require ('banco.php');
- # === - Recupero l'ID utente che è stato passato attraverso l'URL GET
- [ 'id' ] ; $ Id = $ _GET ['id'];
- # === - Abbiamo bisogno di controllare se sono arrivati tramite parametro GET è valido in questo caso, deve essere valido solo se un numero.
- is_numeric ( $id ) ) { // Veja a documentacao da funcao is_numeric(): http://br2.php.net/manual/pt_BR/function.is-numeric.php if ( is_numeric ($ id)) {/ / Vedere la documentazione del is_numeric function (): http://br2.php.net/manual/pt_BR/function.is-numeric.php
- # === - Monto SQL per fare l'eliminazione.
- ; $ Sql = "DELETE FROM utenti WHERE id = $ id";
- # === - Esecuzione di SQL
- $sql ) { if ($ sql) {
- # === - Riporta il successo dell'operazione
- { Else {}
- # === - Chiama e visualizza il messaggio di errore sullo schermo
- . mysql_error ( ) . " <BR><BR><a href='usuario_lista.php'>Voltar</a>" ; echo "user Errore durante l'eliminazione -". mysql_error () "<a <BR> href='usuario_lista.php'> Indietro </ a>".;
- }
- { Else {}
- # === - Le chiamate e la possibilità di tornare
- }
- ?>
Hanno visto come è facile? Certo, manca un sacco, per esempio, chiedere per conferma prima di cancellare ... come, "Davvero cancellare questo utente?». Lascio che per voi di fare, che vogliono implementare questa funzione può fare e postare qui sul blog per condividere .. e rimanere con il dubbio scrivetemi.
Spero essere stato utile ancora una volta!
Un grande abbraccio!



6 Responses to "Corso di PHP Mini - News System (Cancella utente) - Lezione 13"
bellezza del vecchio una soffiata da un buon libro su php.
Grazie.
Di Marcelo (3 comments) su 31/01/2009
Buon pomeriggio Oliveira tutto bene?
Allora dimmi ... avete già qualche conoscenza in PHP?
Ho comprato un ottimo libro per studiare per ottenere la certificazione. Egli viene a PHP 5 .... parla di orientamento agli oggetti ...
Il link del libro è nel Submarine: http://www.submarino.com.br/produto/1/877859/?franq=267589
Spero che questo aiuti .. un grande abbraccio!
Per Marcelo Sabadini (109 commenti) il 2009/01/31
Me, l'esclusione 'DELETE FROM utenti WHERE id = $ id' funzionato solo quando ho modificato come segue:
'DELETE FROM utenti WHERE id =' $ ID "..;
sempre restituito l'errore: Unknown column '$ id' in 'clausola dove'
Con Roger J. Gentil (3 comments) su 28/08/2009
Ciao Roger!
Non ha funzionato perché le variabili all'interno di virgolette singole devono essere concatenati!
si possono scambiare per fare preventivi così o doppia: "DELETE FROM utenti WHERE id = '$ id.».
Spero che questo aiuti! abbracci!
Per Marcelo Sabadini (109 commenti) il 2009/08/28
Sono davvero godendo le classi, ma ha bisogno delle lezioni precedenti dal primo, come faccio a trovare queste classi?
Per Nilsa (1 commenti) su 2010/08/03