errore nell estrazione foto

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
ciao ragazzi, ho creato un modulo che invia le foto al db e li visualizza dopo l'inserimento(una per volta),funziona tutto ora vorrei creare uno script che le estrae e le stampa in una pagina con affianco un link "ELIMINA foto", come posso procedere, grazie

questo e il codice gallery penso si potrebbe modificare
solo che cosi come non stampa le foto

PHP:
<?php require("conf.php"); ?>
<?php
$ImageDir = "/images/thumbs/";
$ImageThumb = $ImageDir . "/thumbs/";
?>

<html>
<head>
<title>Welcome to our Photo Gallery</title>
</head>
<body>
<p align="center">Click on any image to see it full sized.</p>
<table align="center">
  <tr>
    <td align="center">Image</td>
    <td align="center">Caption</td>
    <td align="center">Uploaded By</td>
    <td align="center">Date Uploaded</td>
  </tr>

<?php
//get the thumbs
$getpic = mysql_query("SELECT * FROM images")
  or die(mysql_error());
while ($rows = mysql_fetch_array($getpic)) {
  extract($rows);
  echo "<tr>\n";
  echo "<td><a href=\"".$ImageDir . $image_id . ".jpg\">";
  echo "<img src=\"" . $ImageThumb . $image_id . ".jpg\" border=\"0\">";
  echo "</a></td>\n";
  echo "<td>" . $image_caption . "</td>\n";
  echo "<td>" . $image_username . "</td>\n";
  echo "<td>" . $image_date . "</td>\n";
  echo "</tr>\n";
}

?>

</table>
</body>
</html>
 

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
ciao borgo italia, io intendevo " stampare" nel senso di farmele vedere tutte in una pagina tipo galleria, con affianco la scritta elimina foto

scusami se non sono stata molto chiara e grazie per l'aiuto
 

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
ciao borgo spero che ci sei, ho trovato questo script
PHP:
<?php
//Based on (http://www.phpbuilder.com/columns/bealers20000904.php3) "File uploads made easy" by Darren Beale
//changes by Zubin for MMkit.com - [email protected]

// global variables
$my_max_file_size 	= "307200"; # in bytes
$image_max_width	= "400";
$image_max_height	= "500";


$registered_types = array(
    "application/x-gzip-compressed"     => ".tar.gz, .tgz",
    "application/x-zip-compressed"         => ".zip",
    "application/x-tar"            => ".tar",
    "text/plain"                => ".html, .php, .txt, .inc",
    "image/bmp"                 => ".bmp, .ico",
    "image/gif"                 => ".gif",
    "image/pjpeg"                => ".jpg, .jpeg",
    "image/jpeg"                => ".jpg, .jpeg",
    "application/x-shockwave-flash"     => ".swf",
    "application/msword"            => ".doc",
    "application/vnd.ms-excel"        => ".xls",
    "application/octet-stream"        => ".exe, .fla"
);  # these are only a few examples, you can find many more!

$allowed_types = array("image/gif","image/pjpeg","image/jpeg","application/x-shockwave-flash");
//end global variables

function dbconnect() {
	mysql_connect("localhost", "root", "");
	@mysql_select_db("db_immagini") or die ("Unable to select database");
}

function delete($id) {
	mysql_query("delete from mmkit_images WHERE id=$id");
	Header("Location: upload.php");
}

function mod($id) {

global $PHP_SELF, $my_max_file_size, $image_max_width, $image_max_height;
echo"<html><head><title>Uploading Files</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"></head>
<body bgcolor=\"#EAEAEA\">";
	echo "\n<form ENCTYPE=\"multipart/form-data\"  action=\"" . $PHP_SELF . "\" method=\"post\">";
	echo "\n<INPUT TYPE=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"" . $my_max_file_size . "\">";
	echo "\n<P><CENTER><h2><b>Modifica immagine id=$id</b></center></h2>";
	echo "\n<br><b>File</b>: <INPUT NAME=\"thefile\" TYPE=\"file\" SIZE=\"35\"><br>";
	echo "\n<BR>dimensione massima: " . ($my_max_file_size / 1024) . "KB - ".$image_max_width."x".$image_max_height." pixel";
	echo "<input type=\"hidden\" name=\"id\" value=\"$id\"><input type=\"hidden\" name=\"task\" value=\"change\">";
	echo "\n<br><input type=\"submit\" Value=\"Invia\">";
	echo "\n</form>";
	

echo"</body></html>";
} # END form

function form($error=false) {

global $PHP_SELF, $my_max_file_size, $image_max_width, $image_max_height;
echo"<html><head><title>Uploading Files</title>
<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\"></head>
<body bgcolor=\"#EAEAEA\">";
	if ($error) print $error . "<br><br>";
	echo "\n<form ENCTYPE=\"multipart/form-data\"  action=\"" . $PHP_SELF . "\" method=\"post\">";
	echo "\n<INPUT TYPE=\"hidden\" name=\"MAX_FILE_SIZE\" value=\"" . $my_max_file_size . "\">";
	echo "\n<INPUT TYPE=\"hidden\" name=\"task\" value=\"upload\">";
	echo "\n<P><CENTER><h2><b>Upload Files</b></center></h2>";
	echo "\n<br><b>File</b>: <INPUT NAME=\"thefile\" TYPE=\"file\" SIZE=\"35\"><br>";
	echo "\n<BR>dimensione massima: " . ($my_max_file_size / 1024) . "KB - ".$image_max_width."x".$image_max_height." pixel";
	echo "\n<br><input type=\"submit\" Value=\"Invia\">";
	echo "\n</form>";
	list_files();

echo"</body></html>";
} # END form


function validate_upload($thefile) {

global $my_max_file_size, $image_max_width, $image_max_height, $allowed_types, $thefile_type, $registered_types, $g_height, $g_width, $thefile_name;
	
	$start_error = "\n<b>Si sono verificati i seguenti errori:</b>\n<ul>";
	
	if ($thefile == "none") {
			$error .= "\n<li>Nessun file selezionato</li>";
	} else { 		
		if (!in_array($thefile_type, $allowed_types)) {
			$error .= "\n<li>Il file non appartiene a queste tipologie:
						<br>\n<ul>";
			while ($type = current($allowed_types)) {
				$error .= "\n<li>" . $registered_types[$type] . " (" . $type . ")</li>";
				next($allowed_types);
			}
			$error .= "\n</ul>";
		}
	
		if (ereg("image", $thefile_type) && in_array($thefile_type, $allowed_types)) {
		
			$size = GetImageSize($thefile);
			list($foo,$width,$bar,$height) = explode("\"",$size[3]);
			$g_width=$width;

			if ($width > $image_max_width) {
				$error .= "\n<li>La larghezza dell'immagine non deve superare " . $image_max_width . " pixel</li>";
			}
			$g_height=$height;
			if ($height > $image_max_height) {
				$error .= "\n<li>L'altezza dell'immagine non deve superare " . $image_max_height . " pixels</li>";
			}
		}
		if (ereg("flash", $thefile_type) && in_array($thefile_type, $allowed_types)) {
			$size = GetImageSize($thefile);
			list($foo,$width,$bar,$height) = explode("\"",$size[3]);
			$g_width=$width;
			$g_height=$height;
			if (($width > $image_max_width) || ($height > $image_max_height)) {
				if ($width >= $height) {
					$g_width=$image_max_width;
					$g_height=intval($height*$image_max_width/$width);
				}
				else {
					$g_height=$image_max_height;
					$g_width=intval($width*$image_max_height/$height);
				}
			}
		}
		
		if ($error) {
			$error = $start_error . $error . "\n</ul>";
			return $error;
		} else {
			return false;
		}
	}
} # END validate_upload

function list_files() {

	$result=mysql_query("select id, filename, filetype, filewidth, fileheight from mmkit_images");
	if (mysql_num_rows($result) > 0) {
		echo"<table width=\"98%\" border=\"1\" cellspacing=\"1\" cellpadding=\"1\" bordercolor=\"#000000\"><tr bgcolor=\"#999999\"><td>Files presenti nel database:</td></tr>";
  
  		while(list($id, $filename, $filetype, $width, $height)=mysql_fetch_row($result)) {
			echo"<tr bgcolor=\"#cccccc\"><td><a href=\"upload.php?task=delete&id=$id\">Delete</a> - <a href=\"upload.php?task=mod&id=$id\">Modify</a></td></tr>";
			if (ereg("flash", $filetype)) {
				echo"<tr bgcolor=\"#FFFFFF\"><td><object classid=\"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000\" codebase=\"http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0\" width=\"$width\" height=\"$height\"><param name=movie value=\"getdata.php?id=$id\"><param name=quality value=high><embed src=\"getdata.php?id=$id\" quality=high pluginspage=\"http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash\" type=\"application/x-shockwave-flash\" width=\"$width\" height=\"$height\"></embed></object></td>
  </tr>";
			} else {
				echo"<tr bgcolor=\"#FFFFFF\"><td><img src=\"getdata.php?id=$id\" width=\"$width\" height=\"$height\"></td>
  </tr>";
			}
		}
		echo"</table>";
	}
	else echo"<br>Il database &egrave vuoto.";
}//end list_files

function change($thefile, $id) {

global $thefile_name, $thefile_type, $thefile_size, $g_width, $g_height;
	
	$error = validate_upload($thefile);
	if ($error) {
		form($error);
	} else { 
		 $fp=@fopen($thefile, "r");
		 if ($fp) {
			 $data = addslashes(fread($fp, filesize($thefile)));
			 $result=MYSQL_QUERY("UPDATE mmkit_images SET bin_data='$data', filename='$thefile_name', filesize='$thefile_size', filetype='$thefile_type', filewidth='$g_width', fileheight='$g_height' WHERE id=$id");
			 fclose($fp);
			 if (!$result) { echo mysql_errno(). ": ".mysql_error(). "<br>"; exit();}
			 else Header("Location: upload.php");
		 } else {
			 echo"Il file selezionato non &egrave; valido, probabilmente &egrave; vuoto.<br><a href=\"javascript:history.back()\">Clicca qui</a> per tornare indietro.";
			 fclose($fp);
		 }
	}
} # END upload

function upload($thefile) {

global $thefile_name, $thefile_type, $thefile_size, $g_width, $g_height;
	
	$error = validate_upload($thefile);
	if ($error) {
		form($error);
	} else { 
		 $fp=@fopen($thefile, "r");
		 if ($fp) {
			 $data = addslashes(fread($fp, filesize($thefile)));
			 $result=MYSQL_QUERY("INSERT INTO mmkit_images VALUES ('NULL', '$data','$thefile_name','$thefile_size','$thefile_type', '$g_width', '$g_height')");
			 fclose($fp);
			 if (!$result) { echo mysql_errno(). ": ".mysql_error(). "<br>"; exit();}
			 else Header("Location: upload.php");
		 } else {
			 echo"Il file selezionato non &egrave; valido, probabilmente &egrave; vuoto.<br><a href=\"javascript:history.back()\">Clicca qui</a> per tornare indietro.";
			 fclose($fp);
		 }
	}
} # END upload

dbconnect();

switch($task) {
	
	case 'upload':
		upload($thefile);
		break;
		
	case 'delete':
		delete($id);
		break;
		
	case 'mod':
		mod($id);
		break;
		
	case 'change':
		change($thefile, $id);
		break;

	default:
		form($error);
}

?>

quando apro la pagina upload.php
mi esce questo errore
Notice: Undefined variable: task in c:\programmi\easyphp1-8\www\upload-mmkit\upload.php on line 205

Notice: Undefined variable: error in c:\programmi\easyphp1-8\www\upload-mmkit\upload.php on line 224



le foto me le invia nel db tutto bene. pero per visualizzarle nella pagina devo tornare indietro con la pagina e aggiornare internet explorer e poi le visualizza

mi potete aiutare ,grazie

e' proprio il file che dicevo io queto c'è anche la funzione elimina foto quando visualizza le foto
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
ti premetto che non sono un grande esperto, ma da quanto posti mi sembra di capire che ti da errorre sulla variabile $task (variabile non definita) che dovrebbe dirigerti lo switch, essendo indefinita prende il case di default e li non trova la variabile $error, quindi dovresti vedere dove dovrebbe generarsi la variabile $task (da dove viene? e cosa gli attribuisce un valore?)
non riesco a vederla in nessuna altra parte dello script, ma forse ho gli occhi foderati di prosciutto
 

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
ciao ho risolto , adesso funziona, solo che non so' che nome dare alla cartella, perche dovrebbero finire in una cartella del sito se non sbaglio giusto? sto cercando e cercando ma non l'ho capito

ho provato con image, foto, upload_foto , ma niente non vanno in nessuna cartella e nemmeno in uno spazio qualsiasi del sito. Bho
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
ciao ho risolto , adesso funziona,...
in locale ti funziona?
come ti ho detteo non sono un espertissimo, ma mi è venuto un piccolo dubbio.
prima di rispondermi dovresti dirmi:
nella tabella del db mmkit_images il campo bin_data di che tipo è? per caso blob?
 

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
si e blob, e in locale nemmeno le aggiunge in una cartella


comunque volevo ringraziarti per l'aiuto anche se non sei bravo come dici tu , mi sei di grande aiuto, grazie:beer:

PHP:
CREATE TABLE mmkit_images (
   id int(11) NOT NULL auto_increment,
   bin_data longblob,
   filename varchar(255),
   filesize varchar(50),
   filetype varchar(50),
   filewidth varchar(50),
   fileheight varchar(50),
   PRIMARY KEY (id)
);
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
è come pensavo (almeno sembrerebbe)
non ti serve una cartella in quanto l'immagine viene salvata nella tabella del db
da che ne so io ci sono due sistemi per salvare le immagini
1. nome del db e immagine in una cartella
2. immagine dentro il db (mi sembra il tuo caso)

ognuno ha i suoi pregi e difetti, nel secondo è importante prevedere quante sono le immagini in modo da non far diventare troppo grande il db, però le immagini non possono essere scaricate (salva immagine con nome)
 

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
infatti, pero a me mi sarebbe stato utile salvarle in una cartella, anche perche una volta visualizzate venivano anche tolte, ed il db non diventava pesante, chissa se si puo modificare il codice
 

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
infatti , per quello mi sarebbe convenuto salvarle in una cartella anche per non appesantire il db, ma penso che si possa modificare il codice (credo)

ma non e compito mio , non sono cosi brava
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
per salvare le foto in una cartella ti convine utilizzare l'articolo che ti avevo indicato (con qualche piccola modifica io utilizzo quasi sempre quello)
penso che sia difficile modificare lo script che hai postato, lavora in modo completamente diverso.
l'unico difetto che ha è che sulla piattaforma in cui hai il sito, siano attive le librerie di php GD
 

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
si le librerie sono attive

PHP:
gd
GD Support  enabled  
GD Version  2.0 or higher  
FreeType Support  enabled  
FreeType Linkage  with freetype  
T1Lib Support  enabled  
GIF Read Support  enabled  
GIF Create Support  enabled  
JPG Support  enabled  
PNG Support  enabled  
WBMP Support  enabled
 

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
ciao borgo , non conosci nessuno che abbia uno script come quello che cerco io, cioe che invia le foto in una cartella e le visualizza tutte insieme con il link o tasto vicino per eliminarle
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
al momento non conosco uno script come chiedi tu, quello che ti ho indicato salva in una cartella, però per quello che vuoi fare devi adattarlo.
se trovo qualcosa te lo faccio sapere
 

marikaflash

Nuovo Utente
23 Gen 2009
13
0
0
ciao borgo, volevo dirti che ci sono riuscita, sono riuscita a metterci anche una nick e pass nel database , cosi per inviare le foto bisogna avere i dati giusti....:beer:
 
Discussioni simili
Autore Titolo Forum Risposte Data
P Errore nell'indirizzo degli elementi HTML e CSS 2
C [MySQL] errore nell'importazione tabella con file csv MySQL 0
M [PHP] Errore nell' assegnazione della variabile $this->id su una funzione PHP 1
M Errore nell'Upload di un file PHP 0
blacksbugs Errore nell'invio query PHP 44
Sevenjeak [C / Eclipse] errore nell'output della console Programmazione 0
D errore 1064 nell'importare txt MySQL 1
M Errore nell'aggiornamento news PHP 4
B Errore nell'installazione PHP PHP 0
M asp: errore nell'upload di file di grandi dimensioni Classic ASP 3
A Errore nell'accesso ad un database PHP 1
K Inserimento query Errore 1366 PHP 4
F errore 1062 su campo nuovo MySQL 4
N Errore interno Access MS Access 2
R mi da errore dove inizia il while PHP 1
R Recupero di permalink di un sito che è stato eliminato per errore WordPress 5
R Yoast SEO errore semafori sempre rossi SEO e Posizionamento 0
S Visualizza l'errore di creazione in MSSQL Database 4
simgia Cordova errore quando cerco di emulare o creare la app Sviluppo app per Android 2
Jensen Errore di sintassi con DELETE PHP 3
H Errore su array associativo PHP 1
FDF182 ERRORE 1292 PHP 4
P errore 404 con javascript Javascript 2
felino Windows 7: errore 80072EFE su Windows Update Windows e Software 1
A errore http://datatables.net/tn/7 PHP 4
M Errore visualizzazione meta tag title e description SEO e Posizionamento 1
A Errore durante il salvataggio Photoshop 0
M Errore configurazione motion detection nvr Hikvision DS-7616 IP Cam e Videosorveglianza 0
voldemort [c] Errore di segmentazione (core dump creato) C/C++ 1
T SSD - errore sistema Hardware 2
R Navigare sito con cURL, mi restituisce errore PHP 0
L File CSV con app inventor da errore Sviluppo app per Android 2
A Errore visualizzazione selezione testo Photoshop 0
I Postman 400 Errore di richiesta non valida Programmazione 0
S Errore PHP - Notice: Undefined index ... PHP 14
U Campo vuoto data errore Fatal error: PHP 2
R Errore UPDATE tabella mysql PHP 1
R W10 Segnalazione di errore su terminale USB Windows e Software 0
G non riesco a capire quale sia l'errore [SQL] MySQL 2
I Errore 80040220 nella newsletter con paginazione Classic ASP 0
E Errore di lettura php in html PHP 8
A php metodo post jquery non da mai errore jQuery 4
W Errore di run-time di Microsoft VBScript error '800a0035' Impossibile trovare il file Classic ASP 0
B Errore unexpected '$variabile' (T_VARIABLE) in your code on line PHP 2
M errore dopo passaggio Php 7.2 PHP 6
S -> Errore PHP 8
S Errore "ftp_put(): Can't open that file: Permission denied" PHP 1
P Errore telecamere hdcvi dahua IP Cam e Videosorveglianza 16
L form multipla php sql,errore in inserimento MySQL 0
M Errore JavaScript per php [objeto HTMLParagraphElement] PHP 0

Discussioni simili