- Home
- Categorie
- Coding e Sistemistica
- PHP
- Problema cambio password su sito progettato da un altro
-
@Samyorn said:
[HTML]<input type="file" name="file">[/HTML]
mancava anche nell'altroCiao Samyorn,
accidenti, ora lo visualizza, solo che il risultato sono due errori:Warning: ftp_login() [function.ftp-login]: Login incorrect. in /home/progetto/public_html/upload/image.php on line 10
Connessione fallitaWarning: ftp_put() [function.ftp-put]: Please login with USER and PASS in /home/progetto/public_html/upload/image.php on line 12
Upload immagine fallito!Questa è la linea 10:
$ftpConn = ftp_connect("$ftpServer"); $ftpResult = ftp_login($ftpConn, $ftpUser, $ftpPass); ftp_pasv($ftpConn, true); if ((!$ftpConn) || (!$ftpResult)) echo "Connessione fallita<br><br>"; else echo "Connessione avvenuta<br><br>";
Questa è la linea 12:
$ftpUpload = ftp_put($ftpConn, $finalFile, $sourceFile, FTP_BINARY);
Che dici? può essere per quella stringa di connessione che ho rimosso su suggerimento di maximus?
Ciao
Stefano
-
Dai messaggi di errore che ti da sembra che fallisca il login.....
hai settato user e psw ftp, si?
-
Ciao Samyorn,
sono passate un paio di settimane da quando ho aperto il thread ed a memoria dico che di si. Quando aprii il thread mi sembrava di avere fatto tutto a regola.
Quali files dovrebbero essere coinvolti in questa richiesta?
Parliamo dello stasso image.php?
Nella riga 6 del medesimo file mi dice:$ftpServer = "ftp.NASCOSTO.it"; $ftpUser = "NASCOSTO"; $ftpPass = "http://www.NASCOSTO.it:2082/frontend/x3/filemanager/index.html?dirselect=webroot&domainselect=NASCOSTO.it&dir=%2Fhome%2Fprogetto%2Fpublic_html";
E' li che se la va a prendere... giusto?
Ciao
Stefano
-
si, credo sia proprio quello, mi era sfuggito
Ti consiglio pero' di inserirli comunque in un file diverso e poi fai un include ad inizio pagina così come per db_conn.php
e ricontrolla i parametri di connessione ftp
-
@Samyorn said:
si, credo sia proprio quello, mi era sfuggito
Ti consiglio pero' di inserirli comunque in un file diverso e poi fai un include ad inizio pagina così come per db_conn.php
e ricontrolla i parametri di connessione ftpCiao Samyorn,
ho cambiato la lunga stringa di password con la password stessa. Per il momento mi interessa rendere il sito nuovamente funzionante. In un secondo momento mi occuperò della sicurezza.In effetti ora l'upload restituisce un messaggio di conferma upload. Purtroppo i files caricati non risultano disponibili come invece risultavano prima. Insomma, non c'è traccia.
Inoltre, se li cerco nell'area Delete images del pannello admin, mi restituisce un errore di sintassi:
Parse error: syntax error, unexpected T_IF in /home/progetto/public_html/upload/delete.php on line 9
Eppure la riga 9 mi sembra a posto. Tu che dici?
$file if (ftp_delete($ftpConn, $finalFile)) {
Ciao
Stefano
$file if (ftp_delete($ftpConn, $finalFile)) {
-
Intanto ti ci ho dato una sistemata, c'erano alcune parti di codice commentate
[php]<?php
require_once('../includes/db_conn.php');
require_once('../includes/verify.php');
?>
<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head> NASCOSTO PER NON FARE PUBBLICITA
</head>
<body> Menù amministrazione
<hr><?php if ($HTTP_POST_VARS['submit'])
{
// variables
$ftpServer = "ftp..it";
$ftpUser = "********";
$ftpPass = "******";
$finalDir = '/public_html/images/';
$finalFile = $finalDir . $_FILES['file']['name'];
$sourceFile = $_FILES['file']['tmp_name'];
// Connect and echo result
$ftpConn = ftp_connect($ftpServer);
$ftpResult = ftp_login($ftpConn, $ftpUser, $ftpPass);
ftp_pasv($ftpConn, true);
if ((!$ftpConn) || (!$ftpResult))
echo "Connessione fallita<br><br>";
else
echo "Connessione avvenuta<br><br>";// upload the file
$ftpUpload = ftp_put($ftpConn, $finalFile, $sourceFile, FTP_BINARY);
// check upload status
if (!$ftpUpload)
echo "Upload immagine fallito!";
else
{ echo "Upload immagine avvenuto con successo!";
$nome_file_temporaneo = $_FILES['file_inviato']['tmp_name'];
$nome_file = 'http://www.progettocasare.it/images/' . $_FILES['file']['name'];
$tipo_file = $_FILES['file_inviato']['type'];
// leggo il contenuto del file #
$dati_file = file_get_contents($nome_file_temporaneo);
// preparo il contenuto del file per la query #
$dati_file = addslashes($dati_file);
// query per inserire il file nel DB
$query = "INSERT INTO images SET ImageURL = '$nome_file', tipo_file = '$tipo_file', dati_file = '$dati_file'";
$sql= mysql_query($query) OR die('Query non valida: ' . mysql_error());
}
// close the FTP stream
ftp_close($ftpConn); }
?>
<form action="<?=$PHP_SELF?>" method="POST" enctype="multipart/form-data">
<p> Selezionare l'immagine per l'upload:<br>
<input type="file" name="file"><br>
<input type="submit" name="submit" value="submit">
</form></p>
</body>
</html>[/php]
ovviamente sostituisci tutti gli * che ho messo con il dovuto e vedi se funziona
-
Ciao Samyorn,
comincio già a sentirmi pesantemente in debito
Se ti occorre grafica, non esitare a chiedere.Ho sostituito il file image.php con il codice che mi hai dato e, caricando un'immagine, mi restituisce questo messaggio:
"Upload immagine avvenuto con successo!Query non valida: Unknown column 'tipo_file' in 'field list'"
Senza mostrare alcun pulsante per rientrare.Allo stesso tempo, pare tutto fuori allineamento il file delete.php:
<?php require_once('../includes/db_conn.php');?> <?php require_once('../includes/verify.php');?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head><title>NASCOSTO</title> </head> <body> <a href="http://www.NASCOSTO.it/admin/">Menù amministrazione</a> <hr><?php if ($HTTP_POST_VARS['submit']) { // variables $ftpServer = "ftp.NASCOSTO.it"; $ftpUser = "NASCOSTO"; $ftpPass = "NASCOSTO"; $finalDir = '/public_html/images/'; $ImageURL = $_POST['ImageURL']; $file = substr($ImageURL,36); $finalFile = $finalDir . $file; // Connect and echo result $ftpConn = ftp_connect("$ftpServer"); $ftpResult = ftp_login($ftpConn, $ftpUser, $ftpPass); ftp_pasv($ftpConn, true); if ((!$ftpConn) || (!$ftpResult)) echo "Connessione fallita<br><br>"; else echo "Connessione avvenuta<br><br>"; // try to delete $file if (ftp_delete($ftpConn, $finalFile)) { // the ftp function echo "$finalFile deleted successful\n"; } else { echo "could not delete $finalFile\n"; } // close the FTP stream ftp_close($ftpConn); $query = "DELETE FROM images WHERE ImageURL = '$ImageURL'"; # tipo_file = '$tipo_file', # dati_file = '$dati_file'"; # mysql_query($query) OR die('Query non valida: ' . mysql_error()); } ?> <form action="<?=$PHP_SELF?>" method="post"> <p> Immagine: <select name=""><?php //Recupero tutte gli autori disponibili $strSQL = ""; $result = mysql_query($strSQL); //Popolo la select while($row = mysql_fetch_array($result)){ $ImageID = $row['ID']; $ImageURL = $row['ImageURL']; //$strCognome = $row['strCognome']; //Mantengo l'autore originario echo "<option value=\"$ImageURL\">$ImageURL</option>\n"; } //Libero la memoria mysql_free_result($result); ?> </select><br> <input type="" name="submit" value="Cancella"> </form> </p> </body> </html>
Purtroppo, come specificato, sono Esperto si, in grafica. E questo codice mi da grattacapi già solo per l'allineamento.
Una cosa che non farò più, lo giuro, è usare Opera per editare i files sul server
Ciao
Stefano
-
@Stefano Virgilli said:
Ciao Samyorn,
comincio già a sentirmi pesantemente in debito
Se ti occorre grafica, non esitare a chiedere.
Sei già sdebitato tranquillo
Mi son bastati i tuoi tutorial che ho usato in passato@Stefano Virgilli said:
Ho sostituito il file image.php con il codice che mi hai dato e, caricando un'immagine, mi restituisce questo messaggio:
"Upload immagine avvenuto con successo!Query non valida: Unknown column 'tipo_file' in 'field list'"
Senza mostrare alcun pulsante per rientrare.
Ma il file lo upload*a *(ndt :D)?
uhm...ovviamente mettere mano in un codice progettato da un altro è cosa ardua, io li ho decommentati dato che mi sembravano parte del codice. Se è giusto per come te l'ho postato dovresti verificare che sul Db esista questo campo tipo_file, oppure, altra prova che puoi fare, è provare a togliere il pezzo che ho decommentato, ovvero togli dalla riga questo pezzo:, tipo_file = '$tipo_file', dati_file = '$dati_file'
senza dimenticare la virgola
@Stefano Virgilli said:
Allo stesso tempo, pare tutto fuori allineamento il file delete.php:
sistemato
[php]<?php
require_once('../includes/db_conn.php');
require_once('../includes/verify.php');
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html>
<head><title>NASCOSTO</title> </head>
<body>
<a href="http://www.NASCOSTO.it/admin/">Menù amministrazione</a>
<hr>
<?php
if ($HTTP_POST_VARS['submit'])
{
$ftpServer = "ftp.NASCOSTO.it";
$ftpUser = "NASCOSTO";
$ftpPass = "NASCOSTO";
$finalDir = '/public_html/images/';
$ImageURL = $_POST['ImageURL'];
$file = substr($ImageURL,36);
$finalFile = $finalDir . $file;
$ftpConn = ftp_connect("$ftpServer");
$ftpResult = ftp_login($ftpConn, $ftpUser, $ftpPass);
ftp_pasv($ftpConn, true);
if ((!$ftpConn) || (!$ftpResult))
echo "Connessione fallita<br><br>";
else
echo "Connessione avvenuta<br><br>";
if (ftp_delete($ftpConn, $finalFile))
{
echo "$finalFile deleted successful\n";
}
else
{
echo "could not delete $finalFile\n";
}
ftp_close($ftpConn);
$query = "DELETE FROM images WHERE ImageURL = '$ImageURL', tipo_file = '$tipo_file', dati_file = '$dati_file'";
$sql=mysql_query($query) OR die('Query non valida: ' . mysql_error());
}
?>
<form action="<?=$PHP_SELF?>" method="post">
<p>Immagine: <select name="">
<?php
$strSQL = "";
$result = mysql_query($strSQL);
while($row = mysql_fetch_array($result))
{
$ImageID = $row['ID'];
$ImageURL = $row['ImageURL'];
$strCognome = $row['strCognome'];
echo "<option value="$ImageURL">$ImageURL</option>\n";
}
mysql_free_result($result);
?>
</select><br>
<input type="submit" name="submit" value="Cancella">
</form></p>
</body>
</html>
[/php]
@Stefano Virgilli said:
Una cosa che non farò più, lo giuro, è usare Opera per editare i files sul server
-
Grande Samyorn!
Ho seguito i passaggi alla lettera e direi che ci siamo quasi...
La prima bella notizia è che eliminando quella stringa, ora il modulo upload funziona (prima diceva di caricare le immagini, anche se poi non lo faceva).Il file delete.php ora apre la pagina, solo che nella lista, non trova files da cancellare...
[ATTACH]1330[/ATTACH]
Ciao
Stefano
-
great
allora non erano commentati a caso
cancella lo stesso pezzo anche in delete.php e dovrebbe funzionare
-
Potrebbe essere questo il colpevole?
$file = substr($ImageURL,36);
Ciao
Stefano
-
Ops... abbiamo scritto in simultanea.
Ho cancellato la stringa che hai consigliato... il risultato purtroppo non cambia.C'è una novità, che forse è un indizio. Se premo il tasto Cancella a vuoto, mi da un errore:
Warning: ftp_delete() [function.ftp-delete]: /public_html/images/: Is a directory in /home/NASCOSTO/public_html/upload/delete.php on line 27
could not delete /public_html/images/Ed ecco la riga 27:
if (ftp_delete($ftpConn, $finalFile))
Che ne dici?
Ciao
Stefano
-
stavo riguardando
non ti esce nulla perchè manca la query di selezione
prova a sostituire questo$strSQL = "";
con questo:
$strSQL = "SELECT * FROM images";
se ti da ancora errori poi controlliamo quel warning
PS: quella modifica ch hai fatto rimane, dato che ti funziona senza tipo_file e dati_file non ha senso metterlo nel delete.php
-
Fantastico!
Non sai come invidio la tua competenzaOra mostra la lista delle immagini. Premendo il pulsante Cancella, resta l'errore:
Warning: ftp_delete() [function.ftp-delete]: /public_html/images/: Is a directory in /home/progetto/public_html/upload/delete.php on line 27
could not delete /public_html/images/Sono sbalordito... fino a che aprissi i php con Opera funzionava che era una meraviglia.
Come può essere che per esempio quest'ultima modifica funzionasse prima?
A parte scombinare l'allineamento non ho cancellato nulla :bho:
Ciao
Stefano
-
@Stefano Virgilli said:
Fantastico!
Non sai come invidio la tua competenza
INcompetenza semmai
Sono solo conoscenze base questeMancava un altro pezzo
modifica il <select> così:
[php]<select name="ImageURL">[/php]
Spero non dia più problemi
@Stefano Virgilli said:Sono sbalordito... fino a che aprissi i php con Opera funzionava che era una meraviglia.
Come può essere che per esempio quest'ultima modifica funzionasse prima?
A parte scombinare l'allineamento non ho cancellato nulla :bho:
Non so darti una risposta :bho:
a parte pezzi di codice che mancano, come il name di sopra, la definizione degli <input> e l'istruzione SQL di prima c'erano anche dei commenti di riga che andando a capo venivano letti come parte del codice e quindi sfasavano un po il tutto.
Vediamo se ora funge nuovamente
-
@Samyorn said:
INcompetenza semmai
Sono solo conoscenze base questeehehe... così mi fai sentire ancora più somaro!
Grazie mille!
Ora funziona tutto alla grande.
Sono a debito.
Se ti serve una mano in grafica, fai un fischio!
Ciao
Stefano
-
@Stefano Virgilli said:
ehehe... così mi fai sentire ancora più somaro!
Ops....:D
ok, competenza nelle conoscenze base allora@Stefano Virgilli said:
Se ti serve una mano in grafica...
non saprei da dove partiredi nulla comunque
è stato un piacere.
Ciao