[size=18]Salve a tutti, sono nuovamente io con l'ennesimo problema che non riesco a risolvere..
Ho il seguente codice:[/size]
//---------------------------------------------------------------------------------------
<html>
<head>
<title>Visualizza tutti i problemi per utente User</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body background="sfondo.jpg" text="#000000" link="#000000" vlink="#000000" alink="#000000">
<table width="75%" border="0" align="center">
<tr>
<td><div align="center">
<?php
include("dbconfig.php");
?>
Problemi Postati da tutti gli utenti:</div></td>
</tr>
</table>
<p> </p><p>
<?php
//creo la connessione con il database
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connesione");
//seleziono il database desiderato
mysql_select_db("gestore", $db)
or die ("Errore nella selezione del database");
//creo la query
$sql = "
SELECT Tbl_Contesto.Id_contesto, Tbl_Contesto.contesto, Tbl_Utente.nick, tbl_messaggio.oggetto,
tbl_messaggio.messaggio, tbl_messaggio.stato, tbl_messaggio.data, tbl_messaggio.data_visione,
tbl_messaggio.data_fine, tbl_messaggio.prio, tbl_messaggio.def, tbl_allegato.id_allegato
FROM (((tbl_allegato RIGHT JOIN tbl_messaggio ON tbl_messaggio.id_messaggio = tbl_allegato.id_messaggio)
JOIN tbl_contesto ON tbl_contesto.id_contesto = tbl_messaggio.id_contesto) JOIN tbl_utente ON
tbl_utente.id_utente = tbl_messaggio.id_utente)
ORDER BY tbl_messaggio.prio;";
//invio tale query al db
$result = mysql_query ($sql, $db);
//ricavo i dati dal db
$row = mysql_fetch_array ($result);
//numero di riche contenente i dati
$num = mysql_num_rows($result);
$df = "";
$pr = "";
if ($num != 0){ //Primo if
do { //apertura primo do
echo "<table width='85%' border='1' align='center'>
<tr>
<td colspan='5'><em><strong>".$row['contesto']."</em></strong></td>
</tr>
</table>";
echo "<table width='85%' border='1' align='center'>
<td colspan='1'><div align='left'><font color='#FF0000'>".$row['stato']."</font></div></td>";
//Guardo che priorità ha
if ($row['prio'] == 0) $pr = "Bassa";
else if ($row['prio'] == 1) $pr = "Normale";
else $pr = "Alta";
echo " <td colspan='2'><div align='left'><font color='#FF0000'>".$pr."</font></div></td>";
//Guardo che cosa è
if ($row['def'] == 0) $df = "Suggerimento";
else if ($row['def'] == 1) $df = "Problema";
echo " <td colspan='2'><div align='right'><font color='#CC00FF'>".$df."</font></div></td>";
echo " </tr>
<tr>
<td width='22%' height='26'>".$row['nick']."</td>
<td width='24%'>".$row['oggetto']."</td>
<td width='19%'>".$row['data']."</td>
<td width='19%'>".$row['data_visione']."</td>
<td width='19%'>".$row['data_fine']."</td>
</tr>
<tr>
<td colspan='5'>".$row['messaggio']."</td>
</tr>";
if ($row["id_allegato"] != 0)
{ //è presente un allegato
echo "
<tr>
<td colspan='5'>Con il messaggio è presente un allegato.
Clicca
<a href='vedi_allegato.php?id_all=".$row['id_allegato']."'>qui</a>
per vedere il file
</td>
</tr>";
}
else
{ //NON è presente un allegato
}
echo "</table><br>";
} while($row = mysql_fetch_array ($result));//chiusura primo do
mysql_close ($db);
}//chiuso primo if
else {
echo "
<table width='75%' border='1' align='center'>
<tr>
<td><div align='center'>Non vi sono problemi al momento.<br>
Clicca qui sotto per tornare alla User Page iniziale</div>
</td>
</tr>
<tr>
<td><div align='center'><a href='blankpage.php'>Pagini Vuota</a></div></td>
</tr>
</table>";
}
?></p>
</body>
</html>
//-----------------------------------------------------------------------------------
che tramite un collegamento ipertestuale mi rimanda alla pagina per modificare il messaggio, oppure mi manda alla pagina per vedere l'allegato.
Prendiamo in considerazione il secondo link che mi manda alla pagina che contiene il codice seguente:
//-----------------------------------------------------------------------------------
<?php
include ("dbconfig.php");
// connessione e selezione del database
//mysql_connect('localhost', 'root', 'ser37sf')
$db = mysql_connect($db_host, $db_user, $db_password)
or die('Connessione non riuscita: ' . mysql_error());
if(!mysql_select_db('gestore', $db))
die('Selezione database fallita!');
// query per recuperare il file
$query = 'SELECT * FROM tbl_allegato WHERE id_allegato = '.$_GET['id_all'];
$risultato = mysql_query($query) or die('Query non valida: ' . mysql_error());
$tmp = mysql_fetch_array($risultato);
// invio una intestazione contenente il tipo MIME
header('Content-Type: '.$tmp['tipo_allegato']);
echo $tmp["allegato"];
// invio il contenuto del file
//echo $tmp['dati_file'];
?>
//-----------------------------------------------------------------------------------
ora se lo lancio così, l'immagine mi compare come un quadrato con dentro una x, se invece provo a formattare il documento, inserendo tabelle o altro, l'immagine non è più immagine ma una serie di caratteri sensa senso e logica..
Qualcuno di voi, mi sa spiegare il perchè?
E come risolvere..
Sto impazzendo..
Grazie per le dritte e per l'aiuto e soprattutto per il tempo che mi dedicate