si può creare database con mysqli?

Ciao!

è possibile creare con mysqli un database?

Cioè se esiste una funzione simmatrica a  mysql_create_db di mysql.

Ho provato a installare sia mysql sia mysqli ma cmq mi viene segnalato un errore nell'esecuzione dello script:

Fatal error: Call to undefined function mysql_create_db() in C:\Programmi\Apache Group\Apache2\htdocs\annunci2.php on line 13

Questo è lo script:

<?php

# anche in questo caso credo sia ovvio ormai

# che come prima operazione bisogna

# prima connettersi al server

include("dati.txt");

$link = mysql_connect ("$db_host", "$db_login", "$db_pass")

or die ("Non riesco a connettermi a <b>$db_host</b>");

# a questo punto siamo pronti alla creazione del

# nostro primo database mediante la funzione

# mysql_create_db ("$database")

# il suo nome lo abbiamo conservato nel file

# dati.txt all'interno della variabile $database

if (mysql_create_db ("$database")){

print ("<b>$database</b> creato con successo");

} else {

printf ("Errore nella creazione di <b>$database</b>: %s\n", mysql_error ());

}

/* Ora se andate ad eseguire lo script

sicuramente riceverete un msg di successo

ma non appena ci riprovate ve ne apparirà

un secondo con tutt'altro msg,

ma di questo ne parliamo nel prossimo esempio

*/

mysql_close ($link);

?>

Mi rivolgo in particolare a Gianni che è il guru del sito.

Grazie.

Ciao.

Federico

inviato 11 anni fa
gilles27
X 0 X

In generale non conviene far creare un DB ad uno script, infatti raramente i server su cui girano i siti web concedono i permessi di creazione DB agli script. Normalemnte i DB vengono creati in altri modi e gli script al massimo creano le tabelle.

Se comunque si vuole creare un DB con uno script è meglio non usare la funzione mysql_create_db poiché, per varie ragioni, appartiene ormai al passato. Tanto è vero che nelle ultime versioni di PHP in pratica non esiste più (la cosa è più complicata ma la sostanza è questa). Per motivi analoghi questa funzione non ha un corrispettivo nel set di funzioni di mysqli.

Poiché la creazione di un database avviene attraverso l'esecuzione di una query del tipo:

CREATE DATABASE nome_database

basta quindi effettuare una semplice query:

mysql_query('CREATE DATABASE nome_database');

 :bye:

risposto 11 anni fa
Gianni Tomasicchio
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda