Ho questa pagina in php(non so se ho fatto bene a postare qua oppure se era meglio il forum php) che genera un codice javascript per mostrare nascondere dei div, che però non riesco a far funzionare
Codice PHP:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/ xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="style.css" />
<title>Transitional document</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js"></script>
<script type="text/javascript" src="./js/fancybox/jquery.fancybox-1.3.4.pack.js"></script></head>
<link rel="stylesheet" href="./js/fancybox/jquery.fancybox-1.3.4.css" type="text/css" media="screen" />
<script type="text/javascript">
$(document).ready(function() {
$("a.pdf").fancybox({
'width' : '70%',
'height' : '90%',
'autoScale' : false,
'transitionIn' : 'none',
'transitionOut' : 'none',
'type' : 'iframe',
'overlayOpacity' : 0.9
});
});
</script>
</head>
<body>
<div id="content">
<?php
include('config.php');
$connect = mysql_connect($db_location, $user, $password) or die('Errore connessione...');
mysql_select_db($db, $connect) or die('Errore database...');
$query = "SELECT DISTINCT materia FROM `appunti` LIMIT 0, 30 ";
$result = mysql_query($query, $connect) or die('Errore query...');
$numrows = mysql_num_rows($result);
if ($numrows==0){
echo "Database vuoto!";
}
else
{
echo"<div id=\"header\">";
//Avvio un ciclo for che si ripete per il numero di occorrenze trovate
for($x=0; $x<$numrows; $x++){
//Recupero il contenuto di ogni record rovato
$resrow = mysql_fetch_row($result);
$materia_query = $resrow[0];
//Stampo il risultato
$materia = $materia_query;
$materia_title = $materia_query."title";
include('js/hide-box.php');
echo"
<a id=\"$materia_title\" href=\"javascript:on$materia();\" >$materia</a>";
}
}
$query2 = "SELECT DISTINCT materia FROM `appunti` LIMIT 0, 30 ";
$result2 = mysql_query($query2, $connect) or die('Errore query...');
$numrows2 = mysql_num_rows($result2);
if ($numrows2==0){
echo "Database vuoto!";
}
else
{
for($x=0; $x<$numrows2; $x++){
$resrow2 = mysql_fetch_row($result2);
$materia_query2 = $resrow2[0];
//Stampo il risultato
$materia2 = $materia_query2;
$materia_title2 = $materia_query2."title";
$query_item = "SELECT titolo, date, file FROM appunti WHERE materia = '$materia' ORDER BY `appunti`.`date` DESC";
$result_item = mysql_query($query_item, $connect) or die('Errore query item...');
$numrows_item = mysql_num_rows($result_item);
if ($numrows==0){
echo "Database vuoto!";
}
else
{
for($x_item=0; $x_item<$numrows_item; $x_item++){
//Recupero il contenuto di ogni record rovato
$resrow_item = mysql_fetch_row($result_item);
$titolo = $resrow_item[0];
$data = $resrow_item[1];
$file = $resrow_item[2];
echo " <div class=\"item-content\" id=\"$materia\" style=\"display: none; \">
<table class=\"item-table\">
<tr>
<td>$titolo</td>
<td>$data
</td>
<td><a class=\"pdf\" href=\"./file/$file\">$file </a>
</td>
</tr>
</table>
</div>
";
}
}
}
}
?>
</div>
</div>
</body>
</html>
Il codice javascript che viene generato è in hide-box.php ed è questo
codice:
<script language="javascript">
<!--
function mostra<?php echo $materia; ?>(){
document.getElementById('<?php echo $materia; ?>').style.display='';
document.getElementById('<?php echo $materia_title; ?>').setAttribute('href','javascript:nascondi<?php echo $materia; ?>();')
}
function nascondi<?php echo $materia; ?>(){
document.getElementById('<?php echo $materia; ?>').style.display='none';
document.getElementById('<?php echo $materia_title; ?>').setAttribute('href','javascript:mostra<?php echo $materia; ?>();')
}
function on<?php echo $materia; ?>(){
document.getElementById('<?php echo $materia; ?>').style.display='';
document.getElementById('<?php echo $materia_title; ?>').setAttribute('href','javascript:nascondi<?php echo $materia; ?>();')
}
//-->
</script>