Newsgroup: it.comp.www.php
Titolo: tabelle in php

ciao a tutti, avrei una questione da sottoporvi:
dovevo craere un sito weeb con un interfacciamento al database; quindi
mi sono scaricato mysql e l'ho installato sul mio pc. Una volta
configurato il tutto ho avviato la
"Mysql command Line Client"
poi da linea di comando ho creato un database
create database accessi;
poi, sempre da linea di comndo volevo creare una tabella dentro il
database e ho scritto
create table login_utente
{
    username varchar(11) not null primary key,
    password varchar(11) not null primary key,
    nome varchar(20) not null,
    email varchar(20) not null,
};
il risultato è che quando premo invio mi dice : no database selected
!!!! te sai il perchè??
un ultima cosa.... quando metto on line il database, nella connesssione
al database che ci devo mettere?
finchè sono in locale metto "localhost" e tutto ok, ma dopo?
se lo pubblico su altervista come "
nomesito.altervista.org
", nella
connessione devo metterci "
altervista.org
" ??
vi ringrazio in anticipo
lorenzo


Il giorno sab, 30/09/2006 alle 04.08 -0700, 
lore...@gmail.com
 ha scritto:





ciao a tutti, avrei una questione da sottoporvi:





ciao,









dovevo craere un sito weeb con un interfacciamento al database; quindi


mi sono scaricato mysql e l'ho installato sul mio pc. Una volta


configurato il tutto ho avviato la


"Mysql command Line Client"



poi da linea di comando ho creato un database



create database accessi;





ok










poi, sempre da linea di comndo volevo creare una tabella dentro il


database e ho scritto



create table login_utente


{


    username varchar(11) not null primary key,


    password varchar(11) not null primary key,


    nome varchar(20) not null,


    email varchar(20) not null,


};





ok






il risultato è che quando premo invio mi dice : no database selected


!!!! te sai il perchè??





perché devi dire al server che la tua tabella andrà creata nel database accessi. 

scrivi quindi:



use accessi;



il client ti dirà:

Database changed



a quel punto crei la tabella.












un ultima cosa.... quando metto on line il database, nella connesssione


al database che ci devo mettere?


finchè sono in locale metto "localhost" e tutto ok, ma dopo?


se lo pubblico su altervista come "
nomesito.altervista.org
", nella


connessione devo metterci "
altervista.org
" ??






molto probabilmente dovrai mettere localhost anche lì. Comunque in genere dopo la registrazione i parametri ti vengono comunicati.








vi ringrazio in anticipo






prego








lorenzo






enrico













----------------------------------


http://www.emcquadro.com

----------------------------------
















ok, grazie...
avrei un'altra cosa da chiederti... il problema l'ho risolto, però me
ne capita un altro che è un po inquietante:
con un form accedo ad una pagina log.php nella quale connetto il
database creato prima per verificare la password... però mi da il
seguente errore:
Fatal error: Call to undefined function mysql_connect() in
C:\www\sito\logging.php on line 2
in teoria non mi dovrebbe dare l'errore perchè la funzione è definita
da php.... onestamente nn capisco cosa c'è che nn va. il codice è
più o meno questo:
<?php
$connection = mysql_connect("localhost","root", "password");
if ($connection) {
            $db = mysql_select_db("accessi", $connection);
            if (!$db) print "Failed to select 'phpdb'.\n";
    } else {
            print "Failed to connect to database.\n";
    }
  // elaborazioni varie
mysql_close( );
?>


Il giorno sab, 30/09/2006 alle 08.47 -0700, 
lore...@gmail.com
 ha scritto:





ok, grazie...


avrei un'altra cosa da chiederti... il problema l'ho risolto, però me


ne capita un altro che è un po inquietante:



con un form accedo ad una pagina log.php nella quale connetto il


database creato prima per verificare la password... però mi da il


seguente errore:



Fatal error: Call to undefined function mysql_connect() in


C:\www\sito\logging.php on line 2






fai una pagina vuota con la sola istruzione 

print phpinfo();



in questo modo puoi verificare che il modulo php_mysql sia correttamente caricato.

Considera, infatti, che l'errore che riporti - oltre ad essere una strafaq - è sintomo di un probabile mancato caricamento della dll relativa a mysql. Ad ogni modo, per abilitare la libreria devi decommentare la relativa riga in php.ini che in genere sta o in \windows o in \php. Verifica, infine che la libreria stessa, cioè php_mysql.dll, sia in \php\extensions oppure - per non saper né leggere né scrivere - mettila in    \windows\system32\.

Una volta fatto ciò, docresti riavviare il server web, IIS o Apache che sia, e il messaggio di errore non dovrebbe più apparire.





in teoria non mi dovrebbe dare l'errore perchè la funzione è definita


da php.... onestamente nn capisco cosa c'è che nn va. il codice è


più o meno questo:



<?php


$connection = mysql_connect("localhost","root", "password");






visto che ci sei evita di lavorare - anche se in locale e a casa tua - con l'utente root. Se fai una ca@@@@ta rischi di pagarla grossa.










if ($connection) {


            $db = mysql_select_db("accessi", $connection);


            if (!$db) print "Failed to select 'phpdb'.\n";


    } else {


            print "Failed to connect to database.\n";


    }


  // elaborazioni varie


mysql_close( );


?>






Ciao.

Enrico













----------------------------------


http://www.emcquadro.com

----------------------------------
















 --=-YMX8+TuSvkeAuhKmk+B+--

 
Siamo ormai assolutamente OT, comunque, prima che ci prendano a calci
facciamo così:
1)
Puoi mettere qualsiasi nome basta che prima lo comunichi al server.
Da cli - una volta stabilita la connessione - digita una cosa del
genere.
GRANT ALL ON NOMETUODATABASE.* TO 'NOMEUTENTECHEVUOI'@'%' IDENTIFIED BY
'password';
Se ti interessa approfondire e ti fidi, dà un'occhiata qui:
http://emcquadro.com/mysql.php?id_arg=210
se non ti fidi non scrivere più :-)
2)
Fai la tua bella prova di connessione con il nuovo account, prima da
mysql poi da script php
3)
Non pensare male :-)
Dà - prima che te lo consigli anche qualcun altro - una bella occhiata
ai manuali PHP e MYSQL che trovi online.
Rispetto ai classici manuali, sappi che questi due - che trovi anche in
versione chm (che consulti offline anche da linux) - sono fatti davvero
bene, esplicativi e solo raramente lacunosi.
Ecco, quando sono lacunosi vengono in soccorso prima Google, poi i ng.
Comunque, se hai ancora bisogno, vai sereno. Fatti vivo.
