aiuto upload e displaying

GiuliaG

Nuovo Utente
26 Ago 2008
8
0
0
Salve a tutti.
Premetto che sono una programmatrice alle prime armi :byebye:
Ho creato un piccolo cms (e relativo db Mysql) per gestire news (data, titolo, testo, ecc.).
Per implementare anche un allegato linkato all'articolo:

1) Ho creato il form d'inserimento:

<?
include ("config.inc.php");
include ("top_foot.inc.php");

//intestazione
top();
?>

<form method="post" action="save.php" enctype="multipart/form-data">
Titolo:<br />
<input type="text" size="40" name="titolo" />
<br /><br />
Data:<br />

<select name="giorno">
<?
for ($i=1; $i<=31; $i++)
echo "<option value=\"$i\">$i</option>";
?>
</select>

<select name="mese">
<option value="1">Gennaio</option>
<option value="2">Febbraio</option>
<option value="3">Marzo</option>
<option value="4">Aprile</option>
<option value="5">Maggio</option>
<option value="6">Giugno</option>
<option value="7">Luglio</option>
<option value="8">Agosto</option>
<option value="9">Settembre</option>
<option value="10">Ottobre</option>
<option value="11">Novembre</option>
<option value="12">Dicembre</option>
</select>

<select name="anno">
<option value="2001">2001</option>
<option value="2002">2002</option>
<option value="2003">2003</option>
<option value="2004">2004</option>
<option value="2005">2005</option>
<option value="2003">2006</option>
<option value="2004">2007</option>
<option value="2004">2008</option>
</select>
<br /><br />

Tematica:<br />
<input type="text" size="40" name="tematica" />
<br /><br />
Autore:<br />
<input type="text" size="40" name="autore" />
<br /><br />
E-mail:<br />
<input type="text" size="40" name="mail" />
<br /><br />
Abstract:<br />
<textarea cols="60" rows="40" name="abstract"></textarea><br />
<br />
Testo:<br />

<br />
<textarea id="textarea1" name="testo" style="width:560px;height:200px;">

</textarea><br />
<br />
<br /><br />
Link:<br />
<input type="text" size="40" name="link" />
<br /><br />
Allegato
<label>Caricare il documento allegato</label><br />
<input type="file" name="allegato">
<input type="hidden" name="MAX_FILE_SIZE" value="200000">
<br />
<br />
Password:<br />
<input type="password" size="40" name="pass" />
<br /><br />
<input type="submit" value="Invia2" />
</form>

<?
// chiusura pagina
foot();
?>



-------------------------------------

2) ho creato la pagina save.asp che gestisce l'upload:

<?
include("top_foot.inc.php");
include("config.inc.php");
top();

if ($pass != $pass): echo "Password errata";

$tematica=$_REQUEST['tematica'];
$titolo=$_REQUEST['titolo'];
$autore=$_REQUEST['autore'];
$mail=$_REQUEST['mail'];
$abstract=$_REQUEST['abstract'];
$testo=$_REQUEST['testo'];
$pass=$_REQUEST['pass'];
$giorno=$_REQUEST['giorno'];
$mese=$_REQUEST['mese'];

$link=$_REQUEST['link'];
$allegato=$_REQUEST['allegato'];
$lingua=$_REQUEST['lingua'];


elseif (trim($titolo) == "" OR trim($testo) == ""):
echo "I campi Titolo e Testo devono essere riempiti!";

else :
$tematica = addslashes(stripslashes($tematica));
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$mail = addslashes(stripslashes($mail));
$abstract = addslashes(stripslashes($abstract));

$titolo = str_replace("<", "&lt;", $titolo);
$titolo = str_replace(">", "&gt;", $titolo);
$autore = str_replace("<", "&lt;", $autore);
$autore = str_replace(">", "&gt;", $autore);


$data = mktime("0", "0", "0", $mese, $giorno, $anno);

$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");

mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

$query = "INSERT INTO news (data, tematica, autore, mail, titolo, abstract, testo, link) VALUES ('$data', '$tematica', '$autore', '$mail', '$titolo', '$abstract', '$testo', '$link')";

do {
if (is_uploaded_file($_FILES['allegato']['tmp_name'])) {
// Controllo che il file non superi i 18 KB
if ($_FILES['allegato']['size'] > 300000) {
$msg = "<p>Il file non deve superare i 300 KB!!</p>";
break;
}
// Verifico che sul sul server non esista già un file con lo stesso nome
// In alternativa potrei dare io un nome che sia funzione della data e dell'ora
if (file_exists('../upload/'.$_FILES['allegato']['name'])) {
$msg = "<p>File già esistente sul server. Rinominarlo e riprovare.</p>";
break;
}
// Sposto il file nella cartella da me desiderata
if (!move_uploaded_file($_FILES['allegato']['tmp_name'], '../upload/'.$_FILES['allegato']['name'])) {
$msg = "<p>Errore nel caricamento dell'immagine!!</p>";
break;
}
}
} while (false);
echo $msg;


if (mysql_query($query, $db))
echo "L'articolo è stato inserito correttamente";
else
echo "Errore durante l'inserimento";


mysql_close($db);
endif; // chiude la verifica della presenza dei dati
foot();
?>


------------------------------------

3) e poi nell'html della pagina web dove deve essere visualizzato il dettaglio della new, ho inserito il seguente codice php :

<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td valign="top" width="757" height="100%" background="../images/7_back.jpg" style="background-repeat:no-repeat ">
<!-- INIZIO DETTAGLIO NEWS -->
<? include("../adminnews/include/top_foot.inc.php");
include_once("../adminnews/include/config.inc.php");
top();
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$id=$_GET['id'];
$query = "SELECT data,tematica,titolo,autore,mail,testo,link,allegato FROM news WHERE id='$id'";
$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);
$data = date("j/n/y", $row[data]);
$allegato_dir = "../adminnews/upload/";
?>
<div style="margin-left:35px; margin-top:25px " class="titoli">News ed Eventi</div>
<div style="margin-left:35px; margin-top:20px" class="data">
<?php echo "$data";?><br />
</div>
<div style="margin-left:35px; margin-top:20px" class="data">

<?php echo "$row[tematica]";?>

</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="dark">
<h2>
<?php echo "$row[titolo]";?>
</h2>
</div>
<div style="margin-left:35px; margin-top:5px; margin-right:30px " class="green_bold">
di:
<?php
if ($row[mail] != "")
echo "<a href=mailto:$row[mail]> $row[autore]</a><br />";
else
echo "<b>$row[autore]</b>";
?>
</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="main">
<?php echo "$row[testo]";?>
<br />
<br />
<?php echo "<a href=$row[allegato]>Allegato</a><img src=../images/marcer.gif>";?>
<br />
<a href="inno-upload_file.php?galleryId={$galleryId}"
<br />
<br />
<?php echo "<a href=$row[link]>Visita il sito</a><img src=../images/marcer.gif>";?>
</div>
<div style="margin-left:35px; margin-top:30px " class="dark">
<?php echo "<a href=all.php class=dark>Visualizza tutti gli articoli</a><img src=../images/marcer.gif>";
mysql_close($db);
foot();
?>
</div>
<!-- FINE DETTAGLIO NEWS -->
</td>
</tr>
</table>

---------------------------------------------------

Purtroppo l'inserimento di tutti i dati va buon fine, ma del file uploaddato nessuna traccia, nè nella directory sul server ../upload/
nè tanto meno come file allegato nella pagina web :dipser:

Qualcuno saprebbe dirmi dove sbaglio? :confused:

grazie ;)

Giulia
 

GiuliaG

Nuovo Utente
26 Ago 2008
8
0
0
...scusate

Ciao Giulia, benvenuta!

Immagino sia un problema di digtazione, ma il file si chiama save.asp ???

grazie Lukeonweb,
è un errore di digitazione: il file si chiama save.php.

Inoltre mi sono accorta che nel codice (quello inserito nella pagina html) che ho postato prima c'è un copia e incolla di troppo.. Lo riporto senza. Grazie!!!!!!!




<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td valign="top" width="757" height="100%" background="../images/7_back.jpg" style="background-repeat:no-repeat ">
<!-- INIZIO DETTAGLIO NEWS -->
<? include("../adminnews/include/top_foot.inc.php");
include_once("../adminnews/include/config.inc.php");
top();
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$id=$_GET['id'];
$query = "SELECT data,tematica,titolo,autore,mail,testo,link,allegato FROM news WHERE id='$id'";
$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);
$data = date("j/n/y", $row[data]);
$allegato_dir = "../adminnews/upload/";
?>
<div style="margin-left:35px; margin-top:25px " class="titoli">News ed Eventi</div>
<div style="margin-left:35px; margin-top:20px" class="data">
<?php echo "$data";?><br />
</div>
<div style="margin-left:35px; margin-top:20px" class="data">

<?php echo "$row[tematica]";?>

</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="dark">
<h2>
<?php echo "$row[titolo]";?>
</h2>
</div>
<div style="margin-left:35px; margin-top:5px; margin-right:30px " class="green_bold">
di:
<?php
if ($row[mail] != "")
echo "<a href=mailto:$row[mail]> $row[autore]</a><br />";
else
echo "<b>$row[autore]</b>";
?>
</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="main">
<?php echo "$row[testo]";?>
<br />
<br />
<?php echo "<a href=$row[allegato]>Allegato</a><img src=../images/marcer.gif>";?>
<br />
<br />
<?php echo "<a href=$row[link]>Visita il sito</a><img src=../images/marcer.gif>";?>
</div>
<div style="margin-left:35px; margin-top:30px " class="dark">
<?php echo "<a href=all.php class=dark>Visualizza tutti gli articoli</a><img src=../images/marcer.gif>";
mysql_close($db);
foot();
?>
</div>
<!-- FINE DETTAGLIO NEWS -->

</td>
</tr>
</table>
 

GiuliaG

Nuovo Utente
26 Ago 2008
8
0
0
nessun messaggio di errore...

Questa variabile contiene il parent-path:

$allegato_dir = "../adminnews/upload/";

ovvero i ".." prima del percorso.

Potrebbero causare problemi.

Attiva la visualizzazione dell'errore 500 sul tuo browser:

http://www.aspcenter.net/articoli/47.asp

e fammi sapere esattamente che errore ricevi.

Ciao!


...compilo tutti i campi del form d'inserimento (titolo, testo, link, ecc.) incluso l'upload dell'allegato (ad es. un .pdf) e dopo il submit non ricevo nessun messaggio di errore dal server.

Ma quando vado ad aprire la pagina web della news, sono stati caricati correttamente tutti i dati tranne il file allegato. :crying:

Controllando anche via ftp la directory dove l'upload avrebbe dovuto trasferire il file allegato, anche questa è vuota :dipser:
 

lukeonweb

Utente Attivo
5 Mar 2003
5.175
13
38
46
Napoli
www.lucaruggiero.it
In locale non ho il PHP installato e faccio fatica a fare un test veloce.

Io in genere - sia con PHP che con ASP - faccio cosa:

1. creo la news flaggandola come "non attiva" (uso un Tinyint (1) - 1 attivo, 0 non attivo)

2. faccio l'upload associandolo all'ID della notizia, in separata sede

3. attivo la notizia.

Prova a testare questo script:

http://www.appuntiphp.com/blog-23/tutorial-php/upload-di-file-in-php.html

Fammi sapere se ti funziona correttamente.
 

GiuliaG

Nuovo Utente
26 Ago 2008
8
0
0
passo avanti!

In locale non ho il PHP installato e faccio fatica a fare un test veloce.

Io in genere - sia con PHP che con ASP - faccio cosa:

1. creo la news flaggandola come "non attiva" (uso un Tinyint (1) - 1 attivo, 0 non attivo)

2. faccio l'upload associandolo all'ID della notizia, in separata sede

3. attivo la notizia.

Prova a testare questo script:

http://www.appuntiphp.com/blog-23/tutorial-php/upload-di-file-in-php.html

Fammi sapere se ti funziona correttamente.


Grazie Luke :p

Nel mio file save.php ho sostituito il codice dell'upload dell'allegato con quello del tuo script (complimeti per il tuo sito! è già nei miei preferiti).

Ora il file dell'allegato parte e finalmente compare nella directory upload/ sul server :beer:
(...:confused: unica stranezza, sembra che arrivi a destinazione solo molto tempo dopo l'invio).

Invece non so ancora che cosa fare sulla pagina di visualizzazione della notizia, dove non c'è traccia dell'allegato (il link alla voce "Allegato" riporta la stessa path della pagina di visualizzazione: http://ecc..../view.php?id=27)
Forse il codice nell'html (e quello dello script in save.php)
non fa eseguire il display del file allegato, perchè non gli è stato associato bene l'ID della notizia? Grazie
G.
 

lukeonweb

Utente Attivo
5 Mar 2003
5.175
13
38
46
Napoli
www.lucaruggiero.it
Ciao Giulia, grazie per l'aggiunta ai preferiti... sono contento che qualcuno, oltre me, apprezzi quel sito :D

Scherzi apparte, il problema probabilmente deriva dal fatto che il file ha un nome e tu tenti di visualizzarlo con un altro... come?
 

GiuliaG

Nuovo Utente
26 Ago 2008
8
0
0
Ciao Giulia, grazie per l'aggiunta ai preferiti... sono contento che qualcuno, oltre me, apprezzi quel sito :D

Scherzi apparte, il problema probabilmente deriva dal fatto che il file ha un nome e tu tenti di visualizzarlo con un altro... come?

Ciao Luke, come ti dicevo, ho già risolto il problema dell'upload inserendo il codice del tuo script.



<?
include("top_foot.inc.php");
include("config.inc.php");
top();

if ($pass != $pass): echo "Password errata";

$tematica=$_REQUEST['tematica'];
$titolo=$_REQUEST['titolo'];
$autore=$_REQUEST['autore'];
$mail=$_REQUEST['mail'];
$abstract=$_REQUEST['abstract'];
$testo=$_REQUEST['testo'];
$pass=$_REQUEST['pass'];
$giorno=$_REQUEST['giorno'];
$mese=$_REQUEST['mese'];

$link=$_REQUEST['link'];
$allegato=$_REQUEST['allegato'];
$lingua=$_REQUEST['lingua'];


elseif (trim($titolo) == "" OR trim($testo) == ""):
echo "I campi Titolo e Testo devono essere riempiti!";

else :
$tematica = addslashes(stripslashes($tematica));
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$mail = addslashes(stripslashes($mail));
$abstract = addslashes(stripslashes($abstract));

$titolo = str_replace("<", "&lt;", $titolo);
$titolo = str_replace(">", "&gt;", $titolo);
$autore = str_replace("<", "&lt;", $autore);
$autore = str_replace(">", "&gt;", $autore);


$data = mktime("0", "0", "0", $mese, $giorno, $anno);

$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");

mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

$query = "INSERT INTO news (data, tematica, autore, mail, titolo, abstract, testo, link) VALUES ('$data', '$tematica', '$autore', '$mail', '$titolo', '$abstract', '$testo', '$link')";


if ($_POST["upload"] != "")
{
$percorso = "upload/";
$fdc_temp = $_FILES["fdc"]["tmp_name"];
$fdc_name = $_FILES["fdc"]["name"];
if (move_uploaded_file($fdc_temp, $percorso . $fdc_name))
{
echo "Upoload eseguito con successo";
}
else
{
echo "Si è verificato un errore in fase di upoload";
}
}



if (mysql_query($query, $db))
echo "L'articolo è stato inserito correttamente";
else
echo "Errore durante l'inserimento";


mysql_close($db);
endif; // chiude la verifica della presenza dei dati
foot();
?>




Ora vorrei che il file caricato apparisse come allegato della notizia.
Se puoi aiutarmi, dovresti indicarmi la riga di comando da inserire in corrispondenza del link dell'allegato (leggi sotto) nel seguente codice della pagina che gia' prevede il caricamento di tutti gli altri dati della notizia. In pratica come associo l'id della notizia al file caricato? Grazie!!

<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td valign="top" width="757" height="100%" background="../images/7_back.jpg" style="background-repeat:no-repeat ">
<!-- INIZIO DETTAGLIO NEWS -->
<? include("../adminnews/include/top_foot.inc.php");
include_once("../adminnews/include/config.inc.php");
top();
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$id=$_GET['id'];
$query = "SELECT data,tematica,titolo,autore,mail,testo,link FROM news WHERE id='$id'";
$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);
$data = date("j/n/y", $row[data]);

?>
<div style="margin-left:35px; margin-top:25px " class="titoli">News ed Eventi</div>
<div style="margin-left:35px; margin-top:20px" class="data">
<?php echo "$data";?><br />
</div>
<div style="margin-left:35px; margin-top:20px" class="data">

<?php echo "$row[tematica]";?>

</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="dark">
<h2>
<?php echo "$row[titolo]";?>
</h2>
</div>
<div style="margin-left:35px; margin-top:5px; margin-right:30px " class="green_bold">
di:
<?php
if ($row[mail] != "")
echo "<a href=mailto:$row[mail]> $row[autore]</a><br />";
else
echo "<b>$row[autore]</b>";
?>
</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="main">
<?php echo "$row[testo]";?>
<br />
<br />

<br />
<?php echo "<a href=QUALE CODICE VA INSERITO QUI?????????>Apri allegato</a><img src=../images/marcer.gif>";?>
<br />
<br />
<?php echo "<a href=$row[link]>Visita il sito</a><img src=../images/marcer.gif>";?>
</div>
<div style="margin-left:35px; margin-top:30px " class="dark">
<?php echo "<a href=all.php class=dark>Visualizza tutti gli articoli</a><img src=../images/marcer.gif>";
mysql_close($db);
foot();
?>
</div>
<!-- FINE DETTAGLIO NEWS -->

</td>
</tr>
</table>
 

GiuliaG

Nuovo Utente
26 Ago 2008
8
0
0
ancora un problema

Grazie Luke :p

Nel mio file save.php ho sostituito il codice dell'upload dell'allegato con quello del tuo script (complimeti per il tuo sito! è già nei miei preferiti).

Ora il file dell'allegato parte e finalmente compare nella directory upload/ sul server :beer:
(...:confused: unica stranezza, sembra che arrivi a destinazione solo molto tempo dopo l'invio).

Invece non so ancora che cosa fare sulla pagina di visualizzazione della notizia, dove non c'è traccia dell'allegato (il link alla voce "Allegato" riporta la stessa path della pagina di visualizzazione: http://ecc..../view.php?id=27)
Forse il codice nell'html (e quello dello script in save.php)
non fa eseguire il display del file allegato, perchè non gli è stato associato bene l'ID della notizia? Grazie
G.


ciao Luke, non so se hai letto tutto il mio prcedente post:
ti dicevo che ho risolto l'upload del file allegato ma ora vorrei che il file caricato apparisse sulla pagina web come allegato della notizia.
Se puoi aiutarmi, sai dirmi qual è la riga di comando da inserire in corrispondenza del link dell'allegato? (leggi sotto nella pagina view.php: non so se eventualmente occorra anche aggiungere qualcosa nel tuo script di upload.php). In pratica come associo l'id della notizia al file caricato? Grazie!!

Di seguito ti riporto il contenuto del form d'inserimento (insert.php)
del file che gestisce l'upload (upload.php)
e quello della pagina web dove deve apparire tutto (view.php)

Grazie :tifoso:



<!-- Codice file insert.php -->


<?
include ("config.inc.php");
include ("top_foot.inc.php");

//intestazione
top();
?>
<form method="post" action="upload.php" enctype="multipart/form-data">
Titolo:<br />
<input type="text" size="40" name="titolo" />
<br /><br />
Data:<br />

<select name="giorno">
<?
for ($i=1; $i<=31; $i++)
echo "<option value=\"$i\">$i</option>";
?>
</select>

<select name="mese">
<option value="1">Gennaio</option>
<option value="2">Febbraio</option>
<option value="3">Marzo</option>
<option value="4">Aprile</option>
<option value="5">Maggio</option>
<option value="6">Giugno</option>
<option value="7">Luglio</option>
<option value="8">Agosto</option>
<option value="9">Settembre</option>
<option value="10">Ottobre</option>
<option value="11">Novembre</option>
<option value="12">Dicembre</option>
</select>

<select name="anno">
<option value="2001">2001</option>
<option value="2002">2002</option>
<option value="2003">2003</option>
<option value="2004">2004</option>
<option value="2005">2005</option>
<option value="2003">2006</option>
<option value="2004">2007</option>
<option value="2004">2008</option>
</select>
<br /><br />

Tematica:<br />
<input type="text" size="40" name="tematica" />
<br /><br />
Autore:<br />
<input type="text" size="40" name="autore" />
<br /><br />
E-mail:<br />
<input type="text" size="40" name="mail" />
<br /><br />
Abstract:<br />
<textarea cols="60" rows="40" name="abstract"></textarea><br />
<br />
Testo:<br />
<textarea id="textarea1" name="testo" style="width:560px;height:200px;">
</textarea><br />
<br />
<br /><br />
Link:<br />
<input type="text" size="40" name="link" />
<br /><br />
Allegato
<label>Caricare il documento allegato</label><br />
<input type="file" name="fdc" size="50">

<br />
<br />
Password:<br />
<input type="password" size="40" name="pass" />
<br /><br />
<input type="submit" name="upload" value="Upload">
</form>




<?
// chiusura pagina
foot();
?>




<!-- Codice file upload.php -->


<?
include("top_foot.inc.php");
include("config.inc.php");
top();

if ($pass != $pass): echo "Password errata";

$tematica=$_REQUEST['tematica'];
$titolo=$_REQUEST['titolo'];
$autore=$_REQUEST['autore'];
$mail=$_REQUEST['mail'];
$abstract=$_REQUEST['abstract'];
$testo=$_REQUEST['testo'];
$pass=$_REQUEST['pass'];
$giorno=$_REQUEST['giorno'];
$mese=$_REQUEST['mese'];

$link=$_REQUEST['link'];
$allegato=$_REQUEST['allegato'];
$lingua=$_REQUEST['lingua'];


elseif (trim($titolo) == "" OR trim($testo) == ""):
echo "I campi Titolo e Testo devono essere riempiti!";

else :
$tematica = addslashes(stripslashes($tematica));
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$mail = addslashes(stripslashes($mail));
$abstract = addslashes(stripslashes($abstract));

$titolo = str_replace("<", "&lt;", $titolo);
$titolo = str_replace(">", "&gt;", $titolo);
$autore = str_replace("<", "&lt;", $autore);
$autore = str_replace(">", "&gt;", $autore);


$data = mktime("0", "0", "0", $mese, $giorno, $anno);

$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");

mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

$query = "INSERT INTO news (data, tematica, autore, mail, titolo, abstract, testo, link) VALUES ('$data', '$tematica', '$autore', '$mail', '$titolo', '$abstract', '$testo', '$link')";


if ($_POST["upload"] != "")
{
$percorso = "upload/";
$fdc_temp = $_FILES["fdc"]["tmp_name"];
$fdc_name = $_FILES["fdc"]["name"];
if (move_uploaded_file($fdc_temp, $percorso . $fdc_name))
{
echo "Upoload eseguito con successo";
}
else
{
echo "Si è verificato un errore in fase di upoload";
}
}



if (mysql_query($query, $db))
echo "L'articolo è stato inserito correttamente";
else
echo "Errore durante l'inserimento";


mysql_close($db);
endif; // chiude la verifica della presenza dei dati
foot();
?>


<!-- Codice file view.php -->


<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td valign="top" width="757" height="100%" background="../images/7_back.jpg" style="background-repeat:no-repeat ">
<!-- INIZIO DETTAGLIO NEWS -->
<? include("../adminnews/include/top_foot.inc.php");
include_once("../adminnews/include/config.inc.php");
top();
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$id=$_GET['id'];
$query = "SELECT data,tematica,titolo,autore,mail,testo,link FROM news WHERE id='$id'";
$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);
$data = date("j/n/y", $row[data]);

?>
<div style="margin-left:35px; margin-top:25px " class="titoli">News ed Eventi</div>
<div style="margin-left:35px; margin-top:20px" class="data">
<?php echo "$data";?><br />
</div>
<div style="margin-left:35px; margin-top:20px" class="data">

<?php echo "$row[tematica]";?>

</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="dark">
<h2>
<?php echo "$row[titolo]";?>
</h2>
</div>
<div style="margin-left:35px; margin-top:5px; margin-right:30px " class="green_bold">
di:
<?php
if ($row[mail] != "")
echo "<a href=mailto:$row[mail]> $row[autore]</a><br />";
else
echo "<b>$row[autore]</b>";
?>
</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="main">
<?php echo "$row[testo]";?>
<br />
<br />

<br />
<?php echo "<a href=QUALE CODICE VA INSERITO QUI?????????>Apri allegato</a><img src=../images/marcer.gif>";?>
<br />
<br />
<?php echo "<a href=$row[link]>Visita il sito</a><img src=../images/marcer.gif>";?>
</div>
<div style="margin-left:35px; margin-top:30px " class="dark">
<?php echo "<a href=all.php class=dark>Visualizza tutti gli articoli</a><img src=../images/marcer.gif>";
mysql_close($db);
foot();
?>
</div>
<!-- FINE DETTAGLIO NEWS -->

</td>
</tr>
</table>
 

Eliox

Utente Attivo
25 Feb 2005
4.390
3
0
Nel database esiste una campo che ospita il nome dell'allegato? In quel caso potresti utilizzare qualcosa come:
PHP:
<?php echo "a href=\"../upload/".$row[allegato]."\">Apri allegato</a><img src=../images/marcer.gif>";?>
 

GiuliaG

Nuovo Utente
26 Ago 2008
8
0
0
perche' non mi funziona???....

Nel database esiste una campo che ospita il nome dell'allegato? In quel caso potresti utilizzare qualcosa come:
PHP:
<?php echo "a href=\"../upload/".$row[allegato]."\">Apri allegato</a><img src=../images/marcer.gif>";?>


grazie ma purtroppo pur seguendo alla lettera (creato il nome campo del file allegato (fdc_name) e aggiunto codsice (vedi sotto punto 1) 2) e 3)) ma non funziona lo stesso: ora come link dell'allegato appare solo la directory dove è stato caricato il file tramite upload, ma del nome file nessuna traccia:crying: inoltre se lo clicco mi dice pure:

Forbidden

You don't have permission to access /adminnews/include/upload/ on this server.

1) file upload.php



<?
include("top_foot.inc.php");
include("config.inc.php");
top();

if ($pass != $pass): echo "Password errata";

$tematica=$_REQUEST['tematica'];
$titolo=$_REQUEST['titolo'];
$autore=$_REQUEST['autore'];
$mail=$_REQUEST['mail'];
$abstract=$_REQUEST['abstract'];
$testo=$_REQUEST['testo'];
$pass=$_REQUEST['pass'];
$giorno=$_REQUEST['giorno'];
$mese=$_REQUEST['mese'];
$link=$_REQUEST['link'];
$allegato=$_REQUEST['allegato'];
$lingua=$_REQUEST['lingua'];

$fdc_name=$_REQUEST['fdc_name'];


elseif (trim($titolo) == "" OR trim($testo) == ""):
echo "I campi Titolo e Testo devono essere riempiti!";

else :
$tematica = addslashes(stripslashes($tematica));
$titolo = addslashes(stripslashes($titolo));
$autore = addslashes(stripslashes($autore));
$mail = addslashes(stripslashes($mail));
$abstract = addslashes(stripslashes($abstract));

$titolo = str_replace("<", "&lt;", $titolo);
$titolo = str_replace(">", "&gt;", $titolo);
$autore = str_replace("<", "&lt;", $autore);
$autore = str_replace(">", "&gt;", $autore);


$data = mktime("0", "0", "0", $mese, $giorno, $anno);

$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");

mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");

$query = "INSERT INTO news (data, tematica, autore, mail, titolo, abstract, testo, link, fdc_name) VALUES ('$data', '$tematica', '$autore', '$mail', '$titolo', '$abstract', '$testo', '$link', '$fdc_name')";


if ($_POST["upload"] != "")
{
$percorso = "upload/";
$fdc_temp = $_FILES["fdc"]["tmp_name"];
$fdc_name = $_FILES["fdc"]["name"];
if (move_uploaded_file($fdc_temp, $percorso . $fdc_name))
{
echo "Upoload eseguito con successo";
}
else
{
echo "Si è verificato un errore in fase di upoload";
}
}



if (mysql_query($query, $db))
echo "L'articolo è stato inserito correttamente";
else
echo "Errore durante l'inserimento";


mysql_close($db);
endif; // chiude la verifica della presenza dei dati
foot();
?>




--------------------------------------

2) file insert.php
--------------------------------------




<?
include ("config.inc.php");
include ("top_foot.inc.php");

//intestazione
top();
?>
<form method="post" action="upload.php" enctype="multipart/form-data">
Titolo:<br />
<input type="text" size="40" name="titolo" />
<br /><br />
Data:<br />

<select name="giorno">
<?
for ($i=1; $i<=31; $i++)
echo "<option value=\"$i\">$i</option>";
?>
</select>

<select name="mese">
<option value="1">Gennaio</option>
<option value="2">Febbraio</option>
<option value="3">Marzo</option>
<option value="4">Aprile</option>
<option value="5">Maggio</option>
<option value="6">Giugno</option>
<option value="7">Luglio</option>
<option value="8">Agosto</option>
<option value="9">Settembre</option>
<option value="10">Ottobre</option>
<option value="11">Novembre</option>
<option value="12">Dicembre</option>
</select>

<select name="anno">
<option value="2001">2001</option>
<option value="2002">2002</option>
<option value="2003">2003</option>
<option value="2004">2004</option>
<option value="2005">2005</option>
<option value="2003">2006</option>
<option value="2004">2007</option>
<option value="2004">2008</option>
</select>
<br /><br />

Tematica:<br />
<input type="text" size="40" name="tematica" />
<br /><br />
Autore:<br />
<input type="text" size="40" name="autore" />
<br /><br />
E-mail:<br />
<input type="text" size="40" name="mail" />
<br /><br />
Abstract:<br />
<textarea cols="60" rows="40" name="abstract"></textarea><br />
<br />
Testo:<br />

<br />
<script type="text/javascript">
WYSIWYG.attach('textarea1');
</script>
<textarea id="textarea1" name="testo" style="width:560px;height:200px;">

</textarea><br />
<br />
<br /><br />
Link:<br />
<input type="text" size="40" name="link" />
<br /><br />
Allegato
<label>Caricare il documento allegato</label><br />
<input type="file" name="fdc_name" size="50">

<br />
<br />
Password:<br />
<input type="password" size="40" name="pass" />
<br /><br />
<input type="submit" name="upload" value="Upload">
</form>




<?
// chiusura pagina
foot();
?>


---------------------------------
3) file view.php
-----------------------------------



<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>pagina dettaglio news</title>
<link href="style.css" rel="stylesheet" type="text/css">
</head>
<body topmargin="0" bottommargin="0" rightmargin="0" leftmargin="0">

<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td valign="top" width="757" height="100%" background="../images/7_back.jpg" style="background-repeat:no-repeat ">
<!-- INIZIO DETTAGLIO NEWS -->
<? include("../adminnews/include/top_foot.inc.php");
include_once("../adminnews/include/config.inc.php");
top();
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$id=$_GET['id'];
$query = "SELECT data,tematica,titolo,autore,mail,testo,link,allegato FROM news WHERE id='$id'";
$result = mysql_query($query, $db);
$row = mysql_fetch_array($result);
$data = date("j/n/y", $row[data]);
?>
<div style="margin-left:35px; margin-top:25px " class="titoli">News ed Eventi</div>
<div style="margin-left:35px; margin-top:20px" class="data">
<?php echo "$data";?><br />
</div>
<div style="margin-left:35px; margin-top:20px" class="data">

<?php echo "$row[tematica]";?>

</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="dark">
<h2>
<?php echo "$row[titolo]";?>
</h2>
</div>
<div style="margin-left:35px; margin-top:5px; margin-right:30px " class="green_bold">
di:
<?php
if ($row[mail] != "")
echo "<a href=mailto:$row[mail]> $row[autore]</a><br />";
else
echo "<b>$row[autore]</b>";
?>
</div>
<div style="margin-left:35px; margin-top:12px; margin-right:30px " class="main">
<?php echo "$row[testo]";?>
<br />
<br />

<br />
<?php echo "<a href=../adminnews/include/upload/$row[fdc_name]>Apri allegato</a><img src=../images/marcer.gif>";?>

<br />
<br />
<?php echo "<a href=$row[link]>Visita il sito</a><img src=../images/marcer.gif>";?>
</div>
<!-- FINE DETTAGLIO NEWS -->
</td>
</tr>
</table>

</body>
</html>
 
Discussioni simili
Autore Titolo Forum Risposte Data
S PHP: Aiuto con upload immagini che si auto tuotano PHP 24
J Aiuto per un sitema di upload per un progetto PHP 0
A Aiuto per upload asp e/o html Classic ASP 10
M aiuto per realizzare area upload download sito Database 1
M aiuto upload testo e immagine Classic ASP 1
N Upload di foto sul sito...AIUTO!!! Classic ASP 2
E Aiuto per query PHP 8
R Aiuto ripristino sito web Presentati al Forum 0
L Aiuto con DataGridView Visual Basic 1
F Aiuto! cambio immagine di sfondo al cambio pagina HTML e CSS 2
I aiuto urgente per thunderbird Posta Elettronica 0
I aiuto per outlook Posta Elettronica 0
D aiuto funzioni javascript Javascript 1
T aiuto per trasformare un quiz fatto in JS in un quiz in JQUERY jQuery 0
D Aiuto CSS in ELEMENTOR - Cambiare un testo CMS (Content Management System) 0
M Fullcalendar in Codeigniter, un aiuto per la chiamata $ajax ? jQuery 0
K Aiuto con file audio in html HTML e CSS 1
G Script notifiche dekstop aiuto Javascript 0
P Aiuto per rendere un Bot Telegram Privato PHP 1
M Un aiuto da chi ha apple Mac e Software 0
P Richiesta di aiuto Presentati al Forum 1
A Aiuto per pagina php PHP 0
M Questa pagina non carica correttamente Google Maps: aiuto!! HTML e CSS 1
I Aiuto php Dependent Lookup PHP 0
R Aiuto con le query MS Access 2
M AIUTO ESERCIZIO JAVA Javascript 1
G Aiuto con htaccess e rewriterule PHP 0
T cercasi aiuto per file d1 (open-edge db) Database 0
M Aiuto con inserimento immagini WordPress 6
D aiuto schermata photoshop Photoshop 0
L Aiuto per programma web php/mySQL PHP 2
A Aiuto php colore diverso PHP 10
L Aiuto creazione menu mancante WordPress 0
C Aiuto compiuto scuola PHP/MySQL PHP 2
G Insert into select - Aiuto MySQL 0
I Aiuto bash linux Programmazione 1
F Aiuto java script Javascript 2
R Cerco aiuto Offerte e Richieste di Lavoro e/o Collaborazione 7
I Aiuto query MySQL 8
G Aiuto HTML, collegamento con un bottone a una <div> di un' altra pagna HTML e CSS 5
motleyrulez Aiuto con un ciclo PHP 0
R Aiuto sito html Offerte e Richieste di Lavoro e/o Collaborazione 3
claudio_lorenzo [Javascript] aiuto su jquery per calcolo altezze dom Javascript 1
G Mi dite come faccio? Aiuto photoshop ? Photoshop 1
C prestashop paragamento contrassegno aiuto modulo E-Commerce 0
Michelebozzo [PHP] Rimuovere pubblicazione nome pagina ... aiuto! PHP 7
Caldus richiesta aiuto Mac e Software 0
R [Javascript] Aiuto su questo script Javascript 2
Z Gestionale in Php/mysql: Quanto farsi pagare? Aiuto! Discussioni Varie 0
Giacomo92 [HTML] AIUTO!! Regular Expression :( Offerte e Richieste di Lavoro e/o Collaborazione 15

Discussioni simili