Depois de fazer uma pesquisa, ler artigos, dicas, recomendações; colecionar alguns códigos úteis, estou vendo quais soluções viáveis.
Então:
1. Qual a melhor forma (e mais rápida) de exibir um código HTML dentro de um script PHP?
a) Fechando e abrindo as seções <?php CÓDIGO PHP ?> CÓDIGO HTML <?php echo $variavel; ?> MAIS CÓDIGO HTML <?php CÓDIGO PHP ?>
c) Outro?
2. Conectar-se ao banco de dados através do persistent connection:
mysql_pconnect(“host”, “login”, “passwd”);
realmente otimiza o tempo de conexão quando você tem várias páginas (topo, conteudo e rodape) que se conectam ao banco de dados diversas vezes numa mesma página?
3. A utilização de 'classes' prontas que executam querys (select, insert, update, delete) no banco de dados é mais efetiva e segura que executar as querys manualmente e se forem feitas manualmente qual a melhor forma?
MANUALMENTE 1 : $query = mysql_query("SELECT ...");
MANUALMENTE 2 : $query = "SELECT ...";
$resultado = mysql_query($query);
4. Como evitar que as pessoas recebam erros de conexão ao MYSQL? ex: Too many connections...
Error handlers comuns para querys podem ser utilizados neste contexto também?
5. Qual a melhor forma de proteger o arquivo de conexão ao banco de dados, quando este tem extensão PHP e é incluído em todas as páginas que necessitam da conexão?
6. Qual a melhor forma de incluir arquivos de conexão? Através do include ou require_once?
7. Salvando os resultados de uma query em cache por um tempo determinado (digamos, 24horas), privilegiaria este arquivo "cacheado" dentro destas 24horas, mesmo se os dados desta query estiverem sido atualizados?
O código que pretendo usar é este:
$expire = 86400; // 24 hours
if (file_exists($file) &&
filemtime($file) > (time() - $expire)) {
$records = unserialize(file_get_contents($file));
} else {
$link = mysql_connect('localhost','username','password')
or die (mysql_error());
mysql_select_db('shop')
or die (mysql_error());
/* form SQL query */
$query = "SELECT * FROM categories";
$result = mysql_query($query)
or die (mysql_error());
while ($record = mysql_fetch_array($result) ) {
$records[] = $record;
}
$OUTPUT = serialize($records);
$fp = fopen($file,"w");
fputs($fp, $OUTPUT);
fclose($fp);
} // end else
// Query results are in $records array
foreach ($records as $id=>$row) {
if ($row['category_id'] == $_REQUEST['category_id']) {
// category selected - print bold
print '<B>'.$row['category_name'].'</B><BR>';
} else {
// other category - print regular
print $row['category_name'].'<br>';
}
} // end foreachObrigada desde já.










