Originariamente inviato da andreamk
Ciao 2 cosette

Sarebbe piu carino mettere il codice di accesso alla funzione e chiamarla nel main.
Inoltre visto che faiun accesso al database e senza di esso non funziona nulla è corretto utilizzare la funzione require al posto di include. Ancora meglio require_once.

Quindi ...
File da includere
Codice PHP:
<?php
function dbConnect() {
  
$db_host 'localhost';
  
$db_user 'mccl';
  
$db_password 'password';
  
$db_name 'my_mccl';

  
$db mysql_connect($db_host$db_user$db_password);

  
//CONTROLLO CONNESSIONE
  
if ($db == FALSE)
    die (
"Errore nella connessione. Verificare i parametri");

  
//CONTROLLO DATABASE
  
mysql_select_db($db_name$db)
    or die (
"Errore nella selezione del database. Verificare i parametri");

  return 
$db;
}
?>
Main file ...
Codice PHP:
<?php
require_once("accessodatabase.php");

// DB CONNECT 
$db dbConnect();

// CREAZIONE QUERY
$query "SELECT * FROM guestbook ORDER BY data DESC,ora DESC";

//IF PER CONTROLLARE LA VERIDICITA' DELLA QUERY
if (mysql_query($query$db))
{
$result=mysql_query($query) or die (mysql_error());
while(
$array=mysql_fetch_array($result))
{
echo 
"data:".$array['data']."ora:".$array['ora']." ".$array['nome']."-".$array['messaggio'];
echo 
"
"
;
}
}
else { echo 
"Errore durante l'installazione";
}
mysql_close($db);

?>


In questo modo se gli include aumentano non sei costretto a infilarli nel punto esatto.
E' sempre meglio utilizzare delle funzioni per dividere il codice.


Andrea
ok grazie ho fatto come mi hai detto....quindi ogni volta mi devo portare dietro solo:
require_once("accessodatabase.php");

// DB CONNECT
$db = dbConnect();


..avrei un problema...sto cercando creare un guestbook...e diciamo che per stampare il risultato nella pagina non ho problemi...anche con la query(abbastanza semplice) sono riuscito...

il mio problema è nell'invio del form...
ho appunto 2 file... uno "commenti.php" che contiene il form

<form method="post" action="inviocommento.php">
Nick:
<input type="text" id="nome" name="nome">

Testo:<textarea name="testo" id="testo" cols="45" rows="5"></textarea>


<input type="submit" value=" Invio ">
</form>


l'altro si chiama inviocommento.php ed è questo che mi da l'errore..

<?php
require_once("accessodatabase.php");

// DB CONNECT
$db = dbConnect();

$query = 'INSERT INTO `guestbook` (`id`, `nome`, `messaggio`, `data`, `ora`, `ip`) VALUES (NULL, \'carica\', \'messaggio\', CURDATE(), CURTIME(), \'ip\');';

// questa parte che segue non so se sia necessaria...
if (mysql_query($query, $db))
{echo "funziona"}
else { echo "Errore durante l'installazione";
}

mysql_close($db);


?>


io ho lasciato nella query di inserire esattamente la parola carica nel campo nome e la parola messaggio nel campo messaggio, pensando che il problema fosse nel passaggio dei valori delle variabili ma purtroppo nemmeno cosi mi funziona se qualcuno riuscisse a dirmi la sintassi giusta...ho visto in giro e la sintassi sarebbe questa
$tuavariabile=$_POST['tuavariabile'];
ma sostituendo non riesco ugualmente...