PDA

Visualizza versione completa : php e database


nemesis
01-05-2004, 09.46.22
ciao a tutti sono disperato devo iniziare a lavoarare in php per la tesina e subito mi sono bloccato.

Ecco il mio problema database in psotgresql uso questa sintassi per coneetermi al database e mi da questo errore:

Warning: pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Connection refused Is the server running on host localhost and accepting TCP/IP connections on port 5432? . in /home/davide/public_html/pg_connect.php on line 4
Impossibile stabilire una connessione.


Allora visto che un giorno che ci perdevo la testa anche con sintassi simili ma diverse ho pensato sposto il database in mysql e lavoro li, ma mysql nn lo conosco o meglio conosco il linguaggio sql ma la sintassi di mysql no, e subito mi sono ritrovato nel problema: ma come bip creo il database!!!!
Qualcuno sa aiutarmi?!

Dav82
01-05-2004, 11.10.28
Originariamente inviato da nemesis
e subito mi sono ritrovato nel problema: ma come bip creo il database!!!!

Installi server e client di mysql, fai partire il server, poi fai partire il frontend di mysql (il client, in sostanza) e lo fai connettere con user, password e port di default.
A sto punto, dal primo menù fai "create database", e ti compare in basso assieme al db di default. Lo selezioni, vai su query (nei tab sulla sinistra) e da lì puoi creare tabelle, inserire dati, eseguire query tramite i soliti comandi di DDL e DML.
Attento che ogni tanto rompe le palle con gli apici, e soprattutto non ha integrità referenziale :S

Ciao :)

nemesis
03-05-2004, 15.35.05
scusa ma mi sento molto nel guano ti spiego meglio comsa devo fare come lo sto facendo.

1. ho un database che in pratica contiene tutte le tabelle che mi servono su un file

2.crea un database auto con postgresql da console e lo riempio:
a)mi logo come postgres
b)createdb auto
c)psql auto
d)\i /home/db.txt
3.cosi ho creato il database
4. ora devo fare uno script php che si connetta con questo:
a)<?php
$conn = pg_connect('dbname=auto host=localhost');
?>

5. scrivendo così mi da questo errore:
Warning: pg_connect(): Unable to connect to PostgreSQL server: could not connect to server: Connection refused Is the server running on host localhost and accepting TCP/IP connections on port 5432? . in /home/davide/public_html/pg_connect.php on line 3

6.ho modificato il file pg_hba.conf in var/lib/pgsql ma non è cambiato nulla.

Come posso fare?!
Sono disposto anche a passare a mysql ma non so come si fa ad implementare il database!
Uso suse 9
Aiutatemi sono con l'acqua alla gola!!!fine scuola si avvicina!!!

nemesis
03-05-2004, 18.37.37
ORa sono riuscito a creare il db in mysql e farlo connettere dal php con alcuni esempi trovati in internet, ora quindi mi restano solo problemi di php che man mano vi proporrò!CIao

nemesis
03-05-2004, 20.01.59
ho fatto un altro passo avanti o indietro!!!:S


ora ho questo spezzone di condice:

<html>
<head>
<title>Connessione Php</title>
</head>
<body>
<?php
$db_host = "localhost";
$db_user = "root";
$db_password = "";
$db_name = "auto";
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione.");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database.");

echo strftime ("<H6 align=left>%A %d/%m/%Y Ore %H:%M:%S</h6>\n", time ());

//ed ora provo l'inserimento nella query
$codFisc='lndmrk83s20w897y';
$nome ='mark';
$cognome ='landers';
$indirizzo ='via japan 1';
$cap ='02';
$telefono ='166123456';
$city = 'tokyo';
$mail = 'marklanders@tin.it';

$query = mysql_query("INSERT INTO CLIENTE(codFisc,nome,cognome,indirizzo,cap,telefon o,city,mail)
VALUES('$codFisc','$nome','$cognome','$indirizzo', '$cap','$telefono','$city','$mail')");

$risultato = mysql_query("SELECT * FROM CLIENTE;")
or die("Query non valida: " . mysql_error());

while ($riga = mysql_fetch_array($risultato, MYSQL_NUM)) {
printf ("codice Fiscale: %s\n Nome: %s\n Cognome: %s\n", $riga[0], $riga[1],$riga[2]);
}

mysql_free_result($risultato);
echo "$risultato\n";


?>

</body>
</html>

non mi da nessun errore ma non mi scrive manco nulla nel database...
avete idee???

PS: mi scuso se vi rompo ma mi siete sempre stati d'aiuto....

P8257 WebMaster
05-05-2004, 01.13.37
Prova a stampare "MySQL_error()" subito dopo aver mandato in esecuzione la query


print @mysql_error();


Se la query non viene eseguita potrebbero esserci errori di sintassi, campi vuoti (vincolati a non esserlo) e cose così, che solo MySQL ti può dire.

Bye :cool:

nemesis
07-05-2004, 20.09.06
non mi scrive nulla!!!

nemesis
08-05-2004, 14.58.34
c'è l'ho fatrta ho capito l'errore!!!!
MITICO!!!!

Eteria
10-05-2004, 01.52.19
Anche se il problema del database l'hai ormai risolto, scaricati comunque questo tool per gestire i database mysql:
http://www.mysql.com/products/mysqlcc/index.html
Vale la pena, ha pure delle opzioni per ottimizzare e riparare le tabelle nel caso ti si inputtana qualcosa nel database e ti prende la paura di non saltarci più fuori ;)

nemesis
10-05-2004, 18.14.16
grazie mille!