Buonasera,
ho realizzato una piccola area privata di gestione degli eventi di un sito web attraverso la quale l'utente può gestire l'inserimento degli eventi tra cui anche un'immagine tramite pannello di amministrazione. Tutto è a posto tranne l'upload delle immagini che non riesco ad inviare al database se non la stringa dell'immagine e a visualizzarla tramite pannello di amministrazione. Ho utilizzato il vostro tutorial (https://www.mrw.it/php/archiviare-immagini-database-usando-php-mysql_7021_4.html)
Secondo voi quale potrebbe essere il problema? Nel momento in cui provo a visualizzare l'immagine mi compare l'errore "id sconosciuto"
Credo che il problema sta proprio nell'invio dell'id che non viene riconosciuto
Ho creato una tabella unica con i seguenti campi:
1) Id_eventi
2) data_eventi
3) titolo_eventi
4)nome
5) type
6) size
7) immagine
8)testo_eventi
Vi posto un po' di codice sperando che riuscite a farmi capire l'errore.
FILE FORM
FILE LINK
FILE SHOW.PHP
FILE UPLOAD
ho realizzato una piccola area privata di gestione degli eventi di un sito web attraverso la quale l'utente può gestire l'inserimento degli eventi tra cui anche un'immagine tramite pannello di amministrazione. Tutto è a posto tranne l'upload delle immagini che non riesco ad inviare al database se non la stringa dell'immagine e a visualizzarla tramite pannello di amministrazione. Ho utilizzato il vostro tutorial (https://www.mrw.it/php/archiviare-immagini-database-usando-php-mysql_7021_4.html)
Secondo voi quale potrebbe essere il problema? Nel momento in cui provo a visualizzare l'immagine mi compare l'errore "id sconosciuto"
Credo che il problema sta proprio nell'invio dell'id che non viene riconosciuto
Ho creato una tabella unica con i seguenti campi:
1) Id_eventi
2) data_eventi
3) titolo_eventi
4)nome
5) type
6) size
7) immagine
8)testo_eventi
Vi posto un po' di codice sperando che riuscite a farmi capire l'errore.
FILE FORM
PHP:
<?php
include("connetti.php");
include("upload.php");
?>
<meta name="viewport" content="width=device-width">
</head>
<body>
<div id="contenitore">
<div id="logo"><img src="img/logo.png" class="logo"></div>
<h1>INSERIMENTO EVENTI</h1>
<form name="valori" id="modulo" action="inse-database.php" method="post">
<input type="text" name="data" placeholder="Data Evento" required><br />
<input type="text" name="titolo" placeholder="Titolo Evento" required><br />
<textarea name="desc" placeholder="Inserisci Testo" required></textarea><br />
<div class="foto">
<input name="file" type="file" id="foto">
</div>
<input type="submit" value="INVIA" id="submit">
<input type="hidden" name="MAX_FILE_SIZE" value="30000">
</form>
<div class="amministrazione"><a href="eventi-tutti.php">TUTTI GLI EVENTI VIGNALACORTE</a></div>
</div>
<?php
include("chiudi.php");
?>
FILE LINK
PHP:
<?
include("connetti.php");
$sql = "SELECT Id_eventi, nome FROM eventi ORDER BY Id_eventi DESC";
$result = @mysql_query($sql) or die (mysql_error ());
while ($row = @mysql_fetch_array($result))
{
$id = $row['Id_eventi'];
$nome = $row['nome'];
echo "<a href=\"show.php?id=".$id."\">".$nome."</a><br />";
}
?>
FILE SHOW.PHP
PHP:
<?
if (isset($_GET['id']))
{
include("connetti.php");
$sql = "SELECT Id_eventi,type,immagine FROM eventi WHERE Id_eventi='$id'";
$result = @mysql_query($sql) or die(mysql_error ());
$row = @mysql_fetch_array($result);
$id = $row['Id_eventi'];
$type = $row['type'];
$img = $row['immagine'];
if (!$id)
{
echo "Id sconosciuto";
}else{
@header ("Content-type: ".$type);
echo $img;
}
}else{
echo "Impossibile soddisfare la richiesta.";
}
?>
PHP:
<?
function upload()
{
$result = false;
$immagine = '';
$size = 0;
$type = '';
$nome = '';
$max_size = 300000;
$result = @is_uploaded_file($_FILES['file']['tmp_name']);
if (!$result)
{
echo "Impossibile eseguire l'upload.";
return false;
}else{
$size = $_FILES['file']['size'];
if ($size > $max_size)
{
echo "Il file è troppo grande.";
return false;
}
$type = $_FILES['file']['type'];
$nome = $_FILES['file']['name'];
$immagine = @file_get_contents($_FILES['file']['tmp_name']);
$immagine = addslashes ($immagine);
@include 'config.php';
$sql = "INSERT INTO eventi (nome, size, type, immagine) VALUES ('$nome','$size','$type','$immagine')";
$result = @mysql_query ($sql) or die (mysql_error());
return true;
}
}
?>