echo e <img src

  • Creatore Discussione Creatore Discussione lanik
  • Data di inizio Data di inizio

lanik

Nuovo Utente
9 Lug 2008
14
0
0
:confused:
Ciao sapreste dirmi come dopo che questo script effettua l'upload dell'immagine correttamente visualizzare l'immagine
Questi sono i miei script

INDEX.PHP
<?
@include 'upload.php';
if (isset($_FILES['file']))
{
upload();
}
echo "
<h3>Upload</h3>
<form enctype=\"multipart/form-data\"
action=\"".$_SERVER['PHP_SELF']."\" method=\"post\">
<input type=\"hidden\" name=\"MAX_FILE_SIZE\"
value=\"300000\" />
<input type=\"file\" name=\"file\" size=\"40\" />
<input type=\"submit\" value=\"Invia\" />
</form>
";
?>


CONFIG.PHP
<?
$host = 'localhost';
$username = 'root';
$db = 'img';
$conn = @mysql_connect($host,$username) or die (mysql_error());
$sel = @mysql_select_db($db) or die (mysql_error());
?>

UPLOAD.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 immagini (nome, size, type, immagine) VALUES ('$nome','$size','$type','$immagine')";
$result = @mysql_query ($sql) or die (mysql_error());
$query = "SELECT *
FROM immagini";
$result = @mysql_query($query)or die (mysql_error());

$id_img = mysql_insert_id();
echo "<img src=\'show.php?id=".$id_img.'\"><br />";
return true;
}
}
?>

SHOW.PHP

<?
if (isset($_GET['id_img']))
{
$id = @intval($_GET['id_:img']);
@include 'config.php';
$sql = "SELECT id,type,immagine FROM immagini WHERE id='$id_img'";
$result = @mysql_query($sql) or die(mysql_error ());
$row = @mysql_fetch_array($result);
$id_img = $row['id'];
$type = $row['type'];
$img = $row['immagine'];
if (!$id_img)
{
echo "Id sconosciuto";
}else{
@header ("Content-type: ".$type);
echo $img;
}
}else{
echo "Impossibile soddisfare la richiesta.";
}
?>

graziieeee:confused::confused::confused:
 
niente da fare ho provato la tua stringa ma l'immagine non la visualizza:confused::confused::confused:
come posso risolvere il problema???
 
scusa le risposte a senghiozzi (vale quanto da risp prec)

tu in sow.php
leggi con get il valore (a parte i :)

PHP:
$id = @intval($_GET['id_:img']);

poi nella select utilizzi $id_img'

PHP:
$sql = "SELECT id,type,immagine FROM immagini WHERE id='$id_img'";

non so se dico una caz2ata, ma non dovresti

PHP:
$sql = "SELECT id,type,immagine FROM immagini WHERE id='$id'";
:confused:
 
grazie per la tua correzione su id:_img in id_img ma per il resto non credo tu abbia ragione visto che il parametro che gli passo è id_img.
comunque non va ancora nonostante la correzione
a:confused::confused:iutooo
 
come detto non sono un esperto, però non riesco a vedere di dove prendi $id_img, se c'è di gia a che ti serve il $_GET?
per tagliare la testa al toro (come suol dirsi)

fai subito sotto
$id = @intval($_GET['id_img']);

echo "il valore di id_img è= ".$id_img;
 
scusami nella funzione upload che ho postato ce nelle ultime righe ?id_img dove c'e l'img src (ultima riga) quello non è il parametro che io passo alla funzione show.php contenente l'id dell'ultima immagine caricata
 
a questo punto io direi che la riga echo "<img src=\'show.php?id=".$id_img.'\"><br />"; è inutile e mi basta spostare la riga $id_img = mysql_insert_id(); nella pagina show.php per ottenere l'ultimo id presente nella tabella del mio database e cosi dovrebbe visualizzare l'immagine

Che dici???????????
comunque grazie per l'interessamento:byebye::byebye:
 
risolto,,,posto nel caso serva a qualcuno

<?
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 immagini (nome, size, type, immagine) VALUES ('$nome','$size','$type','$immagine')";
$result = @mysql_query ($sql) or die (mysql_error());
$id_img= mysql_insert_id();
@include 'config.php';
$sql = "SELECT id, nome FROM immagini WHERE id='$id_img'";
$result = @mysql_query($sql) or die (mysql_error ());
while ($row = @mysql_fetch_array($result))
{
$id = $row['id'];
$nome = $row['nome'];
echo "<img src=\"show.php?id=".$id."\"><br />";
}
return true;
}
}
?>

gli altri script sono postati su quelli funzionano correttamente
ciao al prox problema:byebye::byebye::byebye::byebye::byebye:
 

Discussioni simili