Browsing Category: "Dbms"

MySql e PHP5 – Call to undefined function mysql_connect()

Sunday, September 5th, 2010 | Dbms, mysql, Php, Pillole di Programmazione with No Comments »

Dato che ho iniziato a studiare l’integrazione di php con i vari dbms, in particolare mysql, seguendo la guida installare-apache-mysql-e-php-in-ubuntu , ho voluto subito testarne l’effettivo funzionamento creando le pagine:

connessione.php


<?php

 phpinfo();
 function connect_to_db()
 {
 echo "Test";
 {
 $db_server = "localhost" ;
 $db_database = "MAPS" ;
 $db_user = "root" ;
 $db_pw = "cleaner" ;
 }

 $connect = mysql_connect($db_server,$db_user,$db_pw) or die('Non è possibile connettersi al DB MySql.' );
 if ($connect){
 echo "ok";}
 else
 {
 echo "ko";
 }

 $database = mysql_select_db($db_database);
 }
?>

test.php

<?php
require('connessione.php');
connect_to_db();
$sql = "INSERT INTO tb_country (id_country,description) VALUES (4, 'b')";
$query = mysql_query($sql) or die("errore: ".mysql_error());
echo 'I dati sono stati inviati al database';
$chiusura = mysql_close($connessione);
?>

Puntando sulla seconda pagina,ed avendo abilitato a priori la visualizzazione degli errori nel broswer mi ritornava il seguente errore:

Fatal error: Call to undefined function mysql_connect() in /home/cirio/workspace/myproject/test/connessione.php on line 12

Dopo svariate ricerche sono giusto alla soluzione del problema; nell’installazione standard di php5 , oltre all’abilitazione manuale dell’estensione per mysql occorre installare il pacchetto php5-mysql. Vediamo come procedere:

Modifica file PHP.ini


gksudo gedit /etc/php5/apache2/php.ini

Ricerchiamo la riga extension=msql.so e scommentiamola togliendo il ‘;’ che la precede. Salviamo e chiudiamo il file.

Installazione pacchetto php5-mysql

sudo apt-get install php5-mysql

Terminato il download del pacchetto riavviamo apache tramite il comando

sudo /etc/init.d/apache2 restart
Share

Query in mysql – alcune considerazioni

Wednesday, February 27th, 2008 | mysql with 4 Comments

domandaScusate in anticipo per l’assenza ma purtroppo l’assistenza per quanto riguarda i post sui tom tom mi occupa davvero il poco tempo che dedico al pc. Nonostante tutto, sono arrivato a circa metà del libro che sto studiando sull’uso dei database mediante mysql; un argomento che mi ha interessato parecchio e che stò affrontando tutt’ora è l’uso delle query, elemento fondamentale.

Un database viene creato dopo un’attenta analisi in cui stabilire le finalità, progettare la struttura ed organizzare il flusso di lavoro sui dati. Successivamente al riempimento delle tabelle, mi viene lecita la domanda: Qual’è l’obbiettivo finale di tutto questo lavoro?

Ebbene vi rispondo in modo semplice e preciso, RICAVARE INFORMAZIONI, interrogando il nostro database mediante l’uso delle query, che non vuol dire altro che domandare…

In mysql, le query vengono eseguite su un archivio mediante il comando “select” , non sono altro che istruzioni sql con le quali si estraggono gruppi di dati da uno o più archivi di un database. I dati che vengono estratti sono letti ed organizzati in modo preciso in una particolare tabella che viene creata in quel momento, in modo dinamico.

Recordset, viene chiamata; i campi che vengono estratti sono associati per formare un record. Ogni singolo raggruppamento di campi o recordset costituisce il record di una tabella temporanea che potrà quindi essere visualizzata senza problemi.

Share

update da riga di comando – aggiorniamo i dati su database mysql

Sunday, February 17th, 2008 | mysql with No Comments »

update

Benvenuti, spesso vi è la necessità di gestire e modificare contemporaneamente una grossa mole di dati risiedenti nel nostro database, scomodo e lento sarebbe la modifica di ogni singolo dato, per questo ci viene incontro la funzione “UPDATE”, che ci permetterà di settare dati diversi parametri più colonne o record contemporaneamente:

update nome_tabella
set nome_campo1=espressione1,
nome_campo2=espressione2,...
[where definizione_where];

importante è la clausola “where”(in italiano sarebbe: dove) , la quale ci permette di inserire criteri di individuazione dettagliati; ma passiamo ad un esempio pratico,cosichè anche ci è meno esperto possa capire;

la mia tabella (nome_tabell) sarà composta da 3 colonne e sarà incentrata sui film di steven spielberg e Hitchcock:

– autore

– genere

– titolo

mettendo il caso che voglia aggiornare il record dove l’autore è Steven Spielberg, ma il titolo del film è Jurassik Park , sostituendolo con Peter Pan, procederò così:

update nome_tabella
set titolo="peter pan"
where autore="steven spielberg" AND titolo="Jurassik Park"

Share

usare mysql da riga di comando – pacchetto easyphp

Sunday, February 10th, 2008 | mysql with No Comments »

terminal

Come spesso accade nelle distribuzioni preconfigurate (apache,php,mysql), non viene installato di default la command line per gestire il database. Siccome negli articoli precenti vi ho parlato di comandi dati da terminale, mi sembra sembra doveroso capire come arrivarci ad esso:

1) start –> esegui

2) digitiamo nella barra “cmd” e premiamo Ok, si aprirà il terminale.

3) per avviare il demone di mysql e quindi gestirlo digitiamo in sequenza:

cd C:\Programmi\EasyPHP1-8\mysql\bin

mysql -u root -p

++++++ “inseriamo la password di accesso del database”, di default non c’è, si può così premere invio senza scrivere niente ++++

4) A video vi verrà stampato il “Benvenuto” e sarete pronti a lavorare.

Alcuni chiarimenti a riguardo:

mysql –> è il nome del programma

-u root –> Significa che ci si riferisce all’utente(-u) il cui nome è root

-p –> opzione di autenticazione

Share

Collegarsi a database mysql e visualizzarne a video i dati contenuti nei campi

Saturday, February 9th, 2008 | mysql with No Comments »

Rieccomi, finalmente ci sono riuscito! siceramente ci ho messo un pò, più del previsto, avendo nulle conoscenze di php mi è risultato difficile creare uno script che mi permettesse di visualizzare a video i dati contenuti nel mio database. Ma siccome mollare non è il mio forte, finalmente ce lo fatta, pagina con estensione .php sarà così costituita:

<?php
// imposto i paramentri di connessione
if (!($db=mysql_connect(‘localhost’, ‘root’,’admin’)))
die (“Impossibile connettersi al database: “.mysql_error());

// imposto il database a cui collegarsi

mysql_select_db(‘videoteca’) or
die (“Impossibile selezionare il database: “.mysql_error());
// scrivo la query,precisando la tabella a cui fare riferimento
$risultato = mysql_query(“select * from film”) or
die (“Query non valida: “.mysql_error());
// uso della funzione mysql_fetch_object, Restituisce un oggetto con proprietà che corrispondono alla riga caricata oppure FALSE se non ci sono più righe.
while ($riga = mysql_fetch_object($risultato)) {
// selezionate i campi di cui volete vederne il contenuto
echo $riga->genere;
echo $riga->id;
}
mysql_free_result($risultato);
?>

Ora richiameremo la nostra pagina, se in locale, da http://localhost/nostrofile.php

Questo è un esempio banalissimo, però sono contento di esserci riuscito dopo aver cambiato tre volte pacchetto (xampp,wamp ed ora easyphp).

Share

Invio istruzione SQL e apertura tabelle database – appunti mysql

Tuesday, February 5th, 2008 | mysql with 1 Comment

Benvenuti in questo primo articolo,tutti i comandi che vi posterò saranno dati da riga di comando; questo perchè:

1) L’interfaccia grafica è utile agli utenti meno evoluti, mentre noi siamo qua per imparare (me compreso)

2) l’ambiente software non sempre è installato in ogni pc nel quale si lavora

3) Inevitabilmente l’interfaccia grafica assorbe una quantità di risorse notevolmente maggiore rispetto a quella a caratteri, stessa cosa vale per l’elaborazione delle operazioni.

Si può inviare un’istruzione SQL a mysql in due modi:

– Il primo stà nel terminare il comando con un “;” e poi premendo il tasto invio.

– Scrivere la prima parte dell’istruzione senza completarla con un “;” il client visualizzerà un’ulteriore riga in cui il prompt visualizzerà una freccia, qui potete aggiungere ulteriori istruzioni per un maggior ordine e terminare con “;” o \g.

Per visualizzare il contenuto delle tabelle di un database:

1) start–> icona mysql

2) vi troverete nel prompt di mysql, inserite la password di root e si avvierà il servizio

3) inserite:

mysql> use mysql
mysql> show tables;

Andiamo con ordine, questo comando apre il database mysql e poi invia un’istruzione SQL su una sola riga, che visualizza l’elenco delle tabelle contenute del database.

Share