Funzione MySQL PHP
- Pagina precedente PHP Math
- Pagina successiva PHP MySQLi
Introduzione a PHP MySQL
Le funzioni MySQL ti permettono di accedere al server di database MySQL.
Installazione
Per utilizzare correttamente le funzioni di questa classe, è necessario aggiungere il supporto a MySQL durante la compilazione di PHP.
Durante la compilazione, è sufficiente utilizzare l'opzione di configurazione --with-mysql[=DIR], dove [DIR] è opzionale e indica la directory di installazione di MySQL.
Sebbene questa libreria di estensione MySQL sia compatibile con le versioni 4.1.0 di MySQL e successive, non supporta le funzionalità aggiuntive fornite da queste versioni. Per utilizzare queste funzionalità, utilizzare la libreria di estensione MySQLi.
Se si desidera installare contemporaneamente le librerie di estensione mysql e mysqli, è necessario utilizzare la stessa libreria client per evitare eventuali conflitti.
Installazione su sistema Linux
PHP 4
L'opzione --with-mysql è attivata di default. Questo comportamento predefinito può essere disabilitato utilizzando l'opzione di configurazione --without-mysql. Se si abilita MySQL senza specificare la directory di installazione, PHP utilizzerà la libreria di connessione client MySQL collegata.
Utenti di altre applicazioni che utilizzano MySQL (ad esempio auth-mysql) non devono utilizzare la libreria collegata, ma specificare la directory di installazione di MySQL, come questo: --with-mysql=/path/to/mysql. Questo costringerà PHP a utilizzare la libreria di connessione client installata con MySQL, evitando così eventuali conflitti.
PHP 5+
MySQL di default non è attivato e non ci sono librerie MySQL collegate. Utilizzare l'opzione di configurazione --with-mysql[=DIR] per aggiungere il supporto a MySQL. È possibile da MySQL Scaricare i file di intestazione e le librerie.
Installazione su sistema Windows
PHP 4
L'estensione PHP MySQL è stata compilata direttamente in PHP.
PHP 5+
MySQL di default non è attivato, quindi è necessario attivare la libreria di connessione dinamica php_mysql.dll nel file php.ini. Inoltre, PHP necessita dell'accesso alla libreria di connessione del client MySQL. La versione Windows di PHP include un libmysql.dll, affinché PHP possa comunicare con MySQL, questo file deve essere presente nel percorso di sistema PATH di Windows.
Per attivare qualsiasi libreria di estensione PHP (ad esempio php_mysql.dll), l'instruzione extension_dir deve essere impostata sulla directory della libreria di estensione. Un esempio di valore per extension_dir in PHP 5 è c:\php\ext.
Commento:Se si verifica un errore simile a questo durante l'avvio del server web: "Unable to load dynamic library './php_mysql.dll'" è perché il sistema non trova php_mysql.dll e / o libmysql.dll.
Configurazione in esecuzione
Il comportamento delle funzioni MySQL è influenzato dalle impostazioni in php.ini.
Opzioni di configurazione MySQL:
Nome | Predefinito | Descrizione | Modificabile |
---|---|---|---|
mysql.allow_persistent | "1" | Se è permesso ai collegamenti persistenti di MySQL. | PHP_INI_SYSTEM |
mysql.max_persistent | "-1" | Il numero massimo di connessioni persistenti per processo. | PHP_INI_SYSTEM |
mysql.max_links | "-1" | Il numero massimo di connessioni per processo, inclusi i collegamenti persistenti. | PHP_INI_SYSTEM |
mysql.trace_mode | "0" | Modalità di tracciamento. Disponibile a partire da PHP 4.3.0. | PHP_INI_ALL |
mysql.default_port | NULL | Specificare il numero di porta TCP per la connessione di default al database. | PHP_INI_ALL |
mysql.default_socket | NULL | Il nome del socket predefinito. Disponibile a partire da PHP 4.0.1. | PHP_INI_ALL |
mysql.default_host | NULL | L'indirizzo del server utilizzato per impostazione predefinita. Non si applica al modalità SQL sicuro. | PHP_INI_ALL |
mysql.default_user | NULL | Il nome utente utilizzato per impostazione predefinita. Non si applica al modalità SQL sicuro. | PHP_INI_ALL |
mysql.default_password | NULL | La password utilizzata per impostazione predefinita. Non si applica al modalità SQL sicuro. | PHP_INI_ALL |
mysql.connect_timeout | "60" | Secondi di timeout di connessione. | PHP_INI_ALL |
Tipo di risorsa
Sono stati utilizzati due tipi di risorse nel modulo MySQL. Il primo è il gestore di connessione del database, il secondo è il set di risultati della query SQL.
Funzione MySQL PHP
PHP:Indica la versione più vecchia di PHP che supporta questa funzione.
funzione | Descrizione | PHP |
---|---|---|
mysql_affected_rows() | Restituisce il numero di righe influenzate dalla dernière operazione MySQL. | 3 |
mysql_change_user() | Non approvato. Cambia l'utente attivo nella connessione. | 3 |
mysql_client_encoding() | Restituisce il nome del set di caratteri della connessione corrente. | 4 |
mysql_close() | Chiudi una connessione MySQL non persistente. | 3 |
mysql_connect() | Apri una connessione MySQL non persistente. | 3 |
mysql_create_db() | Non approvato. Crea un database MySQL. Usa mysql_query() al posto suo. | 3 |
mysql_data_seek() | Sposta il puntatore dei record. | 3 |
mysql_db_name() | Restituisce il nome del database dalla chiamata a mysql_list_dbs(). | 3 |
mysql_db_query() |
Non approvato. Invia una query MySQL. Usa mysql_select_db() e mysql_query() al posto suo. |
3 |
mysql_drop_db() |
Non approvato. Elimina (rimuove) un database MySQL. Usare mysql_query() al posto suo. |
3 |
mysql_errno() | Restituisce il codice numerico dell'errore della dernière operazione MySQL. | 3 |
mysql_error() | Restituisce il messaggio di errore di testo della dernière operazione MySQL. | 3 |
mysql_escape_string() |
Non approvato. Esci una stringa per mysql_query. Usa mysql_real_escape_string() al posto suo. |
4 |
mysql_fetch_array() | Recupera una riga del risultato come array associativo, array numerico o entrambi. | 3 |
mysql_fetch_assoc() | Recupera una riga del risultato come array associativo. | 4 |
mysql_fetch_field() | Recupera le informazioni delle colonne dal risultato e le restituisce come oggetto. | 3 |
mysql_fetch_lengths() | Recupera la lunghezza del contenuto di ogni campo nel risultato. | 3 |
mysql_fetch_object() | Recupera una riga del risultato come oggetto. | 3 |
mysql_fetch_row() | Recupera una riga del risultato come array numerico. | 3 |
mysql_field_flags() | Recupera il flag associato al campo specificato dal risultato. | 3 |
mysql_field_len() | Restituisce la lunghezza del campo specificato. | 3 |
mysql_field_name() | Ottenere il nome del campo specificato nella risultato. | 3 |
mysql_field_seek() | Impostare il puntatore della risultato sul offset del campo specificato. | 3 |
mysql_field_table() | Ottenere il nome della tabella in cui si trova il campo specificato. | 3 |
mysql_field_type() | Ottenere il tipo del campo specificato nella risultato. | 3 |
mysql_free_result() | Rilasciare la memoria del risultato. | 3 |
mysql_get_client_info() | Ottenere le informazioni del client MySQL. | 4 |
mysql_get_host_info() | Ottenere le informazioni dell'host MySQL. | 4 |
mysql_get_proto_info() | Ottenere le informazioni del protocollo MySQL. | 4 |
mysql_get_server_info() | Ottenere le informazioni del server MySQL. | 4 |
mysql_info() | Ottenere le informazioni dell'ultima query. | 4 |
mysql_insert_id() | Ottenere l'ID generato dalla precedente operazione INSERT. | 3 |
mysql_list_dbs() | Elenca tutti i database nel server MySQL. | 3 |
mysql_list_fields() |
Non approvato. Elenca i campi nei risultati MySQL. Usare mysql_query() al posto suo. |
3 |
mysql_list_processes() | Elenca i processi MySQL. | 4 |
mysql_list_tables() |
Non approvato. Elenca le tabelle nel database MySQL. Usare mysql_query() al posto suo. |
3 |
mysql_num_fields() | Ottenere il numero di campi nella risultato. | 3 |
mysql_num_rows() | Ottenere il numero di righe nella risultato. | 3 |
mysql_pconnect() | Aprire una connessione persistente al server MySQL. | 3 |
mysql_ping() | Ping una connessione del server, se non ci sono connessioni, riconnetti. | 4 |
mysql_query() | Inviare una query MySQL. | 3 |
mysql_real_escape_string() | Escapare i caratteri speciali utilizzati nelle stringhe SQL. | 4 |
mysql_result() | Ottenere i dati dei risultati. | 3 |
mysql_select_db() | Scegliere il database MySQL. | 3 |
mysql_stat() | Ottenere lo stato del sistema corrente. | 4 |
mysql_tablename() | Non approvato. Ottenere il nome della tabella. Usare mysql_query() al posto suo. | 3 |
mysql_thread_id() | Restituire l'ID della thread corrente. | 4 |
mysql_unbuffered_query() | Inviare una query SQL a MySQL (senza ottenere / cache i risultati). | 4 |
Costanti MySQL PHP
Nelle versioni successive al PHP 4.3.0, è possibile specificare più marcatori client nelle funzioni mysql_connect() e mysql_pconnect():
PHP:Indica la versione più vecchia di PHP che supporta questa costante.
Costante | Descrizione | PHP |
---|---|---|
MYSQL_CLIENT_COMPRESS | Utilizzo del protocollo di comunicazione compresso. | 4.3 |
MYSQL_CLIENT_IGNORE_SPACE | Consentito lasciare spazi vuoti dopo il nome della funzione. | 4.3 |
MYSQL_CLIENT_INTERACTIVE | Tempo di inattività massimo consentito prima di chiudere la connessione. | 4.3 |
MYSQL_CLIENT_SSL | Utilizzo della crittografia SSL (disponibile solo nella versione 4+ della libreria client MySQL). | 4.3 |
La funzione mysql_fetch_array() utilizza una costante per rappresentare il tipo dell'array restituito:
Costante | Descrizione | PHP |
---|---|---|
MYSQL_ASSOC | Le colonne di dati restituite utilizzano il nome del campo come nome dell'array. | |
MYSQL_BOTH | Le colonne di dati restituite utilizzano il nome del campo e l'indice numerico come nome dell'array. | |
MYSQL_NUM |
Le colonne di dati restituiti utilizzano un indice numerico come nome dell'array. L'indice parte da 0, rappresentando il primo campo dei risultati restituiti. |
- Pagina precedente PHP Math
- Pagina successiva PHP MySQLi