Aiuto per immagini via FTP

filminci

Nuovo Utente
6 Ott 2009
19
0
0
Ciao a tutti, sono nuovo del forum.

Non so se questa è la sezione giusta per chiedere aiuto ma ci provo.... purtroppo non sono programmatore per cui ho bisogno di aiuto per una questione.

Il mio problema è il seguente:

Ho delle immagini che finiscono via ftp in una cartella sul server; avrei bisogno di una pagina che mi presenta le anteprime di tutte le immagini nella cartella con la possibilità di "checkarle" (quindi selezionare quali vanno bene e quali no) e con un pulsante di invio mi dia la possibilità di spostare i file con il check in un'altra cartella e contemporaneamente cancellare quelli senza check...

Grazie
 

filminci

Nuovo Utente
6 Ott 2009
19
0
0
Ribadisco che non sono un programmatore ma cercando un pò in rete ed andando a tentativi sono riuscito a metter su questo codice...

<?php
error_reporting(E_ALL | E_STRICT);
ini_set('display_errors', 1);


$file_ary = isset($_POST['rfile']) ? $_POST['rfile'] : array();

/**
* At first visit, show the file list
*/
if (empty($file_ary))
{
//$image_path = 'path';
$image_path = dirname(__FILE__) . '/';
$dir_handle = null;

if (!($dir_handle = opendir($image_path)))
{
//trigger_error('error, path not found');
return;
}
$html = '<html><form method="post">';
$file = readdir($dir_handle);

while ($file)
{
$html .= "<img src=\"{$file}\" width=\"150\" /><br />{$file}<input type=\"checkbox\" name=\"rfile[]\" value=\"{$file}\" /><br /><br />\r\n";
$file = readdir($dir_handle);
}
closedir($dir_handle);

$html .= '<input type="submit" name="submit" value="INVIA" />';
$html .= "</form></html>";
echo $html;
}

/**
* Now, we have list..
*/

if (!empty($file_ary))
{
echo (int) empty($file_ary);
echo '<pre>';
$path = $_POST['rfile'];
for ($i=0; $i<count($path); $i++) {
if(@unlink("./".$path[$i])) {echo "Immagine cancellata ".$path[$i]; }
else{echo "Immagine non cancellata";} }
$cartella = opendir('.');
while ($file2 = readdir($cartella)) {
$file_array2[] = $file2;
}
$dir_path = './gallery';
copy($file2, $dir_path);
echo '</pre>';

}

?>


Praticamente mi esce la lista delle immagini con le anteprima, metto il check a quelle che voglio cancellare e lascio senza check quelle che voglio spostare e clicco su "INVIA": la cancellazione è ok ma non c'è spostamento in quanto mi da il seguente errore..

Warning: copy() [function.copy]: Unable to access in /percorso.../check.php on line 61

check.php è il nome del file in cui c'è il codice in alto....
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
dovrei guardare tutto lo script, ma ad una prima occhiata sembra che ci sia un errore di percorso
prova a mettere un punto in più

$dir_path = '../gallery';
 

filminci

Nuovo Utente
6 Ott 2009
19
0
0
Mi da lo stesso errore...

gallery è il nome della cartella che si trova all'interno di quella dove si trovano le foto che devono essere controllate
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
se gallery è una cartella dentro la cartella in cui ci sono le foto da controllare prova allora a togliere
$dir_path = 'gallery';

dove hai la pagina con lo script?
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
prova una cosa
1. commenta la riga
//copy($file2, $dir_path);
2.
subito prima della riga sopra inserisci questo codice
var_dump($file2);
var_dump($dir_path);

quando chiami la pagina dovrebbe restituirti es.
string(9) foto.jpg
string(22) gallery/foto.jpg
o qualcosa di simile

fammi sapere cosa ti restituisce
 

filminci

Nuovo Utente
6 Ott 2009
19
0
0
Dunque, innanzitutto ti ringrazio per il tempo che stai perdendo :fonzie:

Ho fatto così:
1) Ho applicato le modifiche;
2) Ho richiamato la pagina e selezionato una delle foto per cancellarla;
3) Ho cliccato su "INVIA";

E' uscita fuori la seguente stringa:

Immagine cancellata 1248515633-001A89BF533A-25072009077.jpgbool(false)
string(8) "/gallery"
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
mi sembra che tu avessi detto che la cancellazione era ok, era lo spostamento che non funzionava, giusto?
prova a spostare una foto togliendo il commento al copy, ma lascia i var_dump (li toglierai quando tutto[spero]funzi)
e dimmi cosa ottieni
 

filminci

Nuovo Utente
6 Ott 2009
19
0
0
Infatti la cancellazione è ok.

Cmq esce questo mettendo prima copy e poi le 2 righe

Warning: copy() [function.copy]: Unable to access in /home/consolep/public_html/images/negozio/img/check.php on line 61

bool(false)
string(8) "/gallery"

Ma non è che dipende dal fatto che cerca di copiare se stesso (cioè il file check.php)???
Come potrei fare per selezionare solo i file immagine da copiare??
 

filminci

Nuovo Utente
6 Ott 2009
19
0
0
Mhmm non so che dire, io ho semplicemente adattato un codice trovato in rete per cui non escludo che vi sia un errore....
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Ciao, non ho tempo adesso di leggere il tuo script, ma te ne faccio uno io. Se vuoi adattalo a quello che hai oppure usa semplicemente questo. Eccolo qui, testato e funzionante:
PHP:
<?php
// DEVI MODIFICARE QUESTE IMPOSTAZIONI
$gallery = 'gallery'; // percorso delle immagini
$move = 'moved_gallery'; // percorso delle immagini spostate
// FINE DELLE IMPOSTAZIONI - TI CONSIGLIO DI USARE PERCORSI ASSOLUTI

if(isset($_POST['submit']))
{
	foreach($_POST['box'] as $img)
		copy("{$gallery}/{$img}", "{$move}/{$img}");
	
	$op = opendir($gallery);
	while(false !== ($read = readdir($op)))
	{
		if($read != '.' && $read != '..' && $read != '.htaccess')
			unlink("{$gallery}/{$read}");
	}
	closedir($op);
}
?>
<html>
	<head>
		<title>Images Manager v1.0</title>
		<style type="text/css">
		body, table, td { font-family:Verdana; font-size:11px; }
		td { padding:5px; }
		a img { border:none; }
		</style>
	</head>
	<body>
		<div align="center">
			<h1>Images Manager</h1>
			<form name="delete" action="<?php echo $_SERVER['PHP_SELF']; ?>" method="POST">
				<input type="submit" name="submit" value="Invia" /> <br /> <br />
				
				<table border="1">
					<tr>
						<td><b>Anteprima</b></td>
						<td><b>Marca</b></td>
						<td><b>Anteprima</b></td>
						<td><b>Marca</b></td>
						<td><b>Anteprima</b></td>
						<td><b>Marca</b></td>
					</tr>
					<?php
					$counter = 0;
					
					$op = opendir($gallery);
					while(false !== ($read = readdir($op)))
					{
						if($read != '.' && $read != '..' && $read != '.htaccess')
						{
							if($counter %3 == 0)
								echo '</tr> <tr>';
							
							echo '<td><a href="'. $gallery .'/'. $read .'"><img src="'. $gallery .'/'. $read .'" width="320" height="240" alt="Ingrandisci" /></a></td>';
							echo '<td><input type="checkbox" name="box[]" value="'. $read .'" /></td>';
							
							$counter++;
						}
					}
					?>
				</table>
				
				<br /> <input type="submit" name="submit" value="Invia" />
			</form>
		</div>
	</body>
</html>

Devi personalizzarlo (variabili all'inizio del file). Ti consiglio di usare i percorsi assoluti, ad esempio, nel mio caso sarebbero stati:
PHP:
<?php
// DEVI MODIFICARE QUESTE IMPOSTAZIONI
$gallery = '/var/www/images/gallery'; // percorso delle immagini
$move = '/var/www/images/moved_gallery'; // percorso delle immagini spostate
// FINE DELLE IMPOSTAZIONI - TI CONSIGLIO DI USARE PERCORSI ASSOLUTI
?>
In questo modo non puoi sbagliare il percorso delle cartelle! Ti ricordo che per funzionare lo script deve avere permessi 0777. Inoltre, per sicurezza, ti consiglio di provare prima con delle immagini di esempio per vedere se è quello che fa al caso tuo. Ma se ho capito bene non dovrebbero esserci problemi di sorta.
 

filminci

Nuovo Utente
6 Ott 2009
19
0
0
Ciao, non ho tempo adesso di leggere il tuo script, ma te ne faccio uno io. Se vuoi adattalo a quello che hai oppure usa semplicemente questo....

FUNZIONA!!!!!!!!!!
:beer::beer::beer:

Grazie mille, è proprio quello che mi serviva, GRAZIE MILLE!!!

Cmq ho provato con i percorsi relativi e funziona benissimo lo stesso.

:fonzie:



EDIT: scusa se ti rompo ancora, ma non si potrebbe aggiungere un pulsante "seleziona tutti"??? ... ehm... grazie....
 
Ultima modifica:

filminci

Nuovo Utente
6 Ott 2009
19
0
0
Mhmmmm....

Visto che quelle da cancellare sono di solito poche, sarebbe meglio se il sistema di default le "checkasse" tutte (e quindi bisognerebbe deselezionare solo quelle da cancellare), oppure, al contrario, che si devono checkare solo quelle da cancellare
 

alessandro1997

Utente Attivo
6 Ott 2009
5.302
1
0
26
Roma
alessandro1997.netsons.org
Dunque, prova ad impostare una checkbox che all'evento onchange fa scattare una funzione che imposta il parametro checked di tutte le checkbox recuperate con getElementsByName a true. Così:
Codice:
function checkAll()
{
  var boxes = document.getElementsByName('box');
  for(i = 0; i <= boxes.length; i++)
  {
    var elem = document.delete.box[i];
    if(elem.checked)
      elem.checked = false;
    else
      elem.checked = true;
  }
}

Non sono sicuro che funzioni, ma non dovrebbe dare particolari problemi. Se hai problemi dì pure :)
 
Discussioni simili
Autore Titolo Forum Risposte Data
W Aiuto per menù fatto con immagini e relativo sottomenù HTML e CSS 2
N Aiuto per galleria di immagini Javascript 3
B aiuto per le immagini HTML e CSS 3
E Aiuto per query PHP 8
I aiuto urgente per thunderbird Posta Elettronica 0
I aiuto per outlook Posta Elettronica 0
T aiuto per trasformare un quiz fatto in JS in un quiz in JQUERY jQuery 0
M Fullcalendar in Codeigniter, un aiuto per la chiamata $ajax ? jQuery 0
P Aiuto per rendere un Bot Telegram Privato PHP 1
A Aiuto per pagina php PHP 0
T cercasi aiuto per file d1 (open-edge db) Database 0
L Aiuto per programma web php/mySQL PHP 2
claudio_lorenzo [Javascript] aiuto su jquery per calcolo altezze dom Javascript 1
T Aiuto per php7 e mysqli PHP 3
T mysql tutorial per importare tabelle access in mysql aiuto MySQL 2
wildcity9 aiuto per sbloccare account instagram bannati Social Media Marketing 0
A Aiuto per configurare il banner di Iubenda su un sito in html HTML e CSS 0
S [PHP] Aiuto creazione form php per completamento modello word PHP 1
Z [HTML] aiuto per visualizzazione su tablet Offerte e Richieste di Lavoro e/o Collaborazione 6
W [PHP] Un aiuto per il mio primo "Multithread" PHP 0
G Vuoi fare successo? Abbiamo bisogno di aiuto per un app! Offerte e Richieste di Lavoro e/o Collaborazione 1
K [javascript] Aiuto per programma subnetting Javascript 0
F ciao, sono ferro e ho bisogno di aiuto per problemi con la mail di alice.it Presentati al Forum 1
L [PHP] aiuto per installazione mrbs PHP 0
1 Aiuto per nuovo sito SEO e Posizionamento 4
K Server per sito di annunci: aiuto nella scelta Hosting 4
P [Javascript] Aiuto per recupero variabili da script Javascript 10
P [PHP] Aiuto per gestione file CSV PHP 24
A scambio lavoro per aiuto con android Sviluppo app per Android 0
A aiuto per un codice... PHP 1
ecosito Aiuto con la traduzione in italiano per capire come installare questo JavaScript jQuery 0
StelladelSud Cerco aiuto per una demo Offerte e Richieste di Lavoro e/o Collaborazione 3
G Piccolo aiuto per php mail PHP 2
G aiuto per semplice menu onclick HTML e CSS 6
F aiuto per funzionamento sito responsive e form contatti HTML e CSS 29
A AIUTO per impostazione doppia cifra in tabella HTML e CSS 6
G Passaggio variabili tra pagine- Aiuto per maturità 2015 PHP 3
G Passaggio variabili tra pagine- Aiuto per maturità 2015 PHP 0
A Aiuto per Flash player Flash 0
J Aiuto per localstorage con jquery/js/json Javascript 4
M Cerco aiuto per una modifica di un codice Javascript 2
A Aiuto per ordine cronologico lista file all'interno di una cartella protetta PHP 2
G Aiuto! Studente cerca aiuto per un codice PHP PHP 1
S Aiuto per 2 codifiche java Java 4
G Aiuto per creare chat stile Facebook Javascript 7
Sevenjeak Aiuto e consigli su adattamento sito per dispositivi mobile HTML e CSS 2
S aiuto per script PHP/OOP PHP 2
J Aiuto per un sitema di upload per un progetto PHP 0
K Aiuto per sito Discussioni Varie 0
D Richiesta aiuto siti per indirizzamento forum HTML e CSS 1

Discussioni simili