|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
|
[php] unexpected T_CONSTANT_ENCAPSED_STRING
questo codice da questo errore:
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /membri/mamo139/download.php on line 14 non riesco a capire come mai... grazie Codice:
<?
if(isset($_GET['id']))
$get_id = ''.$_GET['id'];
else exit(0);
$get_id = str_replace('/','',$get_id);
$get_id = str_replace('\','',$get_id);
$file = "database/".$get_id;
$filename = $get_id;
header('Content-type: application/zip');
header('Content-Disposition: attachment; filename="'.$filename.'"');
readfile($file);
?>
__________________
http://mamo139.altervista.org |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
|
Usa le " " (doppi apici) per la funzione header()
__________________
IT Developer at Hardware Upgrade S.r.l. self.love(this.me()); |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
|
nono nella funzione header() sono usati gli apici singoli ' '
comunque l'errore stava il mio stpidissimo errore stava in Codice:
$get_id = str_replace('\','',$get_id);
Codice:
$get_id = str_replace('\\','',$get_id);
gia che ci sono faccio un'altra domanda: questo script serve come avrete sicuramente capito a far scaricare dei file presenti nella cartella "database", dalla directory superiore... poiche la cartella "database" così come tutte le altre directory dello stesso livello sono chiuse al pubblico per sicurezza. è importante che questo script non permetta il download di nessun'altro file all'infuori di quelli contenuti nella cartella download... dite che come misura di sicurezza quei $get_id = str_replace('/','',$get_id); $get_id = str_replace('\\','',$get_id); sono sufficienti??
__________________
http://mamo139.altervista.org |
|
|
|
|
|
#4 | |
|
Senior Member
Iscritto dal: Apr 2008
Città: Varese
Messaggi: 406
|
Quote:
Comunque negli header puoi mettere anche le doppie
__________________
IT Developer at Hardware Upgrade S.r.l. self.love(this.me()); |
|
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
|
la riga dell'errore segnalata era proprio quella dell'header... segnalava quella perche essendoci stato un errore nel ' ' leggeva come contenuto degli apici fino ad header e quindi l'errore veniva segnalato li...
__________________
http://mamo139.altervista.org |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Sep 2006
Città: Bologna/Milano
Messaggi: 525
|
ecco questa è la versione finale del codice che dovrebbe essere sicura...
che dite?? è sicura?? grazie Codice:
<?
if(isset($_GET['id']))
$get_id = $_GET['id'];
else {echo'id non definito! :(';exit(0);}
$indirizzo = str_replace('\\','/',$get_id);
$indirizzo = str_replace('..','',$indirizzo);
$indirizzo = explode('/',$indirizzo);
if(
sizeof($indirizzo) != 2 ||
$indirizzo[0] != 'database'
){
echo 'Non sei autorizzato a scaricare questo file! :)';
exit(0);
}
$file = $get_id;
$filename = $get_id;
if(!is_file($file)){
echo 'Sei autorizzato a scaricare da questa directory ma il file non esiste :p';
exit(0);
}
header('Content-type: text/plain');
$content = 'Content-Disposition: attachment; filename="'.$filename.'"';
header($content);
readfile($file);
?>
__________________
http://mamo139.altervista.org |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Sep 2005
Città: Como
Messaggi: 447
|
A me, invece, da sulla riga 26, l'errore è:
"Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /web/htdocs/www.cosmomakeup.it/home/register.php on line 26" il codice è: Codice PHP:
"$insert = mysql_query("insert into user (username,password,conferma_password,nome,cognome,partita_iva,codice_fiscale,indirizzo,cap,citta,provincia,mail,newsletter) values ('".$_POST["username"]!="" && $_POST["password"]!="" && $_POST["conferma_password"]!="" && $_POST["nome"]!="" && $_POST["cognome"]!="" && $_POST["partita_iva"]!="" && $_POST["codice_fiscale"]!="" && $_POST["indirizzo"]!="" && $_POST["cap"]!="" && $_POST["citta"]!="" && $_POST["provincia"]!="" && $_POST["mail"]"")" che cosa dovrei fare? Come posso sistemarlo? |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Sep 2005
Città: Como
Messaggi: 447
|
Nessuno mi può dare una mano?
|
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 22:27.



















